Last edited one year ago

IO expander hardware components

1 Article purpose[edit source]

The purpose of this article is to:

  • list the IO expanders hardware components that might be integrated in the different STM32MPU boards
  • link these components to the corresponding software framework(s)
  • point to the datasheet(s) of these components
  • explain, when necessary, how to configure these components.

2 Software frameworks[edit source]

Domain Peripheral Software components Comment
OP-TEE Linux STM32Cube
Core/IOs ST Multi Function eXpander Linux IOs pins overview IO expander
Core/IOs MCP23017 Linux IOs pins overview IO expander

3 ST Multi-Function eXpander[edit source]

The ST MFX is an STM32L152 slave controller whose firmware embeds IO expander feature with 16 GPIOs + 8 extra if other features (resistive touchscreen controller and IDD measurement) are not enabled.

For details, refer to https://www.st.com/resource/en/user_manual/um2535-evaluation-boards-with-stm32mp157-mpus-stmicroelectronics.pdf chapter MFX IO expander.

3.1 Linux driver[edit source]

Bindings: Documentation/devicetree/bindings/mfd/st,stmfx.yaml

Sources:

4 MCP23017[edit source]

The MCP23017 is a 16-bit input/output port expander with interrupt output.

For details and the datasheet please contact the MCP23017 codec provider.


4.1 Linux driver[edit source]

Bindings: Documentation/devicetree/bindings/pinctrl/pinctrl-mcp23s08.txt

Sources: