Introduction

This page gives the information about the GPIO drivers in u-boot.

U-boot Configuration

To enable GPIO in u-boot, the following configurations need to be enabled
CONFIG_DM_GPIO=y
CONFIG_ZYNQ_GPIO=y
CONFIG_CMD_GPIO=y
 

Test Procedure

Command Line:
It’s a simple way to access the GPIO from the command line.
Following commands need to run on the u-boot console:
Gpio status –a
Gpio input <gpio_num>
Gpio set <gpio_num>
Gpio clear <gpio_num>
Gpio toggle <gpio_num>

ZynqMP

  • 78 GPIO signals for device pins
    • Routed through the MIO multiplexer.
    • Outputs are 3-state capable.
  • 288 GPIO signals between the PS and PL through the EMIO interface
    • 96 inputs.
    • 192 outputs (96 true outputs and 96 output enables).
  • The function of each GPIO can be dynamically programmed on an individual or group basis.
  • Enable, bit or bank data write, output enable and direction controls.
  • Programmable interrupts on individual GPIO basis
    • Status read of raw and masked interrupt.
    • Selectable sensitivity: Level-sensitive (High or Low) or edge-sensitive (positive,negative, or both).

Zynq

  • 54 GPIO signals for device pins
    • Routed through the MIO multiplexer.
    • Outputs are 3-state capable.
  • 192 GPIO signals between the PS and PL via the EMIO interface
    • 64 Inputs
    • 128 Outputs(64 true outputs and 64 output enables).
  • The function of each GPIO can be dynamically programmed on an individual or group basis.
  • Enable, bit or bank data write, output enable and direction controls.
  • Programmable interrupts on individual GPIO basis
    • Status read of raw and masked interrupt.
    • Selectable sensitivity: Level-sensitive (High or Low) or edge-sensitive (positive,negative, or both).