![David Brownell](/assets/img/avatar_default.png)
This provides partial support for new-style I2C driver binding. It builds on "struct i2c_board_info" declarations that identify I2C devices on a given board. This is needed on systems with I2C devices that can't be fully probed and/or autoconfigured, such as many embedded Linux configurations where the way a given I2C device is wired may affect how it must be used. There are two models for declaring such devices: * LATE -- using a public function i2c_new_device(). This lets modules declare I2C devices found *AFTER* a given I2C adapter becomes available. For example, a PCI card could create adapters giving access to utility chips on that card, and this would be used to associate those chips with those adapters. * EARLY -- from arch_initcall() level code, using a non-exported function i2c_register_board_info(). This copies the declarations *BEFORE* such an i2c_adapter becomes available, arranging that i2c_new_device() will be called later when i2c-core registers the relevant i2c_adapter. For example, arch/.../.../board-*.c files would declare the I2C devices along with their platform data, and I2C devices would behave much like PNPACPI devices. (That is, both enumerate from board-specific tables.) To match the exported i2c_new_device(), the previously-private function i2c_unregister_device() is now exported. Pending later patches using these new APIs, this is effectively a NOP. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Jean Delvare <khali@linux-fr.org>
82 lines
2.5 KiB
Text
82 lines
2.5 KiB
Text
#
|
|
# I2C subsystem configuration
|
|
#
|
|
|
|
menu "I2C support"
|
|
|
|
config I2C
|
|
tristate "I2C support"
|
|
---help---
|
|
I2C (pronounce: I-square-C) is a slow serial bus protocol used in
|
|
many micro controller applications and developed by Philips. SMBus,
|
|
or System Management Bus is a subset of the I2C protocol. More
|
|
information is contained in the directory <file:Documentation/i2c/>,
|
|
especially in the file called "summary" there.
|
|
|
|
Both I2C and SMBus are supported here. You will need this for
|
|
hardware sensors support, and also for Video For Linux support.
|
|
|
|
If you want I2C support, you should say Y here and also to the
|
|
specific driver for your bus adapter(s) below.
|
|
|
|
This I2C support can also be built as a module. If so, the module
|
|
will be called i2c-core.
|
|
|
|
config I2C_BOARDINFO
|
|
boolean
|
|
depends on I2C
|
|
default y
|
|
|
|
config I2C_CHARDEV
|
|
tristate "I2C device interface"
|
|
depends on I2C
|
|
help
|
|
Say Y here to use i2c-* device files, usually found in the /dev
|
|
directory on your system. They make it possible to have user-space
|
|
programs use the I2C bus. Information on how to do this is
|
|
contained in the file <file:Documentation/i2c/dev-interface>.
|
|
|
|
This support is also available as a module. If so, the module
|
|
will be called i2c-dev.
|
|
|
|
source drivers/i2c/algos/Kconfig
|
|
source drivers/i2c/busses/Kconfig
|
|
source drivers/i2c/chips/Kconfig
|
|
|
|
config I2C_DEBUG_CORE
|
|
bool "I2C Core debugging messages"
|
|
depends on I2C
|
|
help
|
|
Say Y here if you want the I2C core to produce a bunch of debug
|
|
messages to the system log. Select this if you are having a
|
|
problem with I2C support and want to see more of what is going on.
|
|
|
|
config I2C_DEBUG_ALGO
|
|
bool "I2C Algorithm debugging messages"
|
|
depends on I2C
|
|
help
|
|
Say Y here if you want the I2C algorithm drivers to produce a bunch
|
|
of debug messages to the system log. Select this if you are having
|
|
a problem with I2C support and want to see more of what is going
|
|
on.
|
|
|
|
config I2C_DEBUG_BUS
|
|
bool "I2C Bus debugging messages"
|
|
depends on I2C
|
|
help
|
|
Say Y here if you want the I2C bus drivers to produce a bunch of
|
|
debug messages to the system log. Select this if you are having
|
|
a problem with I2C support and want to see more of what is going
|
|
on.
|
|
|
|
config I2C_DEBUG_CHIP
|
|
bool "I2C Chip debugging messages"
|
|
depends on I2C
|
|
help
|
|
Say Y here if you want the I2C chip drivers to produce a bunch of
|
|
debug messages to the system log. Select this if you are having
|
|
a problem with I2C support and want to see more of what is going
|
|
on.
|
|
|
|
endmenu
|
|
|