aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/i2c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2014-01-29 22:56:20 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2014-01-29 22:56:20 -0500
commitf7a6ad9fa24e4511a143e2b7b8a0d55864fe2edf (patch)
treec8bdb1a08729439fc8846c024ded296b9ef3b988 /drivers/i2c
parent9076e0cae70c5d6ddb9a0284a20885b2b8814416 (diff)
parent6ff4b105163223741f5a82804f9695221017ae42 (diff)
Merge branch 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux
Pull more i2c updates from Wolfram Sang: "Mostly bugfixes, small but wanted cleanups, and Paul's init.h removal applied" * 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux: i2c: rcar: fix NACK error code i2c: update i2c_algorithm documentation i2c: rcar: use devm_clk_get to ensure clock is properly ref-counted i2c: rcar: do not print error if device nacks transfer i2c: rely on driver core when sanitizing devices i2c: delete non-required instances of include <linux/init.h> i2c: acorn: is tristate and should use module.h i2c: piix4: Standardize log messages i2c: piix4: Use different message for AMD Auxiliary SMBus Controller i2c: piix4: Add support for AMD ML and CZ SMBus changes
Diffstat (limited to 'drivers/i2c')
-rw-r--r--drivers/i2c/algos/i2c-algo-bit.c1
-rw-r--r--drivers/i2c/algos/i2c-algo-pca.c1
-rw-r--r--drivers/i2c/algos/i2c-algo-pcf.c1
-rw-r--r--drivers/i2c/busses/Kconfig1
-rw-r--r--drivers/i2c/busses/i2c-acorn.c2
-rw-r--r--drivers/i2c/busses/i2c-ali1535.c1
-rw-r--r--drivers/i2c/busses/i2c-ali1563.c1
-rw-r--r--drivers/i2c/busses/i2c-ali15x3.c1
-rw-r--r--drivers/i2c/busses/i2c-amd756.c1
-rw-r--r--drivers/i2c/busses/i2c-amd8111.c1
-rw-r--r--drivers/i2c/busses/i2c-au1550.c1
-rw-r--r--drivers/i2c/busses/i2c-cbus-gpio.c1
-rw-r--r--drivers/i2c/busses/i2c-cpm.c1
-rw-r--r--drivers/i2c/busses/i2c-eg20t.c1
-rw-r--r--drivers/i2c/busses/i2c-exynos5.c1
-rw-r--r--drivers/i2c/busses/i2c-highlander.c1
-rw-r--r--drivers/i2c/busses/i2c-hydra.c1
-rw-r--r--drivers/i2c/busses/i2c-ibm_iic.c1
-rw-r--r--drivers/i2c/busses/i2c-iop3xx.c1
-rw-r--r--drivers/i2c/busses/i2c-isch.c1
-rw-r--r--drivers/i2c/busses/i2c-ismt.c1
-rw-r--r--drivers/i2c/busses/i2c-mpc.c1
-rw-r--r--drivers/i2c/busses/i2c-nforce2.c1
-rw-r--r--drivers/i2c/busses/i2c-ocores.c1
-rw-r--r--drivers/i2c/busses/i2c-octeon.c1
-rw-r--r--drivers/i2c/busses/i2c-pca-platform.c1
-rw-r--r--drivers/i2c/busses/i2c-piix4.c44
-rw-r--r--drivers/i2c/busses/i2c-pmcmsp.c1
-rw-r--r--drivers/i2c/busses/i2c-powermac.c1
-rw-r--r--drivers/i2c/busses/i2c-puv3.c1
-rw-r--r--drivers/i2c/busses/i2c-rcar.c22
-rw-r--r--drivers/i2c/busses/i2c-scmi.c1
-rw-r--r--drivers/i2c/busses/i2c-sh7760.c1
-rw-r--r--drivers/i2c/busses/i2c-simtec.c1
-rw-r--r--drivers/i2c/busses/i2c-sis630.c1
-rw-r--r--drivers/i2c/busses/i2c-sis96x.c1
-rw-r--r--drivers/i2c/busses/i2c-via.c1
-rw-r--r--drivers/i2c/busses/i2c-xiic.c1
-rw-r--r--drivers/i2c/busses/i2c-xlr.c1
-rw-r--r--drivers/i2c/busses/scx200_i2c.c1
-rw-r--r--drivers/i2c/i2c-core.c13
-rw-r--r--drivers/i2c/muxes/i2c-arb-gpio-challenge.c1
-rw-r--r--drivers/i2c/muxes/i2c-mux-gpio.c1
-rw-r--r--drivers/i2c/muxes/i2c-mux-pca9541.c1
-rw-r--r--drivers/i2c/muxes/i2c-mux-pca954x.c1
-rw-r--r--drivers/i2c/muxes/i2c-mux-pinctrl.c1
46 files changed, 48 insertions, 75 deletions
diff --git a/drivers/i2c/algos/i2c-algo-bit.c b/drivers/i2c/algos/i2c-algo-bit.c
index b7a6acfcb300..65ef9664d5da 100644
--- a/drivers/i2c/algos/i2c-algo-bit.c
+++ b/drivers/i2c/algos/i2c-algo-bit.c
@@ -25,7 +25,6 @@
25#include <linux/kernel.h> 25#include <linux/kernel.h>
26#include <linux/module.h> 26#include <linux/module.h>
27#include <linux/delay.h> 27#include <linux/delay.h>
28#include <linux/init.h>
29#include <linux/errno.h> 28#include <linux/errno.h>
30#include <linux/sched.h> 29#include <linux/sched.h>
31#include <linux/i2c.h> 30#include <linux/i2c.h>
diff --git a/drivers/i2c/algos/i2c-algo-pca.c b/drivers/i2c/algos/i2c-algo-pca.c
index f892a424009b..8b10f88b13d9 100644
--- a/drivers/i2c/algos/i2c-algo-pca.c
+++ b/drivers/i2c/algos/i2c-algo-pca.c
@@ -24,7 +24,6 @@
24#include <linux/moduleparam.h> 24#include <linux/moduleparam.h>
25#include <linux/delay.h> 25#include <linux/delay.h>
26#include <linux/jiffies.h> 26#include <linux/jiffies.h>
27#include <linux/init.h>
28#include <linux/errno.h> 27#include <linux/errno.h>
29#include <linux/i2c.h> 28#include <linux/i2c.h>
30#include <linux/i2c-algo-pca.h> 29#include <linux/i2c-algo-pca.h>
diff --git a/drivers/i2c/algos/i2c-algo-pcf.c b/drivers/i2c/algos/i2c-algo-pcf.c
index 5c2379522aa9..34370090b753 100644
--- a/drivers/i2c/algos/i2c-algo-pcf.c
+++ b/drivers/i2c/algos/i2c-algo-pcf.c
@@ -30,7 +30,6 @@
30#include <linux/kernel.h> 30#include <linux/kernel.h>
31#include <linux/module.h> 31#include <linux/module.h>
32#include <linux/delay.h> 32#include <linux/delay.h>
33#include <linux/init.h>
34#include <linux/errno.h> 33#include <linux/errno.h>
35#include <linux/i2c.h> 34#include <linux/i2c.h>
36#include <linux/i2c-algo-pcf.h> 35#include <linux/i2c-algo-pcf.h>
diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig
index 6bcdea5856af..f5ed03164d86 100644
--- a/drivers/i2c/busses/Kconfig
+++ b/drivers/i2c/busses/Kconfig
@@ -152,6 +152,7 @@ config I2C_PIIX4
152 ATI SB700/SP5100 152 ATI SB700/SP5100
153 ATI SB800 153 ATI SB800
154 AMD Hudson-2 154 AMD Hudson-2
155 AMD ML
155 AMD CZ 156 AMD CZ
156 Serverworks OSB4 157 Serverworks OSB4
157 Serverworks CSB5 158 Serverworks CSB5
diff --git a/drivers/i2c/busses/i2c-acorn.c b/drivers/i2c/busses/i2c-acorn.c
index ed9f48d566db..9d7be5af2bf2 100644
--- a/drivers/i2c/busses/i2c-acorn.c
+++ b/drivers/i2c/busses/i2c-acorn.c
@@ -12,7 +12,7 @@
12 * On Acorn machines, the following i2c devices are on the bus: 12 * On Acorn machines, the following i2c devices are on the bus:
13 * - PCF8583 real time clock & static RAM 13 * - PCF8583 real time clock & static RAM
14 */ 14 */
15#include <linux/init.h> 15#include <linux/module.h>
16#include <linux/i2c.h> 16#include <linux/i2c.h>
17#include <linux/i2c-algo-bit.h> 17#include <linux/i2c-algo-bit.h>
18#include <linux/io.h> 18#include <linux/io.h>
diff --git a/drivers/i2c/busses/i2c-ali1535.c b/drivers/i2c/busses/i2c-ali1535.c
index 3f491815e2c4..7d60d3a1f621 100644
--- a/drivers/i2c/busses/i2c-ali1535.c
+++ b/drivers/i2c/busses/i2c-ali1535.c
@@ -58,7 +58,6 @@
58#include <linux/delay.h> 58#include <linux/delay.h>
59#include <linux/ioport.h> 59#include <linux/ioport.h>
60#include <linux/i2c.h> 60#include <linux/i2c.h>
61#include <linux/init.h>
62#include <linux/acpi.h> 61#include <linux/acpi.h>
63#include <linux/io.h> 62#include <linux/io.h>
64 63
diff --git a/drivers/i2c/busses/i2c-ali1563.c b/drivers/i2c/busses/i2c-ali1563.c
index 84ccd9496a5e..4611e4754a67 100644
--- a/drivers/i2c/busses/i2c-ali1563.c
+++ b/drivers/i2c/busses/i2c-ali1563.c
@@ -20,7 +20,6 @@
20#include <linux/delay.h> 20#include <linux/delay.h>
21#include <linux/i2c.h> 21#include <linux/i2c.h>
22#include <linux/pci.h> 22#include <linux/pci.h>
23#include <linux/init.h>
24#include <linux/acpi.h> 23#include <linux/acpi.h>
25 24
26#define ALI1563_MAX_TIMEOUT 500 25#define ALI1563_MAX_TIMEOUT 500
diff --git a/drivers/i2c/busses/i2c-ali15x3.c b/drivers/i2c/busses/i2c-ali15x3.c
index 26bcc6127cee..4823206a4870 100644
--- a/drivers/i2c/busses/i2c-ali15x3.c
+++ b/drivers/i2c/busses/i2c-ali15x3.c
@@ -65,7 +65,6 @@
65#include <linux/ioport.h> 65#include <linux/ioport.h>
66#include <linux/delay.h> 66#include <linux/delay.h>
67#include <linux/i2c.h> 67#include <linux/i2c.h>
68#include <linux/init.h>
69#include <linux/acpi.h> 68#include <linux/acpi.h>
70#include <linux/io.h> 69#include <linux/io.h>
71 70
diff --git a/drivers/i2c/busses/i2c-amd756.c b/drivers/i2c/busses/i2c-amd756.c
index e13e2aa2d05d..819d3c1062a7 100644
--- a/drivers/i2c/busses/i2c-amd756.c
+++ b/drivers/i2c/busses/i2c-amd756.c
@@ -41,7 +41,6 @@
41#include <linux/stddef.h> 41#include <linux/stddef.h>
42#include <linux/ioport.h> 42#include <linux/ioport.h>
43#include <linux/i2c.h> 43#include <linux/i2c.h>
44#include <linux/init.h>
45#include <linux/acpi.h> 44#include <linux/acpi.h>
46#include <linux/io.h> 45#include <linux/io.h>
47 46
diff --git a/drivers/i2c/busses/i2c-amd8111.c b/drivers/i2c/busses/i2c-amd8111.c
index a44e6e77c5a1..f3d4d79855b5 100644
--- a/drivers/i2c/busses/i2c-amd8111.c
+++ b/drivers/i2c/busses/i2c-amd8111.c
@@ -13,7 +13,6 @@
13#include <linux/kernel.h> 13#include <linux/kernel.h>
14#include <linux/stddef.h> 14#include <linux/stddef.h>
15#include <linux/ioport.h> 15#include <linux/ioport.h>
16#include <linux/init.h>
17#include <linux/i2c.h> 16#include <linux/i2c.h>
18#include <linux/delay.h> 17#include <linux/delay.h>
19#include <linux/acpi.h> 18#include <linux/acpi.h>
diff --git a/drivers/i2c/busses/i2c-au1550.c b/drivers/i2c/busses/i2c-au1550.c
index b5b89239d622..8762458ca7da 100644
--- a/drivers/i2c/busses/i2c-au1550.c
+++ b/drivers/i2c/busses/i2c-au1550.c
@@ -31,7 +31,6 @@
31#include <linux/kernel.h> 31#include <linux/kernel.h>
32#include <linux/module.h> 32#include <linux/module.h>
33#include <linux/platform_device.h> 33#include <linux/platform_device.h>
34#include <linux/init.h>
35#include <linux/errno.h> 34#include <linux/errno.h>
36#include <linux/i2c.h> 35#include <linux/i2c.h>
37#include <linux/slab.h> 36#include <linux/slab.h>
diff --git a/drivers/i2c/busses/i2c-cbus-gpio.c b/drivers/i2c/busses/i2c-cbus-gpio.c
index ce7ffba2b020..bdf040fd8675 100644
--- a/drivers/i2c/busses/i2c-cbus-gpio.c
+++ b/drivers/i2c/busses/i2c-cbus-gpio.c
@@ -19,7 +19,6 @@
19#include <linux/io.h> 19#include <linux/io.h>
20#include <linux/i2c.h> 20#include <linux/i2c.h>
21#include <linux/gpio.h> 21#include <linux/gpio.h>
22#include <linux/init.h>
23#include <linux/slab.h> 22#include <linux/slab.h>
24#include <linux/delay.h> 23#include <linux/delay.h>
25#include <linux/errno.h> 24#include <linux/errno.h>
diff --git a/drivers/i2c/busses/i2c-cpm.c b/drivers/i2c/busses/i2c-cpm.c
index 3e5ea2c87a6e..be7f0a20d634 100644
--- a/drivers/i2c/busses/i2c-cpm.c
+++ b/drivers/i2c/busses/i2c-cpm.c
@@ -33,7 +33,6 @@
33#include <linux/module.h> 33#include <linux/module.h>
34#include <linux/delay.h> 34#include <linux/delay.h>
35#include <linux/slab.h> 35#include <linux/slab.h>
36#include <linux/init.h>
37#include <linux/interrupt.h> 36#include <linux/interrupt.h>
38#include <linux/errno.h> 37#include <linux/errno.h>
39#include <linux/stddef.h> 38#include <linux/stddef.h>
diff --git a/drivers/i2c/busses/i2c-eg20t.c b/drivers/i2c/busses/i2c-eg20t.c
index ff15ae90aaf5..e08e458bab02 100644
--- a/drivers/i2c/busses/i2c-eg20t.c
+++ b/drivers/i2c/busses/i2c-eg20t.c
@@ -18,7 +18,6 @@
18#include <linux/module.h> 18#include <linux/module.h>
19#include <linux/kernel.h> 19#include <linux/kernel.h>
20#include <linux/delay.h> 20#include <linux/delay.h>
21#include <linux/init.h>
22#include <linux/errno.h> 21#include <linux/errno.h>
23#include <linux/i2c.h> 22#include <linux/i2c.h>
24#include <linux/fs.h> 23#include <linux/fs.h>
diff --git a/drivers/i2c/busses/i2c-exynos5.c b/drivers/i2c/busses/i2c-exynos5.c
index 044f85b01d06..9fd711c03dd2 100644
--- a/drivers/i2c/busses/i2c-exynos5.c
+++ b/drivers/i2c/busses/i2c-exynos5.c
@@ -12,7 +12,6 @@
12#include <linux/module.h> 12#include <linux/module.h>
13 13
14#include <linux/i2c.h> 14#include <linux/i2c.h>
15#include <linux/init.h>
16#include <linux/time.h> 15#include <linux/time.h>
17#include <linux/interrupt.h> 16#include <linux/interrupt.h>
18#include <linux/delay.h> 17#include <linux/delay.h>
diff --git a/drivers/i2c/busses/i2c-highlander.c b/drivers/i2c/busses/i2c-highlander.c
index 436b0f254916..512fcfabc18e 100644
--- a/drivers/i2c/busses/i2c-highlander.c
+++ b/drivers/i2c/busses/i2c-highlander.c
@@ -12,7 +12,6 @@
12 * of this archive for more details. 12 * of this archive for more details.
13 */ 13 */
14#include <linux/module.h> 14#include <linux/module.h>
15#include <linux/init.h>
16#include <linux/interrupt.h> 15#include <linux/interrupt.h>
17#include <linux/i2c.h> 16#include <linux/i2c.h>
18#include <linux/platform_device.h> 17#include <linux/platform_device.h>
diff --git a/drivers/i2c/busses/i2c-hydra.c b/drivers/i2c/busses/i2c-hydra.c
index 79c3d9069a48..e248257fe517 100644
--- a/drivers/i2c/busses/i2c-hydra.c
+++ b/drivers/i2c/busses/i2c-hydra.c
@@ -27,7 +27,6 @@
27#include <linux/types.h> 27#include <linux/types.h>
28#include <linux/i2c.h> 28#include <linux/i2c.h>
29#include <linux/i2c-algo-bit.h> 29#include <linux/i2c-algo-bit.h>
30#include <linux/init.h>
31#include <linux/io.h> 30#include <linux/io.h>
32#include <asm/hydra.h> 31#include <asm/hydra.h>
33 32
diff --git a/drivers/i2c/busses/i2c-ibm_iic.c b/drivers/i2c/busses/i2c-ibm_iic.c
index f7444100f397..274312c96b12 100644
--- a/drivers/i2c/busses/i2c-ibm_iic.c
+++ b/drivers/i2c/busses/i2c-ibm_iic.c
@@ -36,7 +36,6 @@
36#include <linux/ioport.h> 36#include <linux/ioport.h>
37#include <linux/delay.h> 37#include <linux/delay.h>
38#include <linux/slab.h> 38#include <linux/slab.h>
39#include <linux/init.h>
40#include <linux/interrupt.h> 39#include <linux/interrupt.h>
41#include <asm/irq.h> 40#include <asm/irq.h>
42#include <linux/io.h> 41#include <linux/io.h>
diff --git a/drivers/i2c/busses/i2c-iop3xx.c b/drivers/i2c/busses/i2c-iop3xx.c
index dd24aa0424a9..3d16c2f60a5e 100644
--- a/drivers/i2c/busses/i2c-iop3xx.c
+++ b/drivers/i2c/busses/i2c-iop3xx.c
@@ -34,7 +34,6 @@
34#include <linux/module.h> 34#include <linux/module.h>
35#include <linux/delay.h> 35#include <linux/delay.h>
36#include <linux/slab.h> 36#include <linux/slab.h>
37#include <linux/init.h>
38#include <linux/errno.h> 37#include <linux/errno.h>
39#include <linux/platform_device.h> 38#include <linux/platform_device.h>
40#include <linux/i2c.h> 39#include <linux/i2c.h>
diff --git a/drivers/i2c/busses/i2c-isch.c b/drivers/i2c/busses/i2c-isch.c
index af213045ab7e..cf99dbf21fd1 100644
--- a/drivers/i2c/busses/i2c-isch.c
+++ b/drivers/i2c/busses/i2c-isch.c
@@ -33,7 +33,6 @@
33#include <linux/stddef.h> 33#include <linux/stddef.h>
34#include <linux/ioport.h> 34#include <linux/ioport.h>
35#include <linux/i2c.h> 35#include <linux/i2c.h>
36#include <linux/init.h>
37#include <linux/io.h> 36#include <linux/io.h>
38#include <linux/acpi.h> 37#include <linux/acpi.h>
39 38
diff --git a/drivers/i2c/busses/i2c-ismt.c b/drivers/i2c/busses/i2c-ismt.c
index bb132ea7d2b4..8ce4f517fc56 100644
--- a/drivers/i2c/busses/i2c-ismt.c
+++ b/drivers/i2c/busses/i2c-ismt.c
@@ -62,7 +62,6 @@
62 */ 62 */
63 63
64#include <linux/module.h> 64#include <linux/module.h>
65#include <linux/init.h>
66#include <linux/pci.h> 65#include <linux/pci.h>
67#include <linux/kernel.h> 66#include <linux/kernel.h>
68#include <linux/stddef.h> 67#include <linux/stddef.h>
diff --git a/drivers/i2c/busses/i2c-mpc.c b/drivers/i2c/busses/i2c-mpc.c
index b6a741caf4f6..f5391633b53a 100644
--- a/drivers/i2c/busses/i2c-mpc.c
+++ b/drivers/i2c/busses/i2c-mpc.c
@@ -16,7 +16,6 @@
16#include <linux/kernel.h> 16#include <linux/kernel.h>
17#include <linux/module.h> 17#include <linux/module.h>
18#include <linux/sched.h> 18#include <linux/sched.h>
19#include <linux/init.h>
20#include <linux/of_address.h> 19#include <linux/of_address.h>
21#include <linux/of_irq.h> 20#include <linux/of_irq.h>
22#include <linux/of_platform.h> 21#include <linux/of_platform.h>
diff --git a/drivers/i2c/busses/i2c-nforce2.c b/drivers/i2c/busses/i2c-nforce2.c
index ac88f4000cc2..0038c451095c 100644
--- a/drivers/i2c/busses/i2c-nforce2.c
+++ b/drivers/i2c/busses/i2c-nforce2.c
@@ -51,7 +51,6 @@
51#include <linux/kernel.h> 51#include <linux/kernel.h>
52#include <linux/stddef.h> 52#include <linux/stddef.h>
53#include <linux/ioport.h> 53#include <linux/ioport.h>
54#include <linux/init.h>
55#include <linux/i2c.h> 54#include <linux/i2c.h>
56#include <linux/delay.h> 55#include <linux/delay.h>
57#include <linux/dmi.h> 56#include <linux/dmi.h>
diff --git a/drivers/i2c/busses/i2c-ocores.c b/drivers/i2c/busses/i2c-ocores.c
index c61f37a10a07..80e06fa45720 100644
--- a/drivers/i2c/busses/i2c-ocores.c
+++ b/drivers/i2c/busses/i2c-ocores.c
@@ -15,7 +15,6 @@
15#include <linux/err.h> 15#include <linux/err.h>
16#include <linux/kernel.h> 16#include <linux/kernel.h>
17#include <linux/module.h> 17#include <linux/module.h>
18#include <linux/init.h>
19#include <linux/errno.h> 18#include <linux/errno.h>
20#include <linux/platform_device.h> 19#include <linux/platform_device.h>
21#include <linux/i2c.h> 20#include <linux/i2c.h>
diff --git a/drivers/i2c/busses/i2c-octeon.c b/drivers/i2c/busses/i2c-octeon.c
index b929ba271b47..81042b08a947 100644
--- a/drivers/i2c/busses/i2c-octeon.c
+++ b/drivers/i2c/busses/i2c-octeon.c
@@ -18,7 +18,6 @@
18#include <linux/delay.h> 18#include <linux/delay.h>
19#include <linux/sched.h> 19#include <linux/sched.h>
20#include <linux/slab.h> 20#include <linux/slab.h>
21#include <linux/init.h>
22#include <linux/i2c.h> 21#include <linux/i2c.h>
23#include <linux/io.h> 22#include <linux/io.h>
24#include <linux/of.h> 23#include <linux/of.h>
diff --git a/drivers/i2c/busses/i2c-pca-platform.c b/drivers/i2c/busses/i2c-pca-platform.c
index 39e2755e3f25..845f12598e79 100644
--- a/drivers/i2c/busses/i2c-pca-platform.c
+++ b/drivers/i2c/busses/i2c-pca-platform.c
@@ -12,7 +12,6 @@
12 */ 12 */
13#include <linux/kernel.h> 13#include <linux/kernel.h>
14#include <linux/module.h> 14#include <linux/module.h>
15#include <linux/init.h>
16#include <linux/slab.h> 15#include <linux/slab.h>
17#include <linux/delay.h> 16#include <linux/delay.h>
18#include <linux/jiffies.h> 17#include <linux/jiffies.h>
diff --git a/drivers/i2c/busses/i2c-piix4.c b/drivers/i2c/busses/i2c-piix4.c
index a028617b8f13..39dd8ec60dfd 100644
--- a/drivers/i2c/busses/i2c-piix4.c
+++ b/drivers/i2c/busses/i2c-piix4.c
@@ -22,7 +22,7 @@
22 Intel PIIX4, 440MX 22 Intel PIIX4, 440MX
23 Serverworks OSB4, CSB5, CSB6, HT-1000, HT-1100 23 Serverworks OSB4, CSB5, CSB6, HT-1000, HT-1100
24 ATI IXP200, IXP300, IXP400, SB600, SB700/SP5100, SB800 24 ATI IXP200, IXP300, IXP400, SB600, SB700/SP5100, SB800
25 AMD Hudson-2, CZ 25 AMD Hudson-2, ML, CZ
26 SMSC Victory66 26 SMSC Victory66
27 27
28 Note: we assume there can only be one device, with one or more 28 Note: we assume there can only be one device, with one or more
@@ -38,7 +38,6 @@
38#include <linux/ioport.h> 38#include <linux/ioport.h>
39#include <linux/i2c.h> 39#include <linux/i2c.h>
40#include <linux/slab.h> 40#include <linux/slab.h>
41#include <linux/init.h>
42#include <linux/dmi.h> 41#include <linux/dmi.h>
43#include <linux/acpi.h> 42#include <linux/acpi.h>
44#include <linux/io.h> 43#include <linux/io.h>
@@ -208,16 +207,16 @@ static int piix4_setup(struct pci_dev *PIIX4_dev,
208 "WARNING: SMBus interface has been FORCEFULLY ENABLED!\n"); 207 "WARNING: SMBus interface has been FORCEFULLY ENABLED!\n");
209 } else { 208 } else {
210 dev_err(&PIIX4_dev->dev, 209 dev_err(&PIIX4_dev->dev,
211 "Host SMBus controller not enabled!\n"); 210 "SMBus Host Controller not enabled!\n");
212 release_region(piix4_smba, SMBIOSIZE); 211 release_region(piix4_smba, SMBIOSIZE);
213 return -ENODEV; 212 return -ENODEV;
214 } 213 }
215 } 214 }
216 215
217 if (((temp & 0x0E) == 8) || ((temp & 0x0E) == 2)) 216 if (((temp & 0x0E) == 8) || ((temp & 0x0E) == 2))
218 dev_dbg(&PIIX4_dev->dev, "Using Interrupt 9 for SMBus.\n"); 217 dev_dbg(&PIIX4_dev->dev, "Using IRQ for SMBus\n");
219 else if ((temp & 0x0E) == 0) 218 else if ((temp & 0x0E) == 0)
220 dev_dbg(&PIIX4_dev->dev, "Using Interrupt SMI# for SMBus.\n"); 219 dev_dbg(&PIIX4_dev->dev, "Using SMI# for SMBus\n");
221 else 220 else
222 dev_err(&PIIX4_dev->dev, "Illegal Interrupt configuration " 221 dev_err(&PIIX4_dev->dev, "Illegal Interrupt configuration "
223 "(or code out of date)!\n"); 222 "(or code out of date)!\n");
@@ -235,7 +234,8 @@ static int piix4_setup_sb800(struct pci_dev *PIIX4_dev,
235{ 234{
236 unsigned short piix4_smba; 235 unsigned short piix4_smba;
237 unsigned short smba_idx = 0xcd6; 236 unsigned short smba_idx = 0xcd6;
238 u8 smba_en_lo, smba_en_hi, i2ccfg, i2ccfg_offset = 0x10, smb_en; 237 u8 smba_en_lo, smba_en_hi, smb_en, smb_en_status;
238 u8 i2ccfg, i2ccfg_offset = 0x10;
239 239
240 /* SB800 and later SMBus does not support forcing address */ 240 /* SB800 and later SMBus does not support forcing address */
241 if (force || force_addr) { 241 if (force || force_addr) {
@@ -245,7 +245,15 @@ static int piix4_setup_sb800(struct pci_dev *PIIX4_dev,
245 } 245 }
246 246
247 /* Determine the address of the SMBus areas */ 247 /* Determine the address of the SMBus areas */
248 smb_en = (aux) ? 0x28 : 0x2c; 248 if ((PIIX4_dev->vendor == PCI_VENDOR_ID_AMD &&
249 PIIX4_dev->device == PCI_DEVICE_ID_AMD_HUDSON2_SMBUS &&
250 PIIX4_dev->revision >= 0x41) ||
251 (PIIX4_dev->vendor == PCI_VENDOR_ID_AMD &&
252 PIIX4_dev->device == 0x790b &&
253 PIIX4_dev->revision >= 0x49))
254 smb_en = 0x00;
255 else
256 smb_en = (aux) ? 0x28 : 0x2c;
249 257
250 if (!request_region(smba_idx, 2, "smba_idx")) { 258 if (!request_region(smba_idx, 2, "smba_idx")) {
251 dev_err(&PIIX4_dev->dev, "SMBus base address index region " 259 dev_err(&PIIX4_dev->dev, "SMBus base address index region "
@@ -258,13 +266,22 @@ static int piix4_setup_sb800(struct pci_dev *PIIX4_dev,
258 smba_en_hi = inb_p(smba_idx + 1); 266 smba_en_hi = inb_p(smba_idx + 1);
259 release_region(smba_idx, 2); 267 release_region(smba_idx, 2);
260 268
261 if ((smba_en_lo & 1) == 0) { 269 if (!smb_en) {
270 smb_en_status = smba_en_lo & 0x10;
271 piix4_smba = smba_en_hi << 8;
272 if (aux)
273 piix4_smba |= 0x20;
274 } else {
275 smb_en_status = smba_en_lo & 0x01;
276 piix4_smba = ((smba_en_hi << 8) | smba_en_lo) & 0xffe0;
277 }
278
279 if (!smb_en_status) {
262 dev_err(&PIIX4_dev->dev, 280 dev_err(&PIIX4_dev->dev,
263 "Host SMBus controller not enabled!\n"); 281 "SMBus Host Controller not enabled!\n");
264 return -ENODEV; 282 return -ENODEV;
265 } 283 }
266 284
267 piix4_smba = ((smba_en_hi << 8) | smba_en_lo) & 0xffe0;
268 if (acpi_check_region(piix4_smba, SMBIOSIZE, piix4_driver.name)) 285 if (acpi_check_region(piix4_smba, SMBIOSIZE, piix4_driver.name))
269 return -ENODEV; 286 return -ENODEV;
270 287
@@ -277,7 +294,8 @@ static int piix4_setup_sb800(struct pci_dev *PIIX4_dev,
277 /* Aux SMBus does not support IRQ information */ 294 /* Aux SMBus does not support IRQ information */
278 if (aux) { 295 if (aux) {
279 dev_info(&PIIX4_dev->dev, 296 dev_info(&PIIX4_dev->dev,
280 "SMBus Host Controller at 0x%x\n", piix4_smba); 297 "Auxiliary SMBus Host Controller at 0x%x\n",
298 piix4_smba);
281 return piix4_smba; 299 return piix4_smba;
282 } 300 }
283 301
@@ -292,9 +310,9 @@ static int piix4_setup_sb800(struct pci_dev *PIIX4_dev,
292 release_region(piix4_smba + i2ccfg_offset, 1); 310 release_region(piix4_smba + i2ccfg_offset, 1);
293 311
294 if (i2ccfg & 1) 312 if (i2ccfg & 1)
295 dev_dbg(&PIIX4_dev->dev, "Using IRQ for SMBus.\n"); 313 dev_dbg(&PIIX4_dev->dev, "Using IRQ for SMBus\n");
296 else 314 else
297 dev_dbg(&PIIX4_dev->dev, "Using SMI# for SMBus.\n"); 315 dev_dbg(&PIIX4_dev->dev, "Using SMI# for SMBus\n");
298 316
299 dev_info(&PIIX4_dev->dev, 317 dev_info(&PIIX4_dev->dev,
300 "SMBus Host Controller at 0x%x, revision %d\n", 318 "SMBus Host Controller at 0x%x, revision %d\n",
diff --git a/drivers/i2c/busses/i2c-pmcmsp.c b/drivers/i2c/busses/i2c-pmcmsp.c
index f6389e2c9d02..8564768fee32 100644
--- a/drivers/i2c/busses/i2c-pmcmsp.c
+++ b/drivers/i2c/busses/i2c-pmcmsp.c
@@ -26,7 +26,6 @@
26 26
27#include <linux/kernel.h> 27#include <linux/kernel.h>
28#include <linux/module.h> 28#include <linux/module.h>
29#include <linux/init.h>
30#include <linux/platform_device.h> 29#include <linux/platform_device.h>
31#include <linux/i2c.h> 30#include <linux/i2c.h>
32#include <linux/interrupt.h> 31#include <linux/interrupt.h>
diff --git a/drivers/i2c/busses/i2c-powermac.c b/drivers/i2c/busses/i2c-powermac.c
index 8c87f4a9793b..01e967763c2a 100644
--- a/drivers/i2c/busses/i2c-powermac.c
+++ b/drivers/i2c/busses/i2c-powermac.c
@@ -24,7 +24,6 @@
24#include <linux/kernel.h> 24#include <linux/kernel.h>
25#include <linux/types.h> 25#include <linux/types.h>
26#include <linux/i2c.h> 26#include <linux/i2c.h>
27#include <linux/init.h>
28#include <linux/device.h> 27#include <linux/device.h>
29#include <linux/platform_device.h> 28#include <linux/platform_device.h>
30#include <linux/of_irq.h> 29#include <linux/of_irq.h>
diff --git a/drivers/i2c/busses/i2c-puv3.c b/drivers/i2c/busses/i2c-puv3.c
index ac80199885be..c83fc3ccdd2b 100644
--- a/drivers/i2c/busses/i2c-puv3.c
+++ b/drivers/i2c/busses/i2c-puv3.c
@@ -17,7 +17,6 @@
17#include <linux/types.h> 17#include <linux/types.h>
18#include <linux/delay.h> 18#include <linux/delay.h>
19#include <linux/i2c.h> 19#include <linux/i2c.h>
20#include <linux/init.h>
21#include <linux/clk.h> 20#include <linux/clk.h>
22#include <linux/platform_device.h> 21#include <linux/platform_device.h>
23#include <linux/io.h> 22#include <linux/io.h>
diff --git a/drivers/i2c/busses/i2c-rcar.c b/drivers/i2c/busses/i2c-rcar.c
index 2c2fd7c2b116..0282d4d42805 100644
--- a/drivers/i2c/busses/i2c-rcar.c
+++ b/drivers/i2c/busses/i2c-rcar.c
@@ -26,7 +26,6 @@
26#include <linux/clk.h> 26#include <linux/clk.h>
27#include <linux/delay.h> 27#include <linux/delay.h>
28#include <linux/err.h> 28#include <linux/err.h>
29#include <linux/init.h>
30#include <linux/interrupt.h> 29#include <linux/interrupt.h>
31#include <linux/io.h> 30#include <linux/io.h>
32#include <linux/i2c.h> 31#include <linux/i2c.h>
@@ -111,6 +110,7 @@ struct rcar_i2c_priv {
111 void __iomem *io; 110 void __iomem *io;
112 struct i2c_adapter adap; 111 struct i2c_adapter adap;
113 struct i2c_msg *msg; 112 struct i2c_msg *msg;
113 struct clk *clk;
114 114
115 spinlock_t lock; 115 spinlock_t lock;
116 wait_queue_head_t wait; 116 wait_queue_head_t wait;
@@ -227,18 +227,12 @@ static int rcar_i2c_clock_calculate(struct rcar_i2c_priv *priv,
227 u32 bus_speed, 227 u32 bus_speed,
228 struct device *dev) 228 struct device *dev)
229{ 229{
230 struct clk *clkp = clk_get(dev, NULL);
231 u32 scgd, cdf; 230 u32 scgd, cdf;
232 u32 round, ick; 231 u32 round, ick;
233 u32 scl; 232 u32 scl;
234 u32 cdf_width; 233 u32 cdf_width;
235 unsigned long rate; 234 unsigned long rate;
236 235
237 if (IS_ERR(clkp)) {
238 dev_err(dev, "couldn't get clock\n");
239 return PTR_ERR(clkp);
240 }
241
242 switch (priv->devtype) { 236 switch (priv->devtype) {
243 case I2C_RCAR_GEN1: 237 case I2C_RCAR_GEN1:
244 cdf_width = 2; 238 cdf_width = 2;
@@ -266,7 +260,7 @@ static int rcar_i2c_clock_calculate(struct rcar_i2c_priv *priv,
266 * clkp : peripheral_clk 260 * clkp : peripheral_clk
267 * F[] : integer up-valuation 261 * F[] : integer up-valuation
268 */ 262 */
269 rate = clk_get_rate(clkp); 263 rate = clk_get_rate(priv->clk);
270 cdf = rate / 20000000; 264 cdf = rate / 20000000;
271 if (cdf >= 1 << cdf_width) { 265 if (cdf >= 1 << cdf_width) {
272 dev_err(dev, "Input clock %lu too high\n", rate); 266 dev_err(dev, "Input clock %lu too high\n", rate);
@@ -308,7 +302,7 @@ static int rcar_i2c_clock_calculate(struct rcar_i2c_priv *priv,
308 302
309scgd_find: 303scgd_find:
310 dev_dbg(dev, "clk %d/%d(%lu), round %u, CDF:0x%x, SCGD: 0x%x\n", 304 dev_dbg(dev, "clk %d/%d(%lu), round %u, CDF:0x%x, SCGD: 0x%x\n",
311 scl, bus_speed, clk_get_rate(clkp), round, cdf, scgd); 305 scl, bus_speed, clk_get_rate(priv->clk), round, cdf, scgd);
312 306
313 /* 307 /*
314 * keep icccr value 308 * keep icccr value
@@ -604,7 +598,7 @@ static int rcar_i2c_master_xfer(struct i2c_adapter *adap,
604 * error handling 598 * error handling
605 */ 599 */
606 if (rcar_i2c_flags_has(priv, ID_NACK)) { 600 if (rcar_i2c_flags_has(priv, ID_NACK)) {
607 ret = -EREMOTEIO; 601 ret = -ENXIO;
608 break; 602 break;
609 } 603 }
610 604
@@ -623,7 +617,7 @@ static int rcar_i2c_master_xfer(struct i2c_adapter *adap,
623 617
624 pm_runtime_put(dev); 618 pm_runtime_put(dev);
625 619
626 if (ret < 0) 620 if (ret < 0 && ret != -ENXIO)
627 dev_err(dev, "error %d : %x\n", ret, priv->flags); 621 dev_err(dev, "error %d : %x\n", ret, priv->flags);
628 622
629 return ret; 623 return ret;
@@ -664,6 +658,12 @@ static int rcar_i2c_probe(struct platform_device *pdev)
664 return -ENOMEM; 658 return -ENOMEM;
665 } 659 }
666 660
661 priv->clk = devm_clk_get(dev, NULL);
662 if (IS_ERR(priv->clk)) {
663 dev_err(dev, "cannot get clock\n");
664 return PTR_ERR(priv->clk);
665 }
666
667 bus_speed = 100000; /* default 100 kHz */ 667 bus_speed = 100000; /* default 100 kHz */
668 ret = of_property_read_u32(dev->of_node, "clock-frequency", &bus_speed); 668 ret = of_property_read_u32(dev->of_node, "clock-frequency", &bus_speed);
669 if (ret < 0 && pdata && pdata->bus_speed) 669 if (ret < 0 && pdata && pdata->bus_speed)
diff --git a/drivers/i2c/busses/i2c-scmi.c b/drivers/i2c/busses/i2c-scmi.c
index 599235514138..dfc98df7b1b6 100644
--- a/drivers/i2c/busses/i2c-scmi.c
+++ b/drivers/i2c/busses/i2c-scmi.c
@@ -12,7 +12,6 @@
12#include <linux/slab.h> 12#include <linux/slab.h>
13#include <linux/kernel.h> 13#include <linux/kernel.h>
14#include <linux/stddef.h> 14#include <linux/stddef.h>
15#include <linux/init.h>
16#include <linux/i2c.h> 15#include <linux/i2c.h>
17#include <linux/acpi.h> 16#include <linux/acpi.h>
18 17
diff --git a/drivers/i2c/busses/i2c-sh7760.c b/drivers/i2c/busses/i2c-sh7760.c
index 5e8f136e233f..d76f3d9737ec 100644
--- a/drivers/i2c/busses/i2c-sh7760.c
+++ b/drivers/i2c/busses/i2c-sh7760.c
@@ -11,7 +11,6 @@
11#include <linux/delay.h> 11#include <linux/delay.h>
12#include <linux/err.h> 12#include <linux/err.h>
13#include <linux/i2c.h> 13#include <linux/i2c.h>
14#include <linux/init.h>
15#include <linux/interrupt.h> 14#include <linux/interrupt.h>
16#include <linux/ioport.h> 15#include <linux/ioport.h>
17#include <linux/platform_device.h> 16#include <linux/platform_device.h>
diff --git a/drivers/i2c/busses/i2c-simtec.c b/drivers/i2c/busses/i2c-simtec.c
index 4fc87e7c94c9..294c80f21d65 100644
--- a/drivers/i2c/busses/i2c-simtec.c
+++ b/drivers/i2c/busses/i2c-simtec.c
@@ -20,7 +20,6 @@
20 20
21#include <linux/kernel.h> 21#include <linux/kernel.h>
22#include <linux/module.h> 22#include <linux/module.h>
23#include <linux/init.h>
24#include <linux/delay.h> 23#include <linux/delay.h>
25#include <linux/platform_device.h> 24#include <linux/platform_device.h>
26#include <linux/slab.h> 25#include <linux/slab.h>
diff --git a/drivers/i2c/busses/i2c-sis630.c b/drivers/i2c/busses/i2c-sis630.c
index 36a9556d7cfa..19b8505d0cdd 100644
--- a/drivers/i2c/busses/i2c-sis630.c
+++ b/drivers/i2c/busses/i2c-sis630.c
@@ -45,7 +45,6 @@
45#include <linux/delay.h> 45#include <linux/delay.h>
46#include <linux/pci.h> 46#include <linux/pci.h>
47#include <linux/ioport.h> 47#include <linux/ioport.h>
48#include <linux/init.h>
49#include <linux/i2c.h> 48#include <linux/i2c.h>
50#include <linux/acpi.h> 49#include <linux/acpi.h>
51#include <linux/io.h> 50#include <linux/io.h>
diff --git a/drivers/i2c/busses/i2c-sis96x.c b/drivers/i2c/busses/i2c-sis96x.c
index b9faf9b6002b..f8aa0c29f02b 100644
--- a/drivers/i2c/busses/i2c-sis96x.c
+++ b/drivers/i2c/busses/i2c-sis96x.c
@@ -36,7 +36,6 @@
36#include <linux/stddef.h> 36#include <linux/stddef.h>
37#include <linux/ioport.h> 37#include <linux/ioport.h>
38#include <linux/i2c.h> 38#include <linux/i2c.h>
39#include <linux/init.h>
40#include <linux/acpi.h> 39#include <linux/acpi.h>
41#include <linux/io.h> 40#include <linux/io.h>
42 41
diff --git a/drivers/i2c/busses/i2c-via.c b/drivers/i2c/busses/i2c-via.c
index be662511c58b..49d7f14b9d27 100644
--- a/drivers/i2c/busses/i2c-via.c
+++ b/drivers/i2c/busses/i2c-via.c
@@ -22,7 +22,6 @@
22#include <linux/module.h> 22#include <linux/module.h>
23#include <linux/pci.h> 23#include <linux/pci.h>
24#include <linux/ioport.h> 24#include <linux/ioport.h>
25#include <linux/init.h>
26#include <linux/i2c.h> 25#include <linux/i2c.h>
27#include <linux/i2c-algo-bit.h> 26#include <linux/i2c-algo-bit.h>
28#include <linux/io.h> 27#include <linux/io.h>
diff --git a/drivers/i2c/busses/i2c-xiic.c b/drivers/i2c/busses/i2c-xiic.c
index 6f9918f37b91..28107502517f 100644
--- a/drivers/i2c/busses/i2c-xiic.c
+++ b/drivers/i2c/busses/i2c-xiic.c
@@ -30,7 +30,6 @@
30 */ 30 */
31#include <linux/kernel.h> 31#include <linux/kernel.h>
32#include <linux/module.h> 32#include <linux/module.h>
33#include <linux/init.h>
34#include <linux/errno.h> 33#include <linux/errno.h>
35#include <linux/err.h> 34#include <linux/err.h>
36#include <linux/delay.h> 35#include <linux/delay.h>
diff --git a/drivers/i2c/busses/i2c-xlr.c b/drivers/i2c/busses/i2c-xlr.c
index 7945b05d3ea0..17f7352eca6b 100644
--- a/drivers/i2c/busses/i2c-xlr.c
+++ b/drivers/i2c/busses/i2c-xlr.c
@@ -11,7 +11,6 @@
11#include <linux/kernel.h> 11#include <linux/kernel.h>
12#include <linux/module.h> 12#include <linux/module.h>
13#include <linux/slab.h> 13#include <linux/slab.h>
14#include <linux/init.h>
15#include <linux/ioport.h> 14#include <linux/ioport.h>
16#include <linux/delay.h> 15#include <linux/delay.h>
17#include <linux/errno.h> 16#include <linux/errno.h>
diff --git a/drivers/i2c/busses/scx200_i2c.c b/drivers/i2c/busses/scx200_i2c.c
index ae1258b95d60..8eadf0f47ad7 100644
--- a/drivers/i2c/busses/scx200_i2c.c
+++ b/drivers/i2c/busses/scx200_i2c.c
@@ -26,7 +26,6 @@
26#include <linux/module.h> 26#include <linux/module.h>
27#include <linux/errno.h> 27#include <linux/errno.h>
28#include <linux/kernel.h> 28#include <linux/kernel.h>
29#include <linux/init.h>
30#include <linux/i2c.h> 29#include <linux/i2c.h>
31#include <linux/i2c-algo-bit.h> 30#include <linux/i2c-algo-bit.h>
32#include <linux/io.h> 31#include <linux/io.h>
diff --git a/drivers/i2c/i2c-core.c b/drivers/i2c/i2c-core.c
index 82f7a5354dfe..5fb80b8962a2 100644
--- a/drivers/i2c/i2c-core.c
+++ b/drivers/i2c/i2c-core.c
@@ -261,10 +261,9 @@ static int i2c_device_probe(struct device *dev)
261 261
262 acpi_dev_pm_attach(&client->dev, true); 262 acpi_dev_pm_attach(&client->dev, true);
263 status = driver->probe(client, i2c_match_id(driver->id_table, client)); 263 status = driver->probe(client, i2c_match_id(driver->id_table, client));
264 if (status) { 264 if (status)
265 i2c_set_clientdata(client, NULL);
266 acpi_dev_pm_detach(&client->dev, true); 265 acpi_dev_pm_detach(&client->dev, true);
267 } 266
268 return status; 267 return status;
269} 268}
270 269
@@ -272,7 +271,7 @@ static int i2c_device_remove(struct device *dev)
272{ 271{
273 struct i2c_client *client = i2c_verify_client(dev); 272 struct i2c_client *client = i2c_verify_client(dev);
274 struct i2c_driver *driver; 273 struct i2c_driver *driver;
275 int status; 274 int status = 0;
276 275
277 if (!client || !dev->driver) 276 if (!client || !dev->driver)
278 return 0; 277 return 0;
@@ -281,12 +280,8 @@ static int i2c_device_remove(struct device *dev)
281 if (driver->remove) { 280 if (driver->remove) {
282 dev_dbg(dev, "remove\n"); 281 dev_dbg(dev, "remove\n");
283 status = driver->remove(client); 282 status = driver->remove(client);
284 } else {
285 dev->driver = NULL;
286 status = 0;
287 } 283 }
288 if (status == 0) 284
289 i2c_set_clientdata(client, NULL);
290 acpi_dev_pm_detach(&client->dev, true); 285 acpi_dev_pm_detach(&client->dev, true);
291 return status; 286 return status;
292} 287}
diff --git a/drivers/i2c/muxes/i2c-arb-gpio-challenge.c b/drivers/i2c/muxes/i2c-arb-gpio-challenge.c
index c58e093b6032..69afffa8f427 100644
--- a/drivers/i2c/muxes/i2c-arb-gpio-challenge.c
+++ b/drivers/i2c/muxes/i2c-arb-gpio-challenge.c
@@ -19,7 +19,6 @@
19#include <linux/kernel.h> 19#include <linux/kernel.h>
20#include <linux/i2c.h> 20#include <linux/i2c.h>
21#include <linux/i2c-mux.h> 21#include <linux/i2c-mux.h>
22#include <linux/init.h>
23#include <linux/module.h> 22#include <linux/module.h>
24#include <linux/of_gpio.h> 23#include <linux/of_gpio.h>
25#include <linux/platform_device.h> 24#include <linux/platform_device.h>
diff --git a/drivers/i2c/muxes/i2c-mux-gpio.c b/drivers/i2c/muxes/i2c-mux-gpio.c
index 8a8c56f4b026..d8989c823f50 100644
--- a/drivers/i2c/muxes/i2c-mux-gpio.c
+++ b/drivers/i2c/muxes/i2c-mux-gpio.c
@@ -12,7 +12,6 @@
12#include <linux/i2c-mux.h> 12#include <linux/i2c-mux.h>
13#include <linux/i2c-mux-gpio.h> 13#include <linux/i2c-mux-gpio.h>
14#include <linux/platform_device.h> 14#include <linux/platform_device.h>
15#include <linux/init.h>
16#include <linux/module.h> 15#include <linux/module.h>
17#include <linux/slab.h> 16#include <linux/slab.h>
18#include <linux/gpio.h> 17#include <linux/gpio.h>
diff --git a/drivers/i2c/muxes/i2c-mux-pca9541.c b/drivers/i2c/muxes/i2c-mux-pca9541.c
index c4f08ad31183..cb772775da43 100644
--- a/drivers/i2c/muxes/i2c-mux-pca9541.c
+++ b/drivers/i2c/muxes/i2c-mux-pca9541.c
@@ -17,7 +17,6 @@
17 */ 17 */
18 18
19#include <linux/module.h> 19#include <linux/module.h>
20#include <linux/init.h>
21#include <linux/jiffies.h> 20#include <linux/jiffies.h>
22#include <linux/delay.h> 21#include <linux/delay.h>
23#include <linux/slab.h> 22#include <linux/slab.h>
diff --git a/drivers/i2c/muxes/i2c-mux-pca954x.c b/drivers/i2c/muxes/i2c-mux-pca954x.c
index 8720b6a11237..550bd36aa5d6 100644
--- a/drivers/i2c/muxes/i2c-mux-pca954x.c
+++ b/drivers/i2c/muxes/i2c-mux-pca954x.c
@@ -40,7 +40,6 @@
40#include <linux/i2c.h> 40#include <linux/i2c.h>
41#include <linux/i2c-mux.h> 41#include <linux/i2c-mux.h>
42#include <linux/i2c/pca954x.h> 42#include <linux/i2c/pca954x.h>
43#include <linux/init.h>
44#include <linux/module.h> 43#include <linux/module.h>
45#include <linux/of_gpio.h> 44#include <linux/of_gpio.h>
46#include <linux/slab.h> 45#include <linux/slab.h>
diff --git a/drivers/i2c/muxes/i2c-mux-pinctrl.c b/drivers/i2c/muxes/i2c-mux-pinctrl.c
index d7978dc4ad0b..4ff0ef3e07a6 100644
--- a/drivers/i2c/muxes/i2c-mux-pinctrl.c
+++ b/drivers/i2c/muxes/i2c-mux-pinctrl.c
@@ -18,7 +18,6 @@
18 18
19#include <linux/i2c.h> 19#include <linux/i2c.h>
20#include <linux/i2c-mux.h> 20#include <linux/i2c-mux.h>
21#include <linux/init.h>
22#include <linux/module.h> 21#include <linux/module.h>
23#include <linux/pinctrl/consumer.h> 22#include <linux/pinctrl/consumer.h>
24#include <linux/i2c-mux-pinctrl.h> 23#include <linux/i2c-mux-pinctrl.h>