xref: /openbmc/linux/drivers/i2c/Kconfig (revision 2bb5095a)
11da177e4SLinus Torvalds#
2be53f9b2SArthur Othieno# I2C subsystem configuration
31da177e4SLinus Torvalds#
41da177e4SLinus Torvalds
516538e6bSJan Engelhardtmenuconfig I2C
61da177e4SLinus Torvalds	tristate "I2C support"
7e25df120SMartin Schwidefsky	depends on HAS_IOMEM
81da177e4SLinus Torvalds	---help---
91da177e4SLinus Torvalds	  I2C (pronounce: I-square-C) is a slow serial bus protocol used in
101da177e4SLinus Torvalds	  many micro controller applications and developed by Philips.  SMBus,
111da177e4SLinus Torvalds	  or System Management Bus is a subset of the I2C protocol.  More
121da177e4SLinus Torvalds	  information is contained in the directory <file:Documentation/i2c/>,
131da177e4SLinus Torvalds	  especially in the file called "summary" there.
141da177e4SLinus Torvalds
151da177e4SLinus Torvalds	  Both I2C and SMBus are supported here. You will need this for
161da177e4SLinus Torvalds	  hardware sensors support, and also for Video For Linux support.
171da177e4SLinus Torvalds
181da177e4SLinus Torvalds	  If you want I2C support, you should say Y here and also to the
191da177e4SLinus Torvalds	  specific driver for your bus adapter(s) below.
201da177e4SLinus Torvalds
211da177e4SLinus Torvalds	  This I2C support can also be built as a module.  If so, the module
221da177e4SLinus Torvalds	  will be called i2c-core.
231da177e4SLinus Torvalds
2416538e6bSJan Engelhardtif I2C
2516538e6bSJan Engelhardt
269c1600edSDavid Brownellconfig I2C_BOARDINFO
279c1600edSDavid Brownell	boolean
289c1600edSDavid Brownell	default y
299c1600edSDavid Brownell
302bb5095aSJean Delvareconfig I2C_COMPAT
312bb5095aSJean Delvare	boolean "Enable compatibility bits for old user-space"
322bb5095aSJean Delvare	default y
332bb5095aSJean Delvare	help
342bb5095aSJean Delvare	  Say Y here if you intend to run lm-sensors 3.1.1 or older, or any
352bb5095aSJean Delvare	  other user-space package which expects i2c adapters to be class
362bb5095aSJean Delvare	  devices. If you don't know, say Y.
372bb5095aSJean Delvare
381da177e4SLinus Torvaldsconfig I2C_CHARDEV
391da177e4SLinus Torvalds	tristate "I2C device interface"
401da177e4SLinus Torvalds	help
411da177e4SLinus Torvalds	  Say Y here to use i2c-* device files, usually found in the /dev
421da177e4SLinus Torvalds	  directory on your system.  They make it possible to have user-space
431da177e4SLinus Torvalds	  programs use the I2C bus.  Information on how to do this is
441da177e4SLinus Torvalds	  contained in the file <file:Documentation/i2c/dev-interface>.
451da177e4SLinus Torvalds
461da177e4SLinus Torvalds	  This support is also available as a module.  If so, the module
471da177e4SLinus Torvalds	  will be called i2c-dev.
481da177e4SLinus Torvalds
498d24f8dcSJean Delvareconfig I2C_HELPER_AUTO
508d24f8dcSJean Delvare	bool "Autoselect pertinent helper modules"
518d24f8dcSJean Delvare	default y
528d24f8dcSJean Delvare	help
538d24f8dcSJean Delvare	  Some I2C bus drivers require so-called "I2C algorithm" modules
548d24f8dcSJean Delvare	  to work. These are basically software-only abstractions of generic
558d24f8dcSJean Delvare	  I2C interfaces. This option will autoselect them so that you don't
568d24f8dcSJean Delvare	  have to care.
578d24f8dcSJean Delvare
588d24f8dcSJean Delvare	  Unselect this only if you need to enable additional helper
598d24f8dcSJean Delvare	  modules, for example for use with external I2C bus drivers.
608d24f8dcSJean Delvare
618d24f8dcSJean Delvare	  In doubt, say Y.
628d24f8dcSJean Delvare
631da177e4SLinus Torvaldssource drivers/i2c/algos/Kconfig
641da177e4SLinus Torvaldssource drivers/i2c/busses/Kconfig
651da177e4SLinus Torvaldssource drivers/i2c/chips/Kconfig
661da177e4SLinus Torvalds
671da177e4SLinus Torvaldsconfig I2C_DEBUG_CORE
681da177e4SLinus Torvalds	bool "I2C Core debugging messages"
691da177e4SLinus Torvalds	help
701da177e4SLinus Torvalds	  Say Y here if you want the I2C core to produce a bunch of debug
711da177e4SLinus Torvalds	  messages to the system log.  Select this if you are having a
721da177e4SLinus Torvalds	  problem with I2C support and want to see more of what is going on.
731da177e4SLinus Torvalds
741da177e4SLinus Torvaldsconfig I2C_DEBUG_ALGO
751da177e4SLinus Torvalds	bool "I2C Algorithm debugging messages"
761da177e4SLinus Torvalds	help
771da177e4SLinus Torvalds	  Say Y here if you want the I2C algorithm drivers to produce a bunch
781da177e4SLinus Torvalds	  of debug messages to the system log.  Select this if you are having
791da177e4SLinus Torvalds	  a problem with I2C support and want to see more of what is going
801da177e4SLinus Torvalds	  on.
811da177e4SLinus Torvalds
821da177e4SLinus Torvaldsconfig I2C_DEBUG_BUS
831da177e4SLinus Torvalds	bool "I2C Bus debugging messages"
841da177e4SLinus Torvalds	help
851da177e4SLinus Torvalds	  Say Y here if you want the I2C bus drivers to produce a bunch of
861da177e4SLinus Torvalds	  debug messages to the system log.  Select this if you are having
871da177e4SLinus Torvalds	  a problem with I2C support and want to see more of what is going
881da177e4SLinus Torvalds	  on.
891da177e4SLinus Torvalds
901da177e4SLinus Torvaldsconfig I2C_DEBUG_CHIP
911da177e4SLinus Torvalds	bool "I2C Chip debugging messages"
921da177e4SLinus Torvalds	help
931da177e4SLinus Torvalds	  Say Y here if you want the I2C chip drivers to produce a bunch of
941da177e4SLinus Torvalds	  debug messages to the system log.  Select this if you are having
951da177e4SLinus Torvalds	  a problem with I2C support and want to see more of what is going
961da177e4SLinus Torvalds	  on.
971da177e4SLinus Torvalds
9816538e6bSJan Engelhardtendif # I2C
99