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