Commit 7c6c54b5 authored by Linus Torvalds's avatar Linus Torvalds

Merge branch 'i2c/for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux

Pull i2c fixes from Wolfram Sang:
 "I2C has a core bugfix & cleanup as well as an ID addition and
  MAINTAINERS update for you"

* 'i2c/for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
  MAINTAINERS: add maintainer for IMX LPI2C driver
  dt-bindings: i2c: i2c-imx-lpi2c: add imx8qxp compatible string
  i2c: Clear client->irq in i2c_device_remove
  i2c: Remove unnecessary call to irq_find_mapping
parents 6444ccfd 012ebc3b
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
Required properties: Required properties:
- compatible : - compatible :
- "fsl,imx7ulp-lpi2c" for LPI2C compatible with the one integrated on i.MX7ULP soc - "fsl,imx7ulp-lpi2c" for LPI2C compatible with the one integrated on i.MX7ULP soc
- "fsl,imx8qxp-lpi2c" for LPI2C compatible with the one integrated on i.MX8QXP soc
- reg : address and length of the lpi2c master registers - reg : address and length of the lpi2c master registers
- interrupts : lpi2c interrupt - interrupts : lpi2c interrupt
- clocks : lpi2c clock specifier - clocks : lpi2c clock specifier
......
...@@ -5878,6 +5878,14 @@ L: linux-i2c@vger.kernel.org ...@@ -5878,6 +5878,14 @@ L: linux-i2c@vger.kernel.org
S: Maintained S: Maintained
F: drivers/i2c/busses/i2c-cpm.c F: drivers/i2c/busses/i2c-cpm.c
FREESCALE IMX LPI2C DRIVER
M: Dong Aisheng <aisheng.dong@nxp.com>
L: linux-i2c@vger.kernel.org
L: linux-imx@nxp.com
S: Maintained
F: drivers/i2c/busses/i2c-imx-lpi2c.c
F: Documentation/devicetree/bindings/i2c/i2c-imx-lpi2c.txt
FREESCALE IMX / MXC FEC DRIVER FREESCALE IMX / MXC FEC DRIVER
M: Fugang Duan <fugang.duan@nxp.com> M: Fugang Duan <fugang.duan@nxp.com>
L: netdev@vger.kernel.org L: netdev@vger.kernel.org
......
...@@ -306,10 +306,7 @@ static int i2c_smbus_host_notify_to_irq(const struct i2c_client *client) ...@@ -306,10 +306,7 @@ static int i2c_smbus_host_notify_to_irq(const struct i2c_client *client)
if (client->flags & I2C_CLIENT_TEN) if (client->flags & I2C_CLIENT_TEN)
return -EINVAL; return -EINVAL;
irq = irq_find_mapping(adap->host_notify_domain, client->addr); irq = irq_create_mapping(adap->host_notify_domain, client->addr);
if (!irq)
irq = irq_create_mapping(adap->host_notify_domain,
client->addr);
return irq > 0 ? irq : -ENXIO; return irq > 0 ? irq : -ENXIO;
} }
...@@ -433,6 +430,8 @@ static int i2c_device_remove(struct device *dev) ...@@ -433,6 +430,8 @@ static int i2c_device_remove(struct device *dev)
dev_pm_clear_wake_irq(&client->dev); dev_pm_clear_wake_irq(&client->dev);
device_init_wakeup(&client->dev, false); device_init_wakeup(&client->dev, false);
client->irq = 0;
return status; return status;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment