Linux Audio

Check our new training course

Loading...
v5.9
  1# SPDX-License-Identifier: GPL-2.0-only
  2#
  3# Multiplexer I2C chip drivers configuration
  4#
  5
  6menu "Multiplexer I2C Chip support"
  7	depends on I2C_MUX
  8
  9config I2C_ARB_GPIO_CHALLENGE
 10	tristate "GPIO-based I2C arbitration"
 11	depends on GPIOLIB || COMPILE_TEST
 12	depends on OF || COMPILE_TEST
 13	help
 14	  If you say yes to this option, support will be included for an
 15	  I2C multimaster arbitration scheme using GPIOs and a challenge &
 16	  response mechanism where masters have to claim the bus by asserting
 17	  a GPIO.
 18
 19	  This driver can also be built as a module.  If so, the module
 20	  will be called i2c-arb-gpio-challenge.
 21
 22config I2C_MUX_GPIO
 23	tristate "GPIO-based I2C multiplexer"
 24	depends on GPIOLIB
 25	help
 26	  If you say yes to this option, support will be included for a
 27	  GPIO based I2C multiplexer. This driver provides access to
 28	  I2C busses connected through a MUX, which is controlled
 29	  through GPIO pins.
 30
 31	  This driver can also be built as a module.  If so, the module
 32	  will be called i2c-mux-gpio.
 33
 34config I2C_MUX_GPMUX
 35	tristate "General Purpose I2C multiplexer"
 36	select MULTIPLEXER
 37	depends on OF || COMPILE_TEST
 38	help
 39	  If you say yes to this option, support will be included for a
 40	  general purpose I2C multiplexer. This driver provides access to
 41	  I2C busses connected through a MUX, which in turn is controlled
 42	  by a MUX-controller from the MUX subsystem.
 43
 44	  This driver can also be built as a module.  If so, the module
 45	  will be called i2c-mux-gpmux.
 46
 47config I2C_MUX_LTC4306
 48	tristate "LTC LTC4306/5 I2C multiplexer"
 49	select GPIOLIB
 50	select REGMAP_I2C
 51	help
 52	  If you say yes here you get support for the Analog Devices
 53	  LTC4306 or LTC4305 I2C mux/switch devices.
 54
 55	  This driver can also be built as a module.  If so, the module
 56	  will be called i2c-mux-ltc4306.
 57
 58config I2C_MUX_PCA9541
 59	tristate "NXP PCA9541 I2C Master Selector"
 60	help
 61	  If you say yes here you get support for the NXP PCA9541
 62	  I2C Master Selector.
 63
 64	  This driver can also be built as a module.  If so, the module
 65	  will be called i2c-mux-pca9541.
 66
 67config I2C_MUX_PCA954x
 68	tristate "NXP PCA954x and PCA984x I2C Mux/switches"
 69	depends on GPIOLIB || COMPILE_TEST
 70	help
 71	  If you say yes here you get support for the NXP PCA954x
 72	  and PCA984x I2C mux/switch devices.
 73
 74	  This driver can also be built as a module.  If so, the module
 75	  will be called i2c-mux-pca954x.
 76
 77config I2C_MUX_PINCTRL
 78	tristate "pinctrl-based I2C multiplexer"
 79	depends on PINCTRL
 80	depends on OF || COMPILE_TEST
 81	help
 82	  If you say yes to this option, support will be included for an I2C
 83	  multiplexer that uses the pinctrl subsystem, i.e. pin multiplexing.
 84	  This is useful for SoCs whose I2C module's signals can be routed to
 85	  different sets of pins at run-time.
 86
 87	  This driver can also be built as a module. If so, the module will be
 88	  called i2c-mux-pinctrl.
 89
 90config I2C_MUX_REG
 91	tristate "Register-based I2C multiplexer"
 92	depends on HAS_IOMEM
 93	help
 94	  If you say yes to this option, support will be included for a
 95	  register based I2C multiplexer. This driver provides access to
 96	  I2C busses connected through a MUX, which is controlled
 97	  by a single register.
 98
 99	  This driver can also be built as a module.  If so, the module
