IO expander hardware components

Revision as of 11:11, 10 November 2021 by Registered User (Merge articles)

1. Article purpose[edit source]

The purpose of this article is to:

  • list the I/O 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/I/Os
| ST MFX (Multi-Function eXpander)
| 
| Linux IOs pins overview
| 
| I/O expander
|-
| Core/I/Os
| MCP23017
| 
| Linux IOs pins overview
| 
| I/O expander
|-
|}

3. ST MFX (Multi-Function eXpander)[edit source]

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

For details, refer to UM2535, 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 I/O expander provider.


4.1. Linux driver[edit source]

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

Sources: