blob: 10b3d17ae3ea0c4c0fe2287be11820ec5c9fd945 [file] [log] [blame]
Michael Lawnick7f528132010-08-11 18:21:03 +02001#
2# Multiplexer I2C chip drivers configuration
3#
4
5menu "Multiplexer I2C Chip support"
6 depends on I2C_MUX
7
Doug Andersonb81dfaa2013-04-16 06:29:00 +00008config I2C_ARB_GPIO_CHALLENGE
9 tristate "GPIO-based I2C arbitration"
Geert Uytterhoeven7e5cd692015-05-05 18:32:22 +020010 depends on GPIOLIB || COMPILE_TEST
11 depends on OF
Doug Andersonb81dfaa2013-04-16 06:29:00 +000012 help
13 If you say yes to this option, support will be included for an
14 I2C multimaster arbitration scheme using GPIOs and a challenge &
15 response mechanism where masters have to claim the bus by asserting
16 a GPIO.
17
18 This driver can also be built as a module. If so, the module
19 will be called i2c-arb-gpio-challenge.
20
Peter Korsgaard92ed1a72011-01-10 22:11:23 +010021config I2C_MUX_GPIO
22 tristate "GPIO-based I2C multiplexer"
Alexandre Courbot76ec9d12013-03-28 04:34:56 -070023 depends on GPIOLIB
Peter Korsgaard92ed1a72011-01-10 22:11:23 +010024 help
25 If you say yes to this option, support will be included for a
26 GPIO based I2C multiplexer. This driver provides access to
27 I2C busses connected through a MUX, which is controlled
28 through GPIO pins.
29
30 This driver can also be built as a module. If so, the module
Jean Delvaree7065e22012-04-28 15:32:06 +020031 will be called i2c-mux-gpio.
Peter Korsgaard92ed1a72011-01-10 22:11:23 +010032
Guenter Roeckae63b132010-10-24 18:16:58 +020033config I2C_MUX_PCA9541
34 tristate "NXP PCA9541 I2C Master Selector"
Guenter Roeckae63b132010-10-24 18:16:58 +020035 help
36 If you say yes here you get support for the NXP PCA9541
37 I2C Master Selector.
38
39 This driver can also be built as a module. If so, the module
Wolfram Sangb4f0b742012-04-25 22:29:43 +020040 will be called i2c-mux-pca9541.
Guenter Roeckae63b132010-10-24 18:16:58 +020041
Michael Lawnick7f528132010-08-11 18:21:03 +020042config I2C_MUX_PCA954x
43 tristate "Philips PCA954x I2C Mux/switches"
Geert Uytterhoeven7e5cd692015-05-05 18:32:22 +020044 depends on GPIOLIB || COMPILE_TEST
Michael Lawnick7f528132010-08-11 18:21:03 +020045 help
46 If you say yes here you get support for the Philips PCA954x
47 I2C mux/switch devices.
48
49 This driver can also be built as a module. If so, the module
Wolfram Sangb4f0b742012-04-25 22:29:43 +020050 will be called i2c-mux-pca954x.
Michael Lawnick7f528132010-08-11 18:21:03 +020051
Stephen Warrenae58d1e2012-05-18 09:29:34 -060052config I2C_MUX_PINCTRL
53 tristate "pinctrl-based I2C multiplexer"
54 depends on PINCTRL
55 help
56 If you say yes to this option, support will be included for an I2C
57 multiplexer that uses the pinctrl subsystem, i.e. pin multiplexing.
58 This is useful for SoCs whose I2C module's signals can be routed to
59 different sets of pins at run-time.
60
61 This driver can also be built as a module. If so, the module will be
62 called pinctrl-i2cmux.
63
York Sunb3fdd322015-08-17 11:53:48 -070064config I2C_MUX_REG
65 tristate "Register-based I2C multiplexer"
Linus Walleij93d710a2016-11-14 15:34:17 +010066 depends on HAS_IOMEM
York Sunb3fdd322015-08-17 11:53:48 -070067 help
68 If you say yes to this option, support will be included for a
69 register based I2C multiplexer. This driver provides access to
70 I2C busses connected through a MUX, which is controlled
71 by a single register.
72
73 This driver can also be built as a module. If so, the module
74 will be called i2c-mux-reg.
75
Wolfram Sang50a5ba82016-01-13 15:29:27 +010076config I2C_DEMUX_PINCTRL
77 tristate "pinctrl-based I2C demultiplexer"
78 depends on PINCTRL && OF
79 select OF_DYNAMIC
80 help
81 If you say yes to this option, support will be included for an I2C
82 demultiplexer that uses the pinctrl subsystem. This is useful if you
83 want to change the I2C master at run-time depending on features.
84
Vadim Pasternakc02b7bf2016-11-10 21:26:23 +000085config I2C_MUX_MLXCPLD
86 tristate "Mellanox CPLD based I2C multiplexer"
87 help
88 If you say yes to this option, support will be included for a
89 CPLD based I2C multiplexer. This driver provides access to
90 I2C busses connected through a MUX, which is controlled
91 by a CPLD register.
92
93 This driver can also be built as a module. If so, the module
94 will be called i2c-mux-mlxcpld.
95
Michael Lawnick7f528132010-08-11 18:21:03 +020096endmenu