100	  will be called i2c-mux-reg.
101
102config I2C_DEMUX_PINCTRL
103	tristate "pinctrl-based I2C demultiplexer"
104	depends on PINCTRL && OF
105	select OF_DYNAMIC
106	help
107	  If you say yes to this option, support will be included for an I2C
108	  demultiplexer that uses the pinctrl subsystem. This is useful if you
109	  want to change the I2C master at run-time depending on features.
110
111config I2C_MUX_MLXCPLD
112	tristate "Mellanox CPLD based I2C multiplexer"
113	help
114	  If you say yes to this option, support will be included for a
115	  CPLD based I2C multiplexer. This driver provides access to
116	  I2C busses connected through a MUX, which is controlled
117	  by a CPLD register.
118
119	  This driver can also be built as a module.  If so, the module
120	  will be called i2c-mux-mlxcpld.
121
122endmenu
v6.8
  1# SPDX-License-Identifier: GPL-2.0-only
  2#
  3# Multiplexer I2C chip drivers configuration
  4#
  5
  6menu "Multiplexer I2C Chip support"
  7	depends on I2C_MUX
  8
  9config I2C_ARB_GPIO_CHALLENGE
 10	tristate "GPIO-based I2C arbitration"
 11	depends on GPIOLIB || COMPILE_TEST
 12	depends on OF
 13	help
 14	  If you say yes to this option, support will be included for an
 15	  I2C multimaster arbitration scheme using GPIOs and a challenge &
 16	  response mechanism where masters have to claim the bus by asserting
 17	  a GPIO.
 18
 19	  This driver can also be built as a module.  If so, the module
 20	  will be called i2c-arb-gpio-challenge.
 21
 22config I2C_MUX_GPIO
 23	tristate "GPIO-based I2C multiplexer"
 24	depends on GPIOLIB
 25	help
 26	  If you say yes to this option, support will be included for a
 27	  GPIO based I2C multiplexer. This driver provides access to
 28	  I2C busses connected through a MUX, which is controlled
 29	  through GPIO pins.
 30
 31	  This driver can also be built as a module.  If so, the module
 32	  will be called i2c-mux-gpio.
 33
 34config I2C_MUX_GPMUX
 35	tristate "General Purpose I2C multiplexer"
 36	select MULTIPLEXER
 37	depends on OF
 38	help
 39	  If you say yes to this option, support will be included for a
 40	  general purpose I2C multiplexer. This driver provides access to
 41	  I2C busses connected through a MUX, which in turn is controlled
 42	  by a MUX-controller from the MUX subsystem.
 43
 44	  This driver can also be built as a module.  If so, the module
 45	  will be called i2c-mux-gpmux.
 46
 47config I2C_MUX_LTC4306
 48	tristate "LTC LTC4306/5 I2C multiplexer"
 49	select GPIOLIB
 50	select REGMAP_I2C
 51	help
 52	  If you say yes here you get support for the Analog Devices
 53	  LTC4306 or LTC4305 I2C mux/switch devices.
 54
 55	  This driver can also be built as a module.  If so, the module
 56	  will be called i2c-mux-ltc4306.
 57
 58config I2C_MUX_PCA9541
 59	tristate "NXP PCA9541 I2C Master Selector"
 60	help
 61	  If you say yes here you get support for the NXP PCA9541
 62	  I2C Master Selector.
 63
 64	  This driver can also be built as a module.  If so, the module
 65	  will be called i2c-mux-pca9541.
 66
 67config I2C_MUX_PCA954x
 68	tristate "NXP PCA954x/PCA984x and Maxim MAX735x/MAX736x I2C Mux/switches"
 69	depends on GPIOLIB || COMPILE_TEST
 70	help
 71	  If you say yes here you get support for NXP PCA954x/PCA984x
 72	  and Maxim MAX735x/MAX736x I2C mux/switch devices.
 73
 74	  This driver can also be built as a module.  If so, the module
 75	  will be called i2c-mux-pca954x.
 76
 77config I2C_MUX_PINCTRL
 78	tristate "pinctrl-based I2C multiplexer"
 79	depends on PINCTRL
 80	depends on OF
 81	help
 82	  If you say yes to this option, support will be included for an I2C
 83	  multiplexer that uses the pinctrl subsystem, i.e. pin multiplexing.
 84	  This is useful for SoCs whose I2C module's signals can be routed to
 85	  different sets of pins at run-time.
 86
 87	  This driver can also be built as a module. If so, the module will be
 88	  called i2c-mux-pinctrl.
 89
 90config I2C_MUX_REG
 91	tristate "Register-based I2C multiplexer"
 92	depends on HAS_IOMEM
 93	help
 94	  If you say yes to this option, support will be included for a
 95	  register based I2C multiplexer. This driver provides access to
 96	  I2C busses connected through a MUX, which is controlled
 97	  by a single register.
 98
 99	  This driver can also be built as a module.  If so, the module
100	  will be called i2c-mux-reg.
101
102config I2C_DEMUX_PINCTRL
103	tristate "pinctrl-based I2C demultiplexer"
104	depends on PINCTRL && OF
105	select OF_DYNAMIC
106	help
107	  If you say yes to this option, support will be included for an I2C
108	  demultiplexer that uses the pinctrl subsystem. This is useful if you
109	  want to change the I2C master at run-time depending on features.
110
111config I2C_MUX_MLXCPLD
112	tristate "Mellanox CPLD based I2C multiplexer"
113	help
114	  If you say yes to this option, support will be included for a
115	  CPLD based I2C multiplexer. This driver provides access to
116	  I2C busses connected through a MUX, which is controlled
117	  by a CPLD register.
118
119	  This driver can also be built as a module.  If so, the module
120	  will be called i2c-mux-mlxcpld.
121
122endmenu