]> git.karo-electronics.de Git - karo-tx-linux.git/blob - drivers/i2c/muxes/Kconfig
Merge branches 'pm-domains', 'pm-avs' and 'powercap'
[karo-tx-linux.git] / drivers / i2c / muxes / Kconfig
1 #
2 # Multiplexer I2C chip drivers configuration
3 #
4
5 menu "Multiplexer I2C Chip support"
6         depends on I2C_MUX
7
8 config I2C_ARB_GPIO_CHALLENGE
9         tristate "GPIO-based I2C arbitration"
10         depends on GPIOLIB || COMPILE_TEST
11         depends on OF
12         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
21 config I2C_MUX_GPIO
22         tristate "GPIO-based I2C multiplexer"
23         depends on GPIOLIB
24         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
31           will be called i2c-mux-gpio.
32
33 config I2C_MUX_LTC4306
34         tristate "LTC LTC4306/5 I2C multiplexer"
35         select GPIOLIB
36         select REGMAP_I2C
37         help
38           If you say yes here you get support for the Analog Devices
39           LTC4306 or LTC4305 I2C mux/switch devices.
40
41           This driver can also be built as a module.  If so, the module
42           will be called i2c-mux-ltc4306.
43
44 config I2C_MUX_PCA9541
45         tristate "NXP PCA9541 I2C Master Selector"
46         help
47           If you say yes here you get support for the NXP PCA9541
48           I2C Master Selector.
49
50           This driver can also be built as a module.  If so, the module
51           will be called i2c-mux-pca9541.
52
53 config I2C_MUX_PCA954x
54         tristate "Philips PCA954x I2C Mux/switches"
55         depends on GPIOLIB || COMPILE_TEST
56         help
57           If you say yes here you get support for the Philips PCA954x
58           I2C mux/switch devices.
59
60           This driver can also be built as a module.  If so, the module
61           will be called i2c-mux-pca954x.
62
63 config I2C_MUX_PINCTRL
64         tristate "pinctrl-based I2C multiplexer"
65         depends on PINCTRL
66         help
67           If you say yes to this option, support will be included for an I2C
68           multiplexer that uses the pinctrl subsystem, i.e. pin multiplexing.
69           This is useful for SoCs whose I2C module's signals can be routed to
70           different sets of pins at run-time.
71
72           This driver can also be built as a module. If so, the module will be
73           called pinctrl-i2cmux.
74
75 config I2C_MUX_REG
76         tristate "Register-based I2C multiplexer"
77         depends on HAS_IOMEM
78         help
79           If you say yes to this option, support will be included for a
80           register based I2C multiplexer. This driver provides access to
81           I2C busses connected through a MUX, which is controlled
82           by a single register.
83
84           This driver can also be built as a module.  If so, the module
85           will be called i2c-mux-reg.
86
87 config I2C_DEMUX_PINCTRL
88         tristate "pinctrl-based I2C demultiplexer"
89         depends on PINCTRL && OF
90         select OF_DYNAMIC
91         help
92           If you say yes to this option, support will be included for an I2C
93           demultiplexer that uses the pinctrl subsystem. This is useful if you
94           want to change the I2C master at run-time depending on features.
95
96 config I2C_MUX_MLXCPLD
97         tristate "Mellanox CPLD based I2C multiplexer"
98         help
99           If you say yes to this option, support will be included for a
100           CPLD based I2C multiplexer. This driver provides access to
101           I2C busses connected through a MUX, which is controlled
102           by a CPLD register.
103
104           This driver can also be built as a module.  If so, the module
105           will be called i2c-mux-mlxcpld.
106
107 endmenu