Kconfig 3.4 KB
Newer Older
1 2 3 4 5 6 7
#
# Multiplexer I2C chip drivers configuration
#

menu "Multiplexer I2C Chip support"
	depends on I2C_MUX

8 9
config I2C_ARB_GPIO_CHALLENGE
	tristate "GPIO-based I2C arbitration"
10 11
	depends on GPIOLIB || COMPILE_TEST
	depends on OF
12 13 14 15 16 17 18 19 20
	help
	  If you say yes to this option, support will be included for an
	  I2C multimaster arbitration scheme using GPIOs and a challenge &
	  response mechanism where masters have to claim the bus by asserting
	  a GPIO.

	  This driver can also be built as a module.  If so, the module
	  will be called i2c-arb-gpio-challenge.

21 22
config I2C_MUX_GPIO
	tristate "GPIO-based I2C multiplexer"
23
	depends on GPIOLIB
24 25 26 27 28 29 30
	help
	  If you say yes to this option, support will be included for a
	  GPIO based I2C multiplexer. This driver provides access to
	  I2C busses connected through a MUX, which is controlled
	  through GPIO pins.

	  This driver can also be built as a module.  If so, the module
31
	  will be called i2c-mux-gpio.
32

33 34 35 36 37 38 39 40 41 42 43
config I2C_MUX_LTC4306
	tristate "LTC LTC4306/5 I2C multiplexer"
	select GPIOLIB
	select REGMAP_I2C
	help
	  If you say yes here you get support for the Analog Devices
	  LTC4306 or LTC4305 I2C mux/switch devices.

	  This driver can also be built as a module.  If so, the module
	  will be called i2c-mux-ltc4306.

44 45 46 47 48 49 50
config I2C_MUX_PCA9541
	tristate "NXP PCA9541 I2C Master Selector"
	help
	  If you say yes here you get support for the NXP PCA9541
	  I2C Master Selector.

	  This driver can also be built as a module.  If so, the module
51
	  will be called i2c-mux-pca9541.
52

53 54
config I2C_MUX_PCA954x
	tristate "Philips PCA954x I2C Mux/switches"
55
	depends on GPIOLIB || COMPILE_TEST
56 57 58 59 60
	help
	  If you say yes here you get support for the Philips PCA954x
	  I2C mux/switch devices.

	  This driver can also be built as a module.  If so, the module
61
	  will be called i2c-mux-pca954x.
62

63 64 65 66 67 68 69 70 71 72 73 74
config I2C_MUX_PINCTRL
	tristate "pinctrl-based I2C multiplexer"
	depends on PINCTRL
	help
	  If you say yes to this option, support will be included for an I2C
	  multiplexer that uses the pinctrl subsystem, i.e. pin multiplexing.
	  This is useful for SoCs whose I2C module's signals can be routed to
	  different sets of pins at run-time.

	  This driver can also be built as a module. If so, the module will be
	  called pinctrl-i2cmux.

75 76
config I2C_MUX_REG
	tristate "Register-based I2C multiplexer"
L
Linus Walleij 已提交
77
	depends on HAS_IOMEM
78 79 80 81 82 83 84 85 86
	help
	  If you say yes to this option, support will be included for a
	  register based I2C multiplexer. This driver provides access to
	  I2C busses connected through a MUX, which is controlled
	  by a single register.

	  This driver can also be built as a module.  If so, the module
	  will be called i2c-mux-reg.

87 88 89 90 91 92 93 94 95
config I2C_DEMUX_PINCTRL
	tristate "pinctrl-based I2C demultiplexer"
	depends on PINCTRL && OF
	select OF_DYNAMIC
	help
	  If you say yes to this option, support will be included for an I2C
	  demultiplexer that uses the pinctrl subsystem. This is useful if you
	  want to change the I2C master at run-time depending on features.

V
Vadim Pasternak 已提交
96 97 98 99 100 101 102 103 104 105 106
config I2C_MUX_MLXCPLD
        tristate "Mellanox CPLD based I2C multiplexer"
        help
          If you say yes to this option, support will be included for a
          CPLD based I2C multiplexer. This driver provides access to
          I2C busses connected through a MUX, which is controlled
          by a CPLD register.

          This driver can also be built as a module.  If so, the module
          will be called i2c-mux-mlxcpld.

107
endmenu