Linux Driver for PCF857X



The Linux driver supports the TCA9554 Remote 8-Bit I2C and SMBus I/O Expander. The Linux driver supports communication through the I2C bus and interfaces with the GPIO sub-systems.


Linux Mainline Status

Available in Linux Main line: Yes
Available through git.ti.com: N/A

Supported Devices:

  • tca9554


Linux Source Files

The files associated with this device are:

  1. drivers/gpio/gpio-pcf857x.c
  2. Documentation/devicetree/bindings/gpio/gpio-pcf857x.txt

Source Files


Linux Device Tree Documenation



Enabling Driver Support

Configure kernel with "make menuconfig" (alternatively use "make xconfig" or"make nconfig")

Menuconfig Location

Symbol: GPIO_PCF857X [=y]Type  : tristatePrompt: PCF857x, PCA{85,96}7x, and MAX732[89] I2C GPIO expanders  Location:    -> Device Drivers      -> GPIO Support (GPIOLIB [=y])        -> I2C GPIO expanders  Defined at drivers/gpio/Kconfig:647  Depends on: GPIOLIB [=y] && I2C [=y]  Selects: GPIOLIB_IRQCHIP [=y] && IRQ_DOMAIN [=y]  Selected by: MACH_DAVINCI_DA830_EVM [=y] && ARCH_DAVINCI [=y] && ARCH_DAVINCI_DA830 [=y]

Fixes and Code Enhancements


If there are fixes and or code enhancements that need to be added to thisdriver please either1. Send the patches to the relevant Linux Kernel community as listed in the maintainers file located: Hereor2.  Contact your TI representative.


I2C general-purpose I/Os (GPIOs)
TCA9554 8-bit 1.65- to 5.5-V I2C/SMBus I/O expander with interrupt, weak pull-up & config registers

Support & training

TI E2E™ forums with technical support from TI engineers

View all forum topics

Content is provided "as is" by TI and community contributors and does not constitute TI specifications. See terms of use.

If you have questions about quality, packaging or ordering TI products, see TI support. ​​​​​​​​