diff options
author | Jean Delvare <khali@linux-fr.org> | 2008-07-14 16:38:23 -0400 |
---|---|---|
committer | Jean Delvare <khali@mahadeva.delvare> | 2008-07-14 16:38:23 -0400 |
commit | f5b728a164b22ec38a5657ebe038def36ffae98b (patch) | |
tree | 5148c61f481b7335dca733a764ed21dbeae2cdde | |
parent | 24a5bb7b1838dc4524dd353224e2aa09c22cac3b (diff) |
i2c: Group bus drivers by type
The list of I2C/SMBus bus drivers is growing and it is sometimes
difficult for the users to figure out what drivers they should enable.
By grouping the drivers by type, I hope to make the selection easier.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
-rw-r--r-- | drivers/i2c/busses/Kconfig | 661 | ||||
-rw-r--r-- | drivers/i2c/busses/Makefile | 53 |
2 files changed, 370 insertions, 344 deletions
diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig index 37f5b84e0e9c..2b0874b0ad11 100644 --- a/drivers/i2c/busses/Kconfig +++ b/drivers/i2c/busses/Kconfig | |||
@@ -4,6 +4,9 @@ | |||
4 | 4 | ||
5 | menu "I2C Hardware Bus support" | 5 | menu "I2C Hardware Bus support" |
6 | 6 | ||
7 | comment "PC SMBus host controller drivers" | ||
8 | depends on PCI | ||
9 | |||
7 | config I2C_ALI1535 | 10 | config I2C_ALI1535 |
8 | tristate "ALI 1535" | 11 | tristate "ALI 1535" |
9 | depends on PCI | 12 | depends on PCI |
@@ -73,6 +76,176 @@ config I2C_AMD8111 | |||
73 | This driver can also be built as a module. If so, the module | 76 | This driver can also be built as a module. If so, the module |
74 | will be called i2c-amd8111. | 77 | will be called i2c-amd8111. |
75 | 78 | ||
79 | config I2C_I801 | ||
80 | tristate "Intel 82801 (ICH)" | ||
81 | depends on PCI | ||
82 | help | ||
83 | If you say yes to this option, support will be included for the Intel | ||
84 | 801 family of mainboard I2C interfaces. Specifically, the following | ||
85 | versions of the chipset are supported: | ||
86 | 82801AA | ||
87 | 82801AB | ||
88 | 82801BA | ||
89 | 82801CA/CAM | ||
90 | 82801DB | ||
91 | 82801EB/ER (ICH5/ICH5R) | ||
92 | 6300ESB | ||
93 | ICH6 | ||
94 | ICH7 | ||
95 | ESB2 | ||
96 | ICH8 | ||
97 | ICH9 | ||
98 | Tolapai | ||
99 | ICH10 | ||
100 | |||
101 | This driver can also be built as a module. If so, the module | ||
102 | will be called i2c-i801. | ||
103 | |||
104 | config I2C_PIIX4 | ||
105 | tristate "Intel PIIX4 and compatible (ATI/Serverworks/Broadcom/SMSC)" | ||
106 | depends on PCI | ||
107 | help | ||
108 | If you say yes to this option, support will be included for the Intel | ||
109 | PIIX4 family of mainboard I2C interfaces. Specifically, the following | ||
110 | versions of the chipset are supported (note that Serverworks is part | ||
111 | of Broadcom): | ||
112 | Intel PIIX4 | ||
113 | Intel 440MX | ||
114 | ATI IXP200 | ||
115 | ATI IXP300 | ||
116 | ATI IXP400 | ||
117 | ATI SB600 | ||
118 | ATI SB700 | ||
119 | ATI SB800 | ||
120 | Serverworks OSB4 | ||
121 | Serverworks CSB5 | ||
122 | Serverworks CSB6 | ||
123 | Serverworks HT-1000 | ||
124 | SMSC Victory66 | ||
125 | |||
126 | This driver can also be built as a module. If so, the module | ||
127 | will be called i2c-piix4. | ||
128 | |||
129 | config I2C_NFORCE2 | ||
130 | tristate "Nvidia nForce2, nForce3 and nForce4" | ||
131 | depends on PCI | ||
132 | help | ||
133 | If you say yes to this option, support will be included for the Nvidia | ||
134 | nForce2, nForce3 and nForce4 families of mainboard I2C interfaces. | ||
135 | |||
136 | This driver can also be built as a module. If so, the module | ||
137 | will be called i2c-nforce2. | ||
138 | |||
139 | config I2C_NFORCE2_S4985 | ||
140 | tristate "SMBus multiplexing on the Tyan S4985" | ||
141 | depends on I2C_NFORCE2 && EXPERIMENTAL | ||
142 | help | ||
143 | Enabling this option will add specific SMBus support for the Tyan | ||
144 | S4985 motherboard. On this 4-CPU board, the SMBus is multiplexed | ||
145 | over 4 different channels, where the various memory module EEPROMs | ||
146 | live. Saying yes here will give you access to these in addition | ||
147 | to the trunk. | ||
148 | |||
149 | This driver can also be built as a module. If so, the module | ||
150 | will be called i2c-nforce2-s4985. | ||
151 | |||
152 | config I2C_SIS5595 | ||
153 | tristate "SiS 5595" | ||
154 | depends on PCI | ||
155 | help | ||
156 | If you say yes to this option, support will be included for the | ||
157 | SiS5595 SMBus (a subset of I2C) interface. | ||
158 | |||
159 | This driver can also be built as a module. If so, the module | ||
160 | will be called i2c-sis5595. | ||
161 | |||
162 | config I2C_SIS630 | ||
163 | tristate "SiS 630/730" | ||
164 | depends on PCI | ||
165 | help | ||
166 | If you say yes to this option, support will be included for the | ||
167 | SiS630 and SiS730 SMBus (a subset of I2C) interface. | ||
168 | |||
169 | This driver can also be built as a module. If so, the module | ||
170 | will be called i2c-sis630. | ||
171 | |||
172 | config I2C_SIS96X | ||
173 | tristate "SiS 96x" | ||
174 | depends on PCI | ||
175 | help | ||
176 | If you say yes to this option, support will be included for the SiS | ||
177 | 96x SMBus (a subset of I2C) interfaces. Specifically, the following | ||
178 | chipsets are supported: | ||
179 | 645/961 | ||
180 | 645DX/961 | ||
181 | 645DX/962 | ||
182 | 648/961 | ||
183 | 650/961 | ||
184 | 735 | ||
185 | 745 | ||
186 | |||
187 | This driver can also be built as a module. If so, the module | ||
188 | will be called i2c-sis96x. | ||
189 | |||
190 | config I2C_VIA | ||
191 | tristate "VIA VT82C586B" | ||
192 | depends on PCI && EXPERIMENTAL | ||
193 | select I2C_ALGOBIT | ||
194 | help | ||
195 | If you say yes to this option, support will be included for the VIA | ||
196 | 82C586B I2C interface | ||
197 | |||
198 | This driver can also be built as a module. If so, the module | ||
199 | will be called i2c-via. | ||
200 | |||
201 | config I2C_VIAPRO | ||
202 | tristate "VIA VT82C596/82C686/82xx and CX700" | ||
203 | depends on PCI | ||
204 | help | ||
205 | If you say yes to this option, support will be included for the VIA | ||
206 | VT82C596 and later SMBus interface. Specifically, the following | ||
207 | chipsets are supported: | ||
208 | VT82C596A/B | ||
209 | VT82C686A/B | ||
210 | VT8231 | ||
211 | VT8233/A | ||
212 | VT8235 | ||
213 | VT8237R/A/S | ||
214 | VT8251 | ||
215 | CX700 | ||
216 | |||
217 | This driver can also be built as a module. If so, the module | ||
218 | will be called i2c-viapro. | ||
219 | |||
220 | comment "Mac SMBus host controller drivers" | ||
221 | depends on PPC_CHRP || PPC_PMAC | ||
222 | |||
223 | config I2C_HYDRA | ||
224 | tristate "CHRP Apple Hydra Mac I/O I2C interface" | ||
225 | depends on PCI && PPC_CHRP && EXPERIMENTAL | ||
226 | select I2C_ALGOBIT | ||
227 | help | ||
228 | This supports the use of the I2C interface in the Apple Hydra Mac | ||
229 | I/O chip on some CHRP machines (e.g. the LongTrail). Say Y if you | ||
230 | have such a machine. | ||
231 | |||
232 | This support is also available as a module. If so, the module | ||
233 | will be called i2c-hydra. | ||
234 | |||
235 | config I2C_POWERMAC | ||
236 | tristate "Powermac I2C interface" | ||
237 | depends on PPC_PMAC | ||
238 | default y | ||
239 | help | ||
240 | This exposes the various PowerMac i2c interfaces to the linux i2c | ||
241 | layer and to userland. It is used by various drivers on the PowerMac | ||
242 | platform, and should generally be enabled. | ||
243 | |||
244 | This support is also available as a module. If so, the module | ||
245 | will be called i2c-powermac. | ||
246 | |||
247 | comment "I2C system bus drivers (mostly embedded / system-on-chip)" | ||
248 | |||
76 | config I2C_AT91 | 249 | config I2C_AT91 |
77 | tristate "Atmel AT91 I2C Two-Wire interface (TWI)" | 250 | tristate "Atmel AT91 I2C Two-Wire interface (TWI)" |
78 | depends on ARCH_AT91 && EXPERIMENTAL && BROKEN | 251 | depends on ARCH_AT91 && EXPERIMENTAL && BROKEN |
@@ -129,17 +302,6 @@ config I2C_DAVINCI | |||
129 | devices such as DaVinci NIC. | 302 | devices such as DaVinci NIC. |
130 | For details please see http://www.ti.com/davinci | 303 | For details please see http://www.ti.com/davinci |
131 | 304 | ||
132 | config I2C_ELEKTOR | ||
133 | tristate "Elektor ISA card" | ||
134 | depends on ISA && BROKEN_ON_SMP | ||
135 | select I2C_ALGOPCF | ||
136 | help | ||
137 | This supports the PCF8584 ISA bus I2C adapter. Say Y if you own | ||
138 | such an adapter. | ||
139 | |||
140 | This support is also available as a module. If so, the module | ||
141 | will be called i2c-elektor. | ||
142 | |||
143 | config I2C_GPIO | 305 | config I2C_GPIO |
144 | tristate "GPIO-based bitbanging I2C" | 306 | tristate "GPIO-based bitbanging I2C" |
145 | depends on GENERIC_GPIO | 307 | depends on GENERIC_GPIO |
@@ -148,84 +310,6 @@ config I2C_GPIO | |||
148 | This is a very simple bitbanging I2C driver utilizing the | 310 | This is a very simple bitbanging I2C driver utilizing the |
149 | arch-neutral GPIO API to control the SCL and SDA lines. | 311 | arch-neutral GPIO API to control the SCL and SDA lines. |
150 | 312 | ||
151 | config I2C_HYDRA | ||
152 | tristate "CHRP Apple Hydra Mac I/O I2C interface" | ||
153 | depends on PCI && PPC_CHRP && EXPERIMENTAL | ||
154 | select I2C_ALGOBIT | ||
155 | help | ||
156 | This supports the use of the I2C interface in the Apple Hydra Mac | ||
157 | I/O chip on some CHRP machines (e.g. the LongTrail). Say Y if you | ||
158 | have such a machine. | ||
159 | |||
160 | This support is also available as a module. If so, the module | ||
161 | will be called i2c-hydra. | ||
162 | |||
163 | config I2C_I801 | ||
164 | tristate "Intel 82801 (ICH)" | ||
165 | depends on PCI | ||
166 | help | ||
167 | If you say yes to this option, support will be included for the Intel | ||
168 | 801 family of mainboard I2C interfaces. Specifically, the following | ||
169 | versions of the chipset are supported: | ||
170 | 82801AA | ||
171 | 82801AB | ||
172 | 82801BA | ||
173 | 82801CA/CAM | ||
174 | 82801DB | ||
175 | 82801EB/ER (ICH5/ICH5R) | ||
176 | 6300ESB | ||
177 | ICH6 | ||
178 | ICH7 | ||
179 | ESB2 | ||
180 | ICH8 | ||
181 | ICH9 | ||
182 | Tolapai | ||
183 | ICH10 | ||
184 | |||
185 | This driver can also be built as a module. If so, the module | ||
186 | will be called i2c-i801. | ||
187 | |||
188 | config I2C_PXA | ||
189 | tristate "Intel PXA2XX I2C adapter (EXPERIMENTAL)" | ||
190 | depends on EXPERIMENTAL && ARCH_PXA | ||
191 | help | ||
192 | If you have devices in the PXA I2C bus, say yes to this option. | ||
193 | This driver can also be built as a module. If so, the module | ||
194 | will be called i2c-pxa. | ||
195 | |||
196 | config I2C_PXA_SLAVE | ||
197 | bool "Intel PXA2XX I2C Slave comms support" | ||
198 | depends on I2C_PXA | ||
199 | help | ||
200 | Support I2C slave mode communications on the PXA I2C bus. This | ||
201 | is necessary for systems where the PXA may be a target on the | ||
202 | I2C bus. | ||
203 | |||
204 | config I2C_PIIX4 | ||
205 | tristate "Intel PIIX4 and compatible (ATI/Serverworks/Broadcom/SMSC)" | ||
206 | depends on PCI | ||
207 | help | ||
208 | If you say yes to this option, support will be included for the Intel | ||
209 | PIIX4 family of mainboard I2C interfaces. Specifically, the following | ||
210 | versions of the chipset are supported (note that Serverworks is part | ||
211 | of Broadcom): | ||
212 | Intel PIIX4 | ||
213 | Intel 440MX | ||
214 | ATI IXP200 | ||
215 | ATI IXP300 | ||
216 | ATI IXP400 | ||
217 | ATI SB600 | ||
218 | ATI SB700 | ||
219 | ATI SB800 | ||
220 | Serverworks OSB4 | ||
221 | Serverworks CSB5 | ||
222 | Serverworks CSB6 | ||
223 | Serverworks HT-1000 | ||
224 | SMSC Victory66 | ||
225 | |||
226 | This driver can also be built as a module. If so, the module | ||
227 | will be called i2c-piix4. | ||
228 | |||
229 | config I2C_IBM_IIC | 313 | config I2C_IBM_IIC |
230 | tristate "IBM PPC 4xx on-chip I2C interface" | 314 | tristate "IBM PPC 4xx on-chip I2C interface" |
231 | depends on 4xx | 315 | depends on 4xx |
@@ -260,18 +344,6 @@ config I2C_IXP2000 | |||
260 | This driver is deprecated and will be dropped soon. Use i2c-gpio | 344 | This driver is deprecated and will be dropped soon. Use i2c-gpio |
261 | instead. | 345 | instead. |
262 | 346 | ||
263 | config I2C_POWERMAC | ||
264 | tristate "Powermac I2C interface" | ||
265 | depends on PPC_PMAC | ||
266 | default y | ||
267 | help | ||
268 | This exposes the various PowerMac i2c interfaces to the linux i2c | ||
269 | layer and to userland. It is used by various drivers on the PowerMac | ||
270 | platform, and should generally be enabled. | ||
271 | |||
272 | This support is also available as a module. If so, the module | ||
273 | will be called i2c-powermac. | ||
274 | |||
275 | config I2C_MPC | 347 | config I2C_MPC |
276 | tristate "MPC107/824x/85xx/52xx/86xx" | 348 | tristate "MPC107/824x/85xx/52xx/86xx" |
277 | depends on PPC32 | 349 | depends on PPC32 |
@@ -284,28 +356,15 @@ config I2C_MPC | |||
284 | This driver can also be built as a module. If so, the module | 356 | This driver can also be built as a module. If so, the module |
285 | will be called i2c-mpc. | 357 | will be called i2c-mpc. |
286 | 358 | ||
287 | config I2C_NFORCE2 | 359 | config I2C_MV64XXX |
288 | tristate "Nvidia nForce2, nForce3 and nForce4" | 360 | tristate "Marvell mv64xxx I2C Controller" |
289 | depends on PCI | 361 | depends on (MV64X60 || PLAT_ORION) && EXPERIMENTAL |
290 | help | ||
291 | If you say yes to this option, support will be included for the Nvidia | ||
292 | nForce2, nForce3 and nForce4 families of mainboard I2C interfaces. | ||
293 | |||
294 | This driver can also be built as a module. If so, the module | ||
295 | will be called i2c-nforce2. | ||
296 | |||
297 | config I2C_NFORCE2_S4985 | ||
298 | tristate "SMBus multiplexing on the Tyan S4985" | ||
299 | depends on I2C_NFORCE2 && EXPERIMENTAL | ||
300 | help | 362 | help |
301 | Enabling this option will add specific SMBus support for the Tyan | 363 | If you say yes to this option, support will be included for the |
302 | S4985 motherboard. On this 4-CPU board, the SMBus is multiplexed | 364 | built-in I2C interface on the Marvell 64xxx line of host bridges. |
303 | over 4 different channels, where the various memory module EEPROMs | ||
304 | live. Saying yes here will give you access to these in addition | ||
305 | to the trunk. | ||
306 | 365 | ||
307 | This driver can also be built as a module. If so, the module | 366 | This driver can also be built as a module. If so, the module |
308 | will be called i2c-nforce2-s4985. | 367 | will be called i2c-mv64xxx. |
309 | 368 | ||
310 | config I2C_OCORES | 369 | config I2C_OCORES |
311 | tristate "OpenCores I2C Controller" | 370 | tristate "OpenCores I2C Controller" |
@@ -328,6 +387,89 @@ config I2C_OMAP | |||
328 | Like OMAP1510/1610/1710/5912 and OMAP242x. | 387 | Like OMAP1510/1610/1710/5912 and OMAP242x. |
329 | For details see http://www.ti.com/omap. | 388 | For details see http://www.ti.com/omap. |
330 | 389 | ||
390 | config I2C_PASEMI | ||
391 | tristate "PA Semi SMBus interface" | ||
392 | depends on PPC_PASEMI && PCI | ||
393 | help | ||
394 | Supports the PA Semi PWRficient on-chip SMBus interfaces. | ||
395 | |||
396 | config I2C_PNX | ||
397 | tristate "I2C bus support for Philips PNX targets" | ||
398 | depends on ARCH_PNX4008 | ||
399 | help | ||
400 | This driver supports the Philips IP3204 I2C IP block master and/or | ||
401 | slave controller | ||
402 | |||
403 | This driver can also be built as a module. If so, the module | ||
404 | will be called i2c-pnx. | ||
405 | |||
406 | config I2C_PXA | ||
407 | tristate "Intel PXA2XX I2C adapter (EXPERIMENTAL)" | ||
408 | depends on EXPERIMENTAL && ARCH_PXA | ||
409 | help | ||
410 | If you have devices in the PXA I2C bus, say yes to this option. | ||
411 | This driver can also be built as a module. If so, the module | ||
412 | will be called i2c-pxa. | ||
413 | |||
414 | config I2C_PXA_SLAVE | ||
415 | bool "Intel PXA2XX I2C Slave comms support" | ||
416 | depends on I2C_PXA | ||
417 | help | ||
418 | Support I2C slave mode communications on the PXA I2C bus. This | ||
419 | is necessary for systems where the PXA may be a target on the | ||
420 | I2C bus. | ||
421 | |||
422 | config I2C_S3C2410 | ||
423 | tristate "S3C2410 I2C Driver" | ||
424 | depends on ARCH_S3C2410 | ||
425 | help | ||
426 | Say Y here to include support for I2C controller in the | ||
427 | Samsung S3C2410 based System-on-Chip devices. | ||
428 | |||
429 | config I2C_SH7760 | ||
430 | tristate "Renesas SH7760 I2C Controller" | ||
431 | depends on CPU_SUBTYPE_SH7760 | ||
432 | help | ||
433 | This driver supports the 2 I2C interfaces on the Renesas SH7760. | ||
434 | |||
435 | This driver can also be built as a module. If so, the module | ||
436 | will be called i2c-sh7760. | ||
437 | |||
438 | config I2C_SH_MOBILE | ||
439 | tristate "SuperH Mobile I2C Controller" | ||
440 | depends on SUPERH | ||
441 | help | ||
442 | If you say yes to this option, support will be included for the | ||
443 | built-in I2C interface on the Renesas SH-Mobile processor. | ||
444 | |||
445 | This driver can also be built as a module. If so, the module | ||
446 | will be called i2c-sh_mobile. | ||
447 | |||
448 | config I2C_SIMTEC | ||
449 | tristate "Simtec Generic I2C interface" | ||
450 | select I2C_ALGOBIT | ||
451 | help | ||
452 | If you say yes to this option, support will be included for | ||
453 | the Simtec Generic I2C interface. This driver is for the | ||
454 | simple I2C bus used on newer Simtec products for general | ||
455 | I2C, such as DDC on the Simtec BBD2016A. | ||
456 | |||
457 | This driver can also be built as a module. If so, the module | ||
458 | will be called i2c-simtec. | ||
459 | |||
460 | config I2C_VERSATILE | ||
461 | tristate "ARM Versatile/Realview I2C bus support" | ||
462 | depends on ARCH_VERSATILE || ARCH_REALVIEW | ||
463 | select I2C_ALGOBIT | ||
464 | help | ||
465 | Say yes if you want to support the I2C serial bus on ARMs Versatile | ||
466 | range of platforms. | ||
467 | |||
468 | This driver can also be built as a module. If so, the module | ||
469 | will be called i2c-versatile. | ||
470 | |||
471 | comment "External I2C/SMBus adapter drivers" | ||
472 | |||
331 | config I2C_PARPORT | 473 | config I2C_PARPORT |
332 | tristate "Parallel port adapter" | 474 | tristate "Parallel port adapter" |
333 | depends on PARPORT | 475 | depends on PARPORT |
@@ -375,118 +517,6 @@ config I2C_PARPORT_LIGHT | |||
375 | This support is also available as a module. If so, the module | 517 | This support is also available as a module. If so, the module |
376 | will be called i2c-parport-light. | 518 | will be called i2c-parport-light. |
377 | 519 | ||
378 | config I2C_PASEMI | ||
379 | tristate "PA Semi SMBus interface" | ||
380 | depends on PPC_PASEMI && PCI | ||
381 | help | ||
382 | Supports the PA Semi PWRficient on-chip SMBus interfaces. | ||
383 | |||
384 | config I2C_S3C2410 | ||
385 | tristate "S3C2410 I2C Driver" | ||
386 | depends on ARCH_S3C2410 | ||
387 | help | ||
388 | Say Y here to include support for I2C controller in the | ||
389 | Samsung S3C2410 based System-on-Chip devices. | ||
390 | |||
391 | config I2C_SIBYTE | ||
392 | tristate "SiByte SMBus interface" | ||
393 | depends on SIBYTE_SB1xxx_SOC | ||
394 | help | ||
395 | Supports the SiByte SOC on-chip I2C interfaces (2 channels). | ||
396 | |||
397 | config I2C_SIMTEC | ||
398 | tristate "Simtec Generic I2C interface" | ||
399 | select I2C_ALGOBIT | ||
400 | help | ||
401 | If you say yes to this option, support will be included for | ||
402 | the Simtec Generic I2C interface. This driver is for the | ||
403 | simple I2C bus used on newer Simtec products for general | ||
404 | I2C, such as DDC on the Simtec BBD2016A. | ||
405 | |||
406 | This driver can also be built as a module. If so, the module | ||
407 | will be called i2c-simtec. | ||
408 | |||
409 | config SCx200_I2C | ||
410 | tristate "NatSemi SCx200 I2C using GPIO pins (DEPRECATED)" | ||
411 | depends on SCx200_GPIO | ||
412 | select I2C_ALGOBIT | ||
413 | help | ||
414 | Enable the use of two GPIO pins of a SCx200 processor as an I2C bus. | ||
415 | |||
416 | If you don't know what to do here, say N. | ||
417 | |||
418 | This support is also available as a module. If so, the module | ||
419 | will be called scx200_i2c. | ||
420 | |||
421 | This driver is deprecated and will be dropped soon. Use i2c-gpio | ||
422 | (or scx200_acb) instead. | ||
423 | |||
424 | config SCx200_I2C_SCL | ||
425 | int "GPIO pin used for SCL" | ||
426 | depends on SCx200_I2C | ||
427 | default "12" | ||
428 | help | ||
429 | Enter the GPIO pin number used for the SCL signal. This value can | ||
430 | also be specified with a module parameter. | ||
431 | |||
432 | config SCx200_I2C_SDA | ||
433 | int "GPIO pin used for SDA" | ||
434 | depends on SCx200_I2C | ||
435 | default "13" | ||
436 | help | ||
437 | Enter the GPIO pin number used for the SSA signal. This value can | ||
438 | also be specified with a module parameter. | ||
439 | |||
440 | config SCx200_ACB | ||
441 | tristate "Geode ACCESS.bus support" | ||
442 | depends on X86_32 && PCI | ||
443 | help | ||
444 | Enable the use of the ACCESS.bus controllers on the Geode SCx200 and | ||
445 | SC1100 processors and the CS5535 and CS5536 Geode companion devices. | ||
446 | |||
447 | If you don't know what to do here, say N. | ||
448 | |||
449 | This support is also available as a module. If so, the module | ||
450 | will be called scx200_acb. | ||
451 | |||
452 | config I2C_SIS5595 | ||
453 | tristate "SiS 5595" | ||
454 | depends on PCI | ||
455 | help | ||
456 | If you say yes to this option, support will be included for the | ||
457 | SiS5595 SMBus (a subset of I2C) interface. | ||
458 | |||
459 | This driver can also be built as a module. If so, the module | ||
460 | will be called i2c-sis5595. | ||
461 | |||
462 | config I2C_SIS630 | ||
463 | tristate "SiS 630/730" | ||
464 | depends on PCI | ||
465 | help | ||
466 | If you say yes to this option, support will be included for the | ||
467 | SiS630 and SiS730 SMBus (a subset of I2C) interface. | ||
468 | |||
469 | This driver can also be built as a module. If so, the module | ||
470 | will be called i2c-sis630. | ||
471 | |||
472 | config I2C_SIS96X | ||
473 | tristate "SiS 96x" | ||
474 | depends on PCI | ||
475 | help | ||
476 | If you say yes to this option, support will be included for the SiS | ||
477 | 96x SMBus (a subset of I2C) interfaces. Specifically, the following | ||
478 | chipsets are supported: | ||
479 | 645/961 | ||
480 | 645DX/961 | ||
481 | 645DX/962 | ||
482 | 648/961 | ||
483 | 650/961 | ||
484 | 735 | ||
485 | 745 | ||
486 | |||
487 | This driver can also be built as a module. If so, the module | ||
488 | will be called i2c-sis96x. | ||
489 | |||
490 | config I2C_TAOS_EVM | 520 | config I2C_TAOS_EVM |
491 | tristate "TAOS evaluation module" | 521 | tristate "TAOS evaluation module" |
492 | depends on EXPERIMENTAL | 522 | depends on EXPERIMENTAL |
@@ -503,21 +533,8 @@ config I2C_TAOS_EVM | |||
503 | This support is also available as a module. If so, the module | 533 | This support is also available as a module. If so, the module |
504 | will be called i2c-taos-evm. | 534 | will be called i2c-taos-evm. |
505 | 535 | ||
506 | config I2C_STUB | ||
507 | tristate "I2C/SMBus Test Stub" | ||
508 | depends on EXPERIMENTAL && m | ||
509 | default 'n' | ||
510 | help | ||
511 | This module may be useful to developers of SMBus client drivers, | ||
512 | especially for certain kinds of sensor chips. | ||
513 | |||
514 | If you do build this module, be sure to read the notes and warnings | ||
515 | in <file:Documentation/i2c/i2c-stub>. | ||
516 | |||
517 | If you don't know what to do here, definitely say N. | ||
518 | |||
519 | config I2C_TINY_USB | 536 | config I2C_TINY_USB |
520 | tristate "I2C-Tiny-USB" | 537 | tristate "Tiny-USB adapter" |
521 | depends on USB | 538 | depends on USB |
522 | help | 539 | help |
523 | If you say yes to this option, support will be included for the | 540 | If you say yes to this option, support will be included for the |
@@ -527,16 +544,21 @@ config I2C_TINY_USB | |||
527 | This driver can also be built as a module. If so, the module | 544 | This driver can also be built as a module. If so, the module |
528 | will be called i2c-tiny-usb. | 545 | will be called i2c-tiny-usb. |
529 | 546 | ||
530 | config I2C_VERSATILE | 547 | comment "Graphics adapter I2C/DDC channel drivers" |
531 | tristate "ARM Versatile/Realview I2C bus support" | 548 | depends on PCI |
532 | depends on ARCH_VERSATILE || ARCH_REALVIEW | 549 | |
550 | config I2C_VOODOO3 | ||
551 | tristate "Voodoo 3" | ||
552 | depends on PCI | ||
533 | select I2C_ALGOBIT | 553 | select I2C_ALGOBIT |
534 | help | 554 | help |
535 | Say yes if you want to support the I2C serial bus on ARMs Versatile | 555 | If you say yes to this option, support will be included for the |
536 | range of platforms. | 556 | Voodoo 3 I2C interface. |
537 | 557 | ||
538 | This driver can also be built as a module. If so, the module | 558 | This driver can also be built as a module. If so, the module |
539 | will be called i2c-versatile. | 559 | will be called i2c-voodoo3. |
560 | |||
561 | comment "Other I2C/SMBus bus drivers" | ||
540 | 562 | ||
541 | config I2C_ACORN | 563 | config I2C_ACORN |
542 | tristate "Acorn IOC/IOMD I2C bus support" | 564 | tristate "Acorn IOC/IOMD I2C bus support" |
@@ -548,46 +570,16 @@ config I2C_ACORN | |||
548 | 570 | ||
549 | If you don't know, say Y. | 571 | If you don't know, say Y. |
550 | 572 | ||
551 | config I2C_VIA | 573 | config I2C_ELEKTOR |
552 | tristate "VIA 82C586B" | 574 | tristate "Elektor ISA card" |
553 | depends on PCI && EXPERIMENTAL | 575 | depends on ISA && BROKEN_ON_SMP |
554 | select I2C_ALGOBIT | 576 | select I2C_ALGOPCF |
555 | help | ||
556 | If you say yes to this option, support will be included for the VIA | ||
557 | 82C586B I2C interface | ||
558 | |||
559 | This driver can also be built as a module. If so, the module | ||
560 | will be called i2c-via. | ||
561 | |||
562 | config I2C_VIAPRO | ||
563 | tristate "VIA VT82C596/82C686/82xx and CX700" | ||
564 | depends on PCI | ||
565 | help | ||
566 | If you say yes to this option, support will be included for the VIA | ||
567 | VT82C596 and later SMBus interface. Specifically, the following | ||
568 | chipsets are supported: | ||
569 | VT82C596A/B | ||
570 | VT82C686A/B | ||
571 | VT8231 | ||
572 | VT8233/A | ||
573 | VT8235 | ||
574 | VT8237R/A/S | ||
575 | VT8251 | ||
576 | CX700 | ||
577 | |||
578 | This driver can also be built as a module. If so, the module | ||
579 | will be called i2c-viapro. | ||
580 | |||
581 | config I2C_VOODOO3 | ||
582 | tristate "Voodoo 3" | ||
583 | depends on PCI | ||
584 | select I2C_ALGOBIT | ||
585 | help | 577 | help |
586 | If you say yes to this option, support will be included for the | 578 | This supports the PCF8584 ISA bus I2C adapter. Say Y if you own |
587 | Voodoo 3 I2C interface. | 579 | such an adapter. |
588 | 580 | ||
589 | This driver can also be built as a module. If so, the module | 581 | This support is also available as a module. If so, the module |
590 | will be called i2c-voodoo3. | 582 | will be called i2c-elektor. |
591 | 583 | ||
592 | config I2C_PCA_ISA | 584 | config I2C_PCA_ISA |
593 | tristate "PCA9564 on an ISA bus" | 585 | tristate "PCA9564 on an ISA bus" |
@@ -617,26 +609,6 @@ config I2C_PCA_PLATFORM | |||
617 | This driver can also be built as a module. If so, the module | 609 | This driver can also be built as a module. If so, the module |
618 | will be called i2c-pca-platform. | 610 | will be called i2c-pca-platform. |
619 | 611 | ||
620 | config I2C_MV64XXX | ||
621 | tristate "Marvell mv64xxx I2C Controller" | ||
622 | depends on (MV64X60 || PLAT_ORION) && EXPERIMENTAL | ||
623 | help | ||
624 | If you say yes to this option, support will be included for the | ||
625 | built-in I2C interface on the Marvell 64xxx line of host bridges. | ||
626 | |||
627 | This driver can also be built as a module. If so, the module | ||
628 | will be called i2c-mv64xxx. | ||
629 | |||
630 | config I2C_PNX | ||
631 | tristate "I2C bus support for Philips PNX targets" | ||
632 | depends on ARCH_PNX4008 | ||
633 | help | ||
634 | This driver supports the Philips IP3204 I2C IP block master and/or | ||
635 | slave controller | ||
636 | |||
637 | This driver can also be built as a module. If so, the module | ||
638 | will be called i2c-pnx. | ||
639 | |||
640 | config I2C_PMCMSP | 612 | config I2C_PMCMSP |
641 | tristate "PMC MSP I2C TWI Controller" | 613 | tristate "PMC MSP I2C TWI Controller" |
642 | depends on PMC_MSP | 614 | depends on PMC_MSP |
@@ -646,23 +618,66 @@ config I2C_PMCMSP | |||
646 | This driver can also be built as module. If so, the module | 618 | This driver can also be built as module. If so, the module |
647 | will be called i2c-pmcmsp. | 619 | will be called i2c-pmcmsp. |
648 | 620 | ||
649 | config I2C_SH7760 | 621 | config I2C_SIBYTE |
650 | tristate "Renesas SH7760 I2C Controller" | 622 | tristate "SiByte SMBus interface" |
651 | depends on CPU_SUBTYPE_SH7760 | 623 | depends on SIBYTE_SB1xxx_SOC |
652 | help | 624 | help |
653 | This driver supports the 2 I2C interfaces on the Renesas SH7760. | 625 | Supports the SiByte SOC on-chip I2C interfaces (2 channels). |
654 | 626 | ||
655 | This driver can also be built as a module. If so, the module | 627 | config I2C_STUB |
656 | will be called i2c-sh7760. | 628 | tristate "I2C/SMBus Test Stub" |
629 | depends on EXPERIMENTAL && m | ||
630 | default 'n' | ||
631 | help | ||
632 | This module may be useful to developers of SMBus client drivers, | ||
633 | especially for certain kinds of sensor chips. | ||
657 | 634 | ||
658 | config I2C_SH_MOBILE | 635 | If you do build this module, be sure to read the notes and warnings |
659 | tristate "SuperH Mobile I2C Controller" | 636 | in <file:Documentation/i2c/i2c-stub>. |
660 | depends on SUPERH | 637 | |
638 | If you don't know what to do here, definitely say N. | ||
639 | |||
640 | config SCx200_I2C | ||
641 | tristate "NatSemi SCx200 I2C using GPIO pins (DEPRECATED)" | ||
642 | depends on SCx200_GPIO | ||
643 | select I2C_ALGOBIT | ||
661 | help | 644 | help |
662 | If you say yes to this option, support will be included for the | 645 | Enable the use of two GPIO pins of a SCx200 processor as an I2C bus. |
663 | built-in I2C interface on the Renesas SH-Mobile processor. | ||
664 | 646 | ||
665 | This driver can also be built as a module. If so, the module | 647 | If you don't know what to do here, say N. |
666 | will be called i2c-sh_mobile. | 648 | |
649 | This support is also available as a module. If so, the module | ||
650 | will be called scx200_i2c. | ||
651 | |||
652 | This driver is deprecated and will be dropped soon. Use i2c-gpio | ||
653 | (or scx200_acb) instead. | ||
654 | |||
655 | config SCx200_I2C_SCL | ||
656 | int "GPIO pin used for SCL" | ||
657 | depends on SCx200_I2C | ||
658 | default "12" | ||
659 | help | ||
660 | Enter the GPIO pin number used for the SCL signal. This value can | ||
661 | also be specified with a module parameter. | ||
662 | |||
663 | config SCx200_I2C_SDA | ||
664 | int "GPIO pin used for SDA" | ||
665 | depends on SCx200_I2C | ||
666 | default "13" | ||
667 | help | ||
668 | Enter the GPIO pin number used for the SSA signal. This value can | ||
669 | also be specified with a module parameter. | ||
670 | |||
671 | config SCx200_ACB | ||
672 | tristate "Geode ACCESS.bus support" | ||
673 | depends on X86_32 && PCI | ||
674 | help | ||
675 | Enable the use of the ACCESS.bus controllers on the Geode SCx200 and | ||
676 | SC1100 processors and the CS5535 and CS5536 Geode companion devices. | ||
677 | |||
678 | If you don't know what to do here, say N. | ||
679 | |||
680 | This support is also available as a module. If so, the module | ||
681 | will be called scx200_acb. | ||
667 | 682 | ||
668 | endmenu | 683 | endmenu |
diff --git a/drivers/i2c/busses/Makefile b/drivers/i2c/busses/Makefile index 81bb407d24cc..48a6a5bddc5e 100644 --- a/drivers/i2c/busses/Makefile +++ b/drivers/i2c/busses/Makefile | |||
@@ -2,55 +2,66 @@ | |||
2 | # Makefile for the i2c bus drivers. | 2 | # Makefile for the i2c bus drivers. |
3 | # | 3 | # |
4 | 4 | ||
5 | # PC SMBus host controller drivers | ||
5 | obj-$(CONFIG_I2C_ALI1535) += i2c-ali1535.o | 6 | obj-$(CONFIG_I2C_ALI1535) += i2c-ali1535.o |
6 | obj-$(CONFIG_I2C_ALI1563) += i2c-ali1563.o | 7 | obj-$(CONFIG_I2C_ALI1563) += i2c-ali1563.o |
7 | obj-$(CONFIG_I2C_ALI15X3) += i2c-ali15x3.o | 8 | obj-$(CONFIG_I2C_ALI15X3) += i2c-ali15x3.o |
8 | obj-$(CONFIG_I2C_AMD756) += i2c-amd756.o | 9 | obj-$(CONFIG_I2C_AMD756) += i2c-amd756.o |
9 | obj-$(CONFIG_I2C_AMD756_S4882) += i2c-amd756-s4882.o | 10 | obj-$(CONFIG_I2C_AMD756_S4882) += i2c-amd756-s4882.o |
10 | obj-$(CONFIG_I2C_AMD8111) += i2c-amd8111.o | 11 | obj-$(CONFIG_I2C_AMD8111) += i2c-amd8111.o |
12 | obj-$(CONFIG_I2C_I801) += i2c-i801.o | ||
13 | obj-$(CONFIG_I2C_NFORCE2) += i2c-nforce2.o | ||
14 | obj-$(CONFIG_I2C_NFORCE2_S4985) += i2c-nforce2-s4985.o | ||
15 | obj-$(CONFIG_I2C_PIIX4) += i2c-piix4.o | ||
16 | obj-$(CONFIG_I2C_SIS5595) += i2c-sis5595.o | ||
17 | obj-$(CONFIG_I2C_SIS630) += i2c-sis630.o | ||
18 | obj-$(CONFIG_I2C_SIS96X) += i2c-sis96x.o | ||
19 | obj-$(CONFIG_I2C_VIA) += i2c-via.o | ||
20 | obj-$(CONFIG_I2C_VIAPRO) += i2c-viapro.o | ||
21 | |||
22 | # Mac SMBus host controller drivers | ||
23 | obj-$(CONFIG_I2C_HYDRA) += i2c-hydra.o | ||
24 | obj-$(CONFIG_I2C_POWERMAC) += i2c-powermac.o | ||
25 | |||
26 | # Embebbed system I2C/SMBus host controller drivers | ||
11 | obj-$(CONFIG_I2C_AT91) += i2c-at91.o | 27 | obj-$(CONFIG_I2C_AT91) += i2c-at91.o |
12 | obj-$(CONFIG_I2C_AU1550) += i2c-au1550.o | 28 | obj-$(CONFIG_I2C_AU1550) += i2c-au1550.o |
13 | obj-$(CONFIG_I2C_BLACKFIN_TWI) += i2c-bfin-twi.o | 29 | obj-$(CONFIG_I2C_BLACKFIN_TWI) += i2c-bfin-twi.o |
14 | obj-$(CONFIG_I2C_DAVINCI) += i2c-davinci.o | 30 | obj-$(CONFIG_I2C_DAVINCI) += i2c-davinci.o |
15 | obj-$(CONFIG_I2C_ELEKTOR) += i2c-elektor.o | ||
16 | obj-$(CONFIG_I2C_GPIO) += i2c-gpio.o | 31 | obj-$(CONFIG_I2C_GPIO) += i2c-gpio.o |
17 | obj-$(CONFIG_I2C_HYDRA) += i2c-hydra.o | ||
18 | obj-$(CONFIG_I2C_I801) += i2c-i801.o | ||
19 | obj-$(CONFIG_I2C_IBM_IIC) += i2c-ibm_iic.o | 32 | obj-$(CONFIG_I2C_IBM_IIC) += i2c-ibm_iic.o |
20 | obj-$(CONFIG_I2C_IOP3XX) += i2c-iop3xx.o | 33 | obj-$(CONFIG_I2C_IOP3XX) += i2c-iop3xx.o |
21 | obj-$(CONFIG_I2C_IXP2000) += i2c-ixp2000.o | 34 | obj-$(CONFIG_I2C_IXP2000) += i2c-ixp2000.o |
22 | obj-$(CONFIG_I2C_POWERMAC) += i2c-powermac.o | ||
23 | obj-$(CONFIG_I2C_MPC) += i2c-mpc.o | 35 | obj-$(CONFIG_I2C_MPC) += i2c-mpc.o |
24 | obj-$(CONFIG_I2C_MV64XXX) += i2c-mv64xxx.o | 36 | obj-$(CONFIG_I2C_MV64XXX) += i2c-mv64xxx.o |
25 | obj-$(CONFIG_I2C_NFORCE2) += i2c-nforce2.o | ||
26 | obj-$(CONFIG_I2C_NFORCE2_S4985) += i2c-nforce2-s4985.o | ||
27 | obj-$(CONFIG_I2C_OCORES) += i2c-ocores.o | 37 | obj-$(CONFIG_I2C_OCORES) += i2c-ocores.o |
28 | obj-$(CONFIG_I2C_OMAP) += i2c-omap.o | 38 | obj-$(CONFIG_I2C_OMAP) += i2c-omap.o |
29 | obj-$(CONFIG_I2C_PARPORT) += i2c-parport.o | ||
30 | obj-$(CONFIG_I2C_PARPORT_LIGHT) += i2c-parport-light.o | ||
31 | obj-$(CONFIG_I2C_PASEMI) += i2c-pasemi.o | 39 | obj-$(CONFIG_I2C_PASEMI) += i2c-pasemi.o |
32 | obj-$(CONFIG_I2C_PCA_ISA) += i2c-pca-isa.o | ||
33 | obj-$(CONFIG_I2C_PCA_PLATFORM) += i2c-pca-platform.o | ||
34 | obj-$(CONFIG_I2C_PIIX4) += i2c-piix4.o | ||
35 | obj-$(CONFIG_I2C_PMCMSP) += i2c-pmcmsp.o | ||
36 | obj-$(CONFIG_I2C_PNX) += i2c-pnx.o | 40 | obj-$(CONFIG_I2C_PNX) += i2c-pnx.o |
37 | obj-$(CONFIG_I2C_PXA) += i2c-pxa.o | 41 | obj-$(CONFIG_I2C_PXA) += i2c-pxa.o |
38 | obj-$(CONFIG_I2C_S3C2410) += i2c-s3c2410.o | 42 | obj-$(CONFIG_I2C_S3C2410) += i2c-s3c2410.o |
39 | obj-$(CONFIG_I2C_SH7760) += i2c-sh7760.o | 43 | obj-$(CONFIG_I2C_SH7760) += i2c-sh7760.o |
40 | obj-$(CONFIG_I2C_SH_MOBILE) += i2c-sh_mobile.o | 44 | obj-$(CONFIG_I2C_SH_MOBILE) += i2c-sh_mobile.o |
41 | obj-$(CONFIG_I2C_SIBYTE) += i2c-sibyte.o | ||
42 | obj-$(CONFIG_I2C_SIMTEC) += i2c-simtec.o | 45 | obj-$(CONFIG_I2C_SIMTEC) += i2c-simtec.o |
43 | obj-$(CONFIG_I2C_SIS5595) += i2c-sis5595.o | 46 | obj-$(CONFIG_I2C_VERSATILE) += i2c-versatile.o |
44 | obj-$(CONFIG_I2C_SIS630) += i2c-sis630.o | 47 | |
45 | obj-$(CONFIG_I2C_SIS96X) += i2c-sis96x.o | 48 | # External I2C/SMBus adapter drivers |
46 | obj-$(CONFIG_I2C_STUB) += i2c-stub.o | 49 | obj-$(CONFIG_I2C_PARPORT) += i2c-parport.o |
50 | obj-$(CONFIG_I2C_PARPORT_LIGHT) += i2c-parport-light.o | ||
47 | obj-$(CONFIG_I2C_TAOS_EVM) += i2c-taos-evm.o | 51 | obj-$(CONFIG_I2C_TAOS_EVM) += i2c-taos-evm.o |
48 | obj-$(CONFIG_I2C_TINY_USB) += i2c-tiny-usb.o | 52 | obj-$(CONFIG_I2C_TINY_USB) += i2c-tiny-usb.o |
49 | obj-$(CONFIG_I2C_VERSATILE) += i2c-versatile.o | 53 | |
50 | obj-$(CONFIG_I2C_ACORN) += i2c-acorn.o | 54 | # Graphics adapter I2C/DDC channel drivers |
51 | obj-$(CONFIG_I2C_VIA) += i2c-via.o | ||
52 | obj-$(CONFIG_I2C_VIAPRO) += i2c-viapro.o | ||
53 | obj-$(CONFIG_I2C_VOODOO3) += i2c-voodoo3.o | 55 | obj-$(CONFIG_I2C_VOODOO3) += i2c-voodoo3.o |
56 | |||
57 | # Other I2C/SMBus bus drivers | ||
58 | obj-$(CONFIG_I2C_ACORN) += i2c-acorn.o | ||
59 | obj-$(CONFIG_I2C_ELEKTOR) += i2c-elektor.o | ||
60 | obj-$(CONFIG_I2C_PCA_ISA) += i2c-pca-isa.o | ||
61 | obj-$(CONFIG_I2C_PCA_PLATFORM) += i2c-pca-platform.o | ||
62 | obj-$(CONFIG_I2C_PMCMSP) += i2c-pmcmsp.o | ||
63 | obj-$(CONFIG_I2C_SIBYTE) += i2c-sibyte.o | ||
64 | obj-$(CONFIG_I2C_STUB) += i2c-stub.o | ||
54 | obj-$(CONFIG_SCx200_ACB) += scx200_acb.o | 65 | obj-$(CONFIG_SCx200_ACB) += scx200_acb.o |
55 | obj-$(CONFIG_SCx200_I2C) += scx200_i2c.o | 66 | obj-$(CONFIG_SCx200_I2C) += scx200_i2c.o |
56 | 67 | ||