12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 |
- #
- # GPIO infrastructure and expanders
- #
- config HAVE_GPIO_LIB
- bool
- help
- Platforms select gpiolib if they use this infrastructure
- for all their GPIOs, usually starting with ones integrated
- into SOC processors.
- menu "GPIO Support"
- depends on HAVE_GPIO_LIB
- config DEBUG_GPIO
- bool "Debug GPIO calls"
- depends on DEBUG_KERNEL
- help
- Say Y here to add some extra checks and diagnostics to GPIO calls.
- The checks help ensure that GPIOs have been properly initialized
- before they are used and that sleeping calls aren not made from
- nonsleeping contexts. They can make bitbanged serial protocols
- slower. The diagnostics help catch the type of setup errors
- that are most common when setting up new platforms or boards.
- # put expanders in the right section, in alphabetical order
- comment "I2C GPIO expanders:"
- config GPIO_PCA953X
- tristate "PCA953x, PCA955x, and MAX7310 I/O ports"
- depends on I2C
- help
- Say yes here to provide access to several register-oriented
- SMBus I/O expanders, made mostly by NXP or TI. Compatible
- models include:
- 4 bits: pca9536, pca9537
- 8 bits: max7310, pca9534, pca9538, pca9554, pca9557
- 16 bits: pca9535, pca9539, pca9555
- This driver can also be built as a module. If so, the module
- will be called pca953x.
- config GPIO_PCF857X
- tristate "PCF857x, PCA857x, and PCA967x I2C GPIO expanders"
- depends on I2C
- help
- Say yes here to provide access to most "quasi-bidirectional" I2C
- GPIO expanders used for additional digital outputs or inputs.
- Most of these parts are from NXP, though TI is a second source for
- some of them. Compatible models include:
- 8 bits: pcf8574, pcf8574a, pca8574, pca8574a,
- pca9670, pca9672, pca9674, pca9674a
- 16 bits: pcf8575, pcf8575c, pca8575,
- pca9671, pca9673, pca9675
- Your board setup code will need to declare the expanders in
- use, and assign numbers to the GPIOs they expose. Those GPIOs
- can then be used from drivers and other kernel code, just like
- other GPIOs, but only accessible from task contexts.
- This driver provides an in-kernel interface to those GPIOs using
- platform-neutral GPIO calls.
- comment "SPI GPIO expanders:"
- config GPIO_MCP23S08
- tristate "Microchip MCP23S08 I/O expander"
- depends on SPI_MASTER
- help
- SPI driver for Microchip MCP23S08 I/O expander. This provides
- a GPIO interface supporting inputs and outputs.
- endmenu
|