Commit | Line | Data |
---|---|---|
1da177e4 | 1 | # |
be53f9b2 | 2 | # I2C subsystem configuration |
1da177e4 LT |
3 | # |
4 | ||
16538e6b | 5 | menuconfig I2C |
1da177e4 | 6 | tristate "I2C support" |
194684e5 | 7 | select RT_MUTEXES |
1da177e4 | 8 | ---help--- |
622e040d | 9 | I2C (pronounce: I-squared-C) is a slow serial bus protocol used in |
1da177e4 LT |
10 | many micro controller applications and developed by Philips. SMBus, |
11 | or System Management Bus is a subset of the I2C protocol. More | |
12 | information is contained in the directory <file:Documentation/i2c/>, | |
13 | especially in the file called "summary" there. | |
14 | ||
15 | Both I2C and SMBus are supported here. You will need this for | |
16 | hardware sensors support, and also for Video For Linux support. | |
17 | ||
18 | If you want I2C support, you should say Y here and also to the | |
19 | specific driver for your bus adapter(s) below. | |
20 | ||
21 | This I2C support can also be built as a module. If so, the module | |
22 | will be called i2c-core. | |
23 | ||
16538e6b JE |
24 | if I2C |
25 | ||
9c1600ed DB |
26 | config I2C_BOARDINFO |
27 | boolean | |
9c1600ed DB |
28 | default y |
29 | ||
2bb5095a JD |
30 | config I2C_COMPAT |
31 | boolean "Enable compatibility bits for old user-space" | |
32 | default y | |
33 | help | |
34 | Say Y here if you intend to run lm-sensors 3.1.1 or older, or any | |
35 | other user-space package which expects i2c adapters to be class | |
36 | devices. If you don't know, say Y. | |
37 | ||
1da177e4 LT |
38 | config I2C_CHARDEV |
39 | tristate "I2C device interface" | |
1da177e4 LT |
40 | help |
41 | Say Y here to use i2c-* device files, usually found in the /dev | |
42 | directory on your system. They make it possible to have user-space | |
43 | programs use the I2C bus. Information on how to do this is | |
44 | contained in the file <file:Documentation/i2c/dev-interface>. | |
45 | ||
46 | This support is also available as a module. If so, the module | |
47 | will be called i2c-dev. | |
48 | ||
0826374b ML |
49 | config I2C_MUX |
50 | tristate "I2C bus multiplexing support" | |
3ddb59d4 | 51 | depends on HAS_IOMEM |
0826374b ML |
52 | help |
53 | Say Y here if you want the I2C core to support the ability to | |
54 | handle multiplexed I2C bus topologies, by presenting each | |
55 | multiplexed segment as a I2C adapter. | |
56 | ||
57 | This support is also available as a module. If so, the module | |
58 | will be called i2c-mux. | |
59 | ||
7f528135 ML |
60 | source drivers/i2c/muxes/Kconfig |
61 | ||
8d24f8dc JD |
62 | config I2C_HELPER_AUTO |
63 | bool "Autoselect pertinent helper modules" | |
64 | default y | |
65 | help | |
66 | Some I2C bus drivers require so-called "I2C algorithm" modules | |
67 | to work. These are basically software-only abstractions of generic | |
68 | I2C interfaces. This option will autoselect them so that you don't | |
69 | have to care. | |
70 | ||
71 | Unselect this only if you need to enable additional helper | |
72 | modules, for example for use with external I2C bus drivers. | |
73 | ||
74 | In doubt, say Y. | |
75 | ||
e2ca3074 | 76 | config I2C_SMBUS |
dfc518dd | 77 | tristate "SMBus-specific protocols" if !I2C_HELPER_AUTO |
aaaf9cf7 | 78 | depends on GENERIC_HARDIRQS |
e2ca3074 JD |
79 | help |
80 | Say Y here if you want support for SMBus extensions to the I2C | |
81 | specification. At the moment, the only supported extension is | |
82 | the SMBus alert protocol. | |
83 | ||
84 | This support is also available as a module. If so, the module | |
85 | will be called i2c-smbus. | |
86 | ||
1da177e4 LT |
87 | source drivers/i2c/algos/Kconfig |
88 | source drivers/i2c/busses/Kconfig | |
1da177e4 | 89 | |
3ddb59d4 PH |
90 | config I2C_STUB |
91 | tristate "I2C/SMBus Test Stub" | |
417e86ce | 92 | depends on m |
3ddb59d4 PH |
93 | default 'n' |
94 | help | |
95 | This module may be useful to developers of SMBus client drivers, | |
96 | especially for certain kinds of sensor chips. | |
97 | ||
98 | If you do build this module, be sure to read the notes and warnings | |
99 | in <file:Documentation/i2c/i2c-stub>. | |
100 | ||
101 | If you don't know what to do here, definitely say N. | |
102 | ||
1da177e4 LT |
103 | config I2C_DEBUG_CORE |
104 | bool "I2C Core debugging messages" | |
1da177e4 LT |
105 | help |
106 | Say Y here if you want the I2C core to produce a bunch of debug | |
107 | messages to the system log. Select this if you are having a | |
108 | problem with I2C support and want to see more of what is going on. | |
109 | ||
110 | config I2C_DEBUG_ALGO | |
111 | bool "I2C Algorithm debugging messages" | |
1da177e4 LT |
112 | help |
113 | Say Y here if you want the I2C algorithm drivers to produce a bunch | |
114 | of debug messages to the system log. Select this if you are having | |
115 | a problem with I2C support and want to see more of what is going | |
116 | on. | |
117 | ||
118 | config I2C_DEBUG_BUS | |
119 | bool "I2C Bus debugging messages" | |
3ddb59d4 | 120 | depends on HAS_IOMEM |
1da177e4 LT |
121 | help |
122 | Say Y here if you want the I2C bus drivers to produce a bunch of | |
123 | debug messages to the system log. Select this if you are having | |
124 | a problem with I2C support and want to see more of what is going | |
125 | on. | |
126 | ||
16538e6b | 127 | endif # I2C |