IO expander hardware components

Revision as of 17:44, 17 September 2021 by Registered User

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]

Internal peripherals software table template

| 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: