Kconfig 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. #
  2. # Multiplexer I2C chip drivers configuration
  3. #
  4. menu "Multiplexer I2C Chip support"
  5. depends on I2C_MUX
  6. config I2C_ARB_GPIO_CHALLENGE
  7. tristate "GPIO-based I2C arbitration"
  8. depends on GPIOLIB || COMPILE_TEST
  9. depends on OF || COMPILE_TEST
  10. help
  11. If you say yes to this option, support will be included for an
  12. I2C multimaster arbitration scheme using GPIOs and a challenge &
  13. response mechanism where masters have to claim the bus by asserting
  14. a GPIO.
  15. This driver can also be built as a module. If so, the module
  16. will be called i2c-arb-gpio-challenge.
  17. config I2C_MUX_GPIO
  18. tristate "GPIO-based I2C multiplexer"
  19. depends on GPIOLIB
  20. help
  21. If you say yes to this option, support will be included for a
  22. GPIO based I2C multiplexer. This driver provides access to
  23. I2C busses connected through a MUX, which is controlled
  24. through GPIO pins.
  25. This driver can also be built as a module. If so, the module
  26. will be called i2c-mux-gpio.
  27. config I2C_MUX_GPMUX
  28. tristate "General Purpose I2C multiplexer"
  29. select MULTIPLEXER
  30. depends on OF || COMPILE_TEST
  31. help
  32. If you say yes to this option, support will be included for a
  33. general purpose I2C multiplexer. This driver provides access to
  34. I2C busses connected through a MUX, which in turn is controlled
  35. by a MUX-controller from the MUX subsystem.
  36. This driver can also be built as a module. If so, the module
  37. will be called i2c-mux-gpmux.
  38. config I2C_MUX_LTC4306
  39. tristate "LTC LTC4306/5 I2C multiplexer"
  40. select GPIOLIB
  41. select REGMAP_I2C
  42. help
  43. If you say yes here you get support for the Analog Devices
  44. LTC4306 or LTC4305 I2C mux/switch devices.
  45. This driver can also be built as a module. If so, the module
  46. will be called i2c-mux-ltc4306.
  47. config I2C_MUX_PCA9541
  48. tristate "NXP PCA9541 I2C Master Selector"
  49. help
  50. If you say yes here you get support for the NXP PCA9541
  51. I2C Master Selector.
  52. This driver can also be built as a module. If so, the module
  53. will be called i2c-mux-pca9541.
  54. config I2C_MUX_PCA954x
  55. tristate "Philips PCA954x I2C Mux/switches"
  56. depends on GPIOLIB || COMPILE_TEST
  57. help
  58. If you say yes here you get support for the Philips PCA954x
  59. I2C mux/switch devices.
  60. This driver can also be built as a module. If so, the module
  61. will be called i2c-mux-pca954x.
  62. config I2C_MUX_PINCTRL
  63. tristate "pinctrl-based I2C multiplexer"
  64. depends on PINCTRL
  65. depends on OF || COMPILE_TEST
  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. This driver can also be built as a module. If so, the module will be
  72. called i2c-mux-pinctrl.
  73. config I2C_MUX_REG
  74. tristate "Register-based I2C multiplexer"
  75. depends on HAS_IOMEM
  76. help
  77. If you say yes to this option, support will be included for a
  78. register based I2C multiplexer. This driver provides access to
  79. I2C busses connected through a MUX, which is controlled
  80. by a single register.
  81. This driver can also be built as a module. If so, the module
  82. will be called i2c-mux-reg.
  83. config I2C_DEMUX_PINCTRL
  84. tristate "pinctrl-based I2C demultiplexer"
  85. depends on PINCTRL && OF
  86. select OF_DYNAMIC
  87. help
  88. If you say yes to this option, support will be included for an I2C
  89. demultiplexer that uses the pinctrl subsystem. This is useful if you
  90. want to change the I2C master at run-time depending on features.
  91. config I2C_MUX_MLXCPLD
  92. tristate "Mellanox CPLD based I2C multiplexer"
  93. help
  94. If you say yes to this option, support will be included for a
  95. CPLD based I2C multiplexer. This driver provides access to
  96. I2C busses connected through a MUX, which is controlled
  97. by a CPLD register.
  98. This driver can also be built as a module. If so, the module
  99. will be called i2c-mux-mlxcpld.
  100. endmenu