The IOMUX manages the configuration of the digital IO. Key functions configured by IOMUX include:
- Selection of which peripheral is multiplexed to each digital IO pin (for example, a GPIO or UART peripheral)
- Digital input path configuration
- Hysteresis control
- Input path enable/disable
- Input logic inversion control
- Digital output path configuration
- Drive strength control
- Output connection enable/disable
- Output logic inversion (control shared with input logic inversion)
- Logic-high to High-Z output conversion (for open-drain style interfaces)
- Retention of "last state" when a peripheral connected to an IO is disabled
- Wakeup configuration (for wakeup from SHUTDOWN mode)
- Read wake up source from the wake stat bit from the PINCM Register
- Wake up compare level
- Release SHDNIOREL
- Wakeup enable/disable
- Pullup and pulldown resistor control