gpio command
Synopsis
gpio <input|set|clear|toggle> <pin>
gpio read <name> <pin>
gpio status [-a] [<bank>|<pin>]
The gpio command is used to access General Purpose Inputs/Outputs.
gpio input
Switch the GPIO pin to input mode.
gpio set
Switch the GPIO pin to output mode and set the signal to 1.
gpio clear
Switch the GPIO pin to output mode and set the signal to 0.
gpio toggle
Switch the GPIO pin to output mode and reverse the signal state.
gpio read
Read the signal state of the GPIO pin and save it in environment variable name.
gpio status
Display the status of one or multiple GPIOs. By default only claimed GPIOs are displayed. gpio status command output fields are:
<name>: <function>: <value> [x] <label>
function can take the following values:
- output
pin configured in gpio output, value indicates the pin’s level
- input
pin configured in gpio input, value indicates the pin’s level
- func
pin configured in alternate function, followed by label which shows pinmuxing label.
- unused
pin not configured
[x] or [ ] indicate respectively if the gpio is used or not.
label shows the gpio label.
Parameters
- -a
Display GPIOs irrespective of being claimed.
- bank
Name of a bank of GPIOs to be displayed.
- pin
Name of a single GPIO to be displayed or manipulated.
Examples
Switch the status of a GPIO:
=> gpio set a5
gpio: pin a5 (gpio 133) value is 1
=> gpio clear a5
gpio: pin a5 (gpio 133) value is 0
=> gpio toggle a5
gpio: pin a5 (gpio 133) value is 1
=> gpio read myvar a5
gpio: pin a5 (gpio 133) value is 1
=> echo $myvar
1
=> gpio toggle a5
gpio: pin a5 (gpio 133) value is 0
=> gpio read myvar a5
gpio: pin a5 (gpio 133) value is 0
=> echo $myvar
0
Show the GPIO status:
=> gpio status
Bank GPIOA:
GPIOA1: func rgmii-0
GPIOA2: func rgmii-0
GPIOA7: func rgmii-0
GPIOA10: output: 0 [x] hdmi-transmitter@39.reset-gpios
GPIOA13: output: 1 [x] red.gpios
Bank GPIOB:
GPIOB0: func rgmii-0
GPIOB1: func rgmii-0
GPIOB2: func uart4-0
GPIOB7: input: 0 [x] mmc@58005000.cd-gpios
GPIOB11: func rgmii-0
Configuration
The gpio command is only available if CONFIG_CMD_GPIO=y. The gpio read command is only available if CONFIG_CMD_GPIO_READ=y.
Return value
If the command succeds the return value $? is set to 0. If an error occurs, the return value $? is set to 1.