GPIO customization on Jetson Platform (original) (raw)

December 14, 2020, 1:12pm 1

This is the example for users to find the relationship between GPIO PINs and GPIO num.
The followed information captured from Jetson NX.

From Pinmux to find the right ball name and customer usage.
eg: GPIO00

GPIO00 87 USB_VBUS_EN0 GPIO3_PZ.01 USB_VBUS_EN0 wake61 100k 0 GPIO3_PZ.01 Bidirectional Int PU Yes Disable Disable GPIO0 (USB_VBUS_EN0) Baseboard USB VBUS Detect

From devicetree:

gpios = <&tegra_main_gpio TEGRA194_MAIN_GPIO(Z, 1) GPIO_ACTIVE_LOW>;

GPIO07 in PINMUX:

GPIO07 206 SOC_GPIO44 GPIO3_PR.00 VGP5 GP_PWM8 100k pd GPIO3_PR.00 Input Int PD Disable Disable GPIO07 (PWM) Baseboard 40 Pin GPIO

From devicetree:

gpios = <&tegra_main_gpio TEGRA194_MAIN_GPIO(R, 0) GPIO_ACTIVE_LOW>;

$ grep PORT_R  ../../hardware/nvidia/soc/t19x/kernel-include/dt-bindings/gpio/tegra194-gpio.h 
#define TEGRA194_MAIN_GPIO_PORT_R 17
$ grep PORT_Z  ../../hardware/nvidia/soc/t19x/kernel-include/dt-bindings/gpio/tegra194-gpio.h 
#define TEGRA194_MAIN_GPIO_PORT_Z 25

Get the GPIO number from its port offset.

GPIO3_PR.00: (17 x 8 + 0) = 136
GPIO3_PZ.01: (25 x 8 + 1) = 201

GPIO Chip offset:

nx@nx-desktop:~$ dmesg | grep GPIOs
[    0.754758] gpiochip_setup_dev: registered GPIOs 288 to 511 on device: gpiochip0 (tegra-gpio)
[    0.761503] gpiochip_setup_dev: registered GPIOs 248 to 287 on device: gpiochip1 (tegra-gpio-aon)
[    0.896879] gpiochip_setup_dev: registered GPIOs 240 to 247 on device: gpiochip2 (max77620-gpio)

GPIOchip0 offset from 288.

GPIO07 number in software == 136 + 288 = 424
GPIO00 number in software == 201 + 288 = 489

You can check with debug/gpio.

nx@nx-desktop:~$ sudo cat /sys/kernel/debug/gpio
[sudo] password for nx: 
gpiochip2: GPIOs 240-247, parent: platform/max77620-gpio, max77620-gpio, can sleep:
 gpio-246 (                    |gpio_default        ) out hi    
 gpio-247 (                    |gpio_default        ) out hi    

gpiochip1: GPIOs 248-287, parent: platform/c2f0000.gpio, tegra-gpio-aon:
 gpio-248 (                    )
 gpio-249 (                    )
 gpio-250 (                    )
 gpio-251 (                    )
 gpio-252 (                    )
 gpio-253 (                    |pex-refclk-sel-low  ) out lo    
 gpio-254 (                    )
 gpio-255 (                    )
 gpio-256 (                    )
 gpio-257 (                    )
 gpio-258 (                    )
 gpio-259 (                    )
 gpio-260 (                    )
 gpio-261 (                    )
 gpio-262 (                    )
 gpio-263 (                    )
 gpio-264 (                    |w-disable2          ) out lo    
 gpio-265 (                    )
 gpio-266 (                    |w-disable1          ) out lo    
 gpio-267 (                    |i2c-mux-gpio        ) out hi    
 gpio-268 (GPIO12              )
 gpio-284 (                    |power-key           ) in  hi    
gpiochip0: GPIOs 288-511, parent: platform/2200000.gpio, tegra-gpio:
 gpio-288 (                    )
 gpio-289 (                    )
 gpio-290 (                    )
 gpio-291 (                    )
 gpio-292 (                    )
 gpio-293 (                    )
 gpio-294 (                    )
 gpio-295 (                    )
 gpio-296 (                    )
 gpio-297 (                    )
 gpio-298 (                    )
 gpio-299 (                    )
 gpio-300 (                    )
 gpio-301 (                    )
 gpio-302 (                    )
 gpio-303 (                    )
 gpio-304 (                    )
 gpio-305 (                    )
 gpio-306 (                    )
 gpio-307 (                    )
 gpio-308 (                    )
 gpio-309 (                    )
 gpio-310 (                    )
 gpio-311 (                    )
 gpio-312 (                    )
 gpio-313 (                    )
 gpio-314 (                    )
 gpio-315 (                    )
 gpio-316 (                    )
 gpio-317 (                    )
 gpio-318 (                    )
 gpio-319 (                    )
 gpio-320 (                    )
 gpio-321 (                    )
 gpio-322 (                    )
 gpio-323 (                    )
 gpio-324 (                    )
 gpio-325 (                    )
 gpio-326 (                    )
 gpio-327 (                    )
 gpio-328 (                    )
 gpio-329 (                    )
 gpio-330 (                    )
 gpio-331 (                    )
 gpio-332 (                    )
 gpio-333 (                    )
 gpio-334 (                    )
 gpio-335 (                    )
 gpio-336 (                    |force-recovery      ) in  hi    
 gpio-337 (                    )
 gpio-338 (                    |vdd-sdmmc1-sw       ) out hi    
 gpio-339 (                    |wifi-enable         ) out hi    
 gpio-340 (                    )
 gpio-341 (                    )
 gpio-342 (                    )
 gpio-343 (                    |cd                  ) in  lo    
 gpio-344 (                    )
 gpio-345 (                    )
 gpio-346 (                    )
 gpio-347 (                    )
 gpio-348 (                    )
 gpio-349 (                    )
 gpio-350 (                    )
 gpio-351 (                    )
 gpio-352 (                    )
 gpio-353 (                    )
 gpio-354 (                    )
 gpio-355 (                    )
 gpio-356 (                    )
 gpio-357 (                    )
 gpio-358 (                    )
 gpio-359 (                    )
 gpio-360 (                    )
 gpio-361 (                    )
 gpio-362 (                    )
 gpio-363 (                    )
 gpio-364 (                    )
 gpio-365 (                    )
 gpio-366 (                    )
 gpio-367 (                    )
 gpio-368 (                    )
 gpio-369 (                    )
 gpio-370 (                    )
 gpio-371 (                    )
 gpio-372 (                    )
 gpio-373 (                    )
 gpio-374 (                    )
 gpio-375 (                    )
 gpio-376 (                    )
 gpio-377 (                    )
 gpio-378 (                    |pcie_wake           ) in  hi    
 gpio-379 (                    )
 gpio-380 (                    )
 gpio-381 (                    )
 gpio-382 (                    )
 gpio-383 (                    )
 gpio-384 (                    )
 gpio-385 (                    |hdmi2.0_hpd         ) in  lo    
 gpio-386 (                    )
 gpio-387 (                    )
 gpio-388 (                    )
 gpio-389 (                    )
 gpio-390 (                    )
 gpio-391 (                    )
 gpio-392 (                    |avdd-cam-2v8        ) out lo    
 gpio-393 (GPIO13              )
 gpio-394 (                    )
 gpio-395 (                    )
 gpio-396 (                    )
 gpio-397 (                    )
 gpio-398 (                    )
 gpio-399 (                    )
 gpio-400 (                    )
 gpio-401 (                    )
 gpio-402 (                    )
 gpio-403 (                    )
 gpio-404 (                    )
 gpio-405 (                    )
 gpio-406 (                    )
 gpio-407 (                    )
 gpio-408 (                    )
 gpio-409 (                    )
 gpio-410 (                    )
 gpio-411 (                    )
 gpio-412 (                    |cam_reset_gpio      ) out lo    
 gpio-413 (                    |cam_reset_gpio      ) out lo    
 gpio-414 (                    )
 gpio-415 (                    )
 gpio-416 (                    )
 gpio-417 (                    )
 gpio-418 (                    )
 gpio-419 (                    )
 gpio-420 (                    )
 gpio-421 (GPIO01              )
 gpio-422 (GPIO11              )
 gpio-423 (                    )
 gpio-424 (GPIO07              )
 gpio-425 (                    |eqos_phy_reset      ) out hi    
 gpio-426 (                    )
 gpio-427 (                    )
 gpio-428 (UART1_RTS           )
 gpio-429 (UART1_CTS           )
 gpio-430 (                    )
 gpio-431 (                    )
 gpio-432 (                    )
 gpio-433 (                    )
 gpio-434 (                    )
 gpio-435 (                    )
 gpio-436 (GPIO09              )
 gpio-437 (                    )
 gpio-438 (                    )
 gpio-439 (                    )
 gpio-440 (                    )
 gpio-441 (                    )
 gpio-442 (                    )
 gpio-443 (                    )
 gpio-444 (                    )
 gpio-445 (I2S0_SCLK           )
 gpio-446 (I2S0_DOUT           )
 gpio-447 (I2S0_DIN            )
 gpio-448 (I2S0_FS             )
 gpio-449 (                    )
 gpio-450 (                    )
 gpio-451 (                    )
 gpio-452 (                    )
 gpio-453 (                    )
 gpio-454 (                    )
 gpio-455 (                    )
 gpio-456 (                    )
 gpio-457 (                    )
 gpio-458 (                    )
 gpio-459 (                    )
 gpio-460 (                    )
 gpio-461 (                    )
 gpio-462 (                    )
 gpio-463 (                    )
 gpio-464 (                    )
 gpio-465 (                    )
 gpio-466 (                    )
 gpio-467 (                    )
 gpio-468 (                    )
 gpio-469 (                    )
 gpio-470 (                    )
 gpio-471 (                    )
 gpio-472 (                    )
 gpio-473 (                    )
 gpio-474 (                    )
 gpio-475 (                    )
 gpio-476 (                    )
 gpio-477 (                    )
 gpio-478 (                    )
 gpio-479 (                    )
 gpio-480 (SPI1_SCK            )
 gpio-481 (SPI1_MISO           )
 gpio-482 (SPI1_MOSI           )
 gpio-483 (SPI1_CS0            )
 gpio-484 (SPI1_CS1            )
 gpio-485 (                    )
 gpio-486 (                    )
 gpio-487 (                    )
 gpio-488 (                    )
 gpio-489 (                    |external-connection:) in  hi     GPIO00 PZ01
 gpio-490 (                    )					PZ02
 gpio-491 (SPI0_SCK            )					PZ03
 gpio-492 (SPI0_MISO           )
 gpio-493 (SPI0_MOSI           )
 gpio-494 (SPI0_CS0            )
 gpio-495 (SPI0_CS1            )
 gpio-496 (                    )
 gpio-497 (                    )
 gpio-498 (                    )
 gpio-499 (                    )
 gpio-500 (                    )
 gpio-501 (                    )
 gpio-502 (                    )
 gpio-503 (                    )
 gpio-504 (                    )
 gpio-505 (                    )
 gpio-506 (                    )
 gpio-507 (                    )
 gpio-508 (                    )
 gpio-509 (                    )
 gpio-510 (                    )
 gpio-511 (                    )

You can also check with the tegra_gpio to see configuration.

nx@nx-desktop:~$ sudo cat /sys/kernel/debug/tegra_gpio
Port:Pin:ENB DBC IN OUT_CTRL OUT_VAL INT_CLR
A:0 0x0 0x0 0x0 0x1 0x0 0x0
A:1 0x0 0x0 0x0 0x1 0x0 0x0
A:2 0x0 0x0 0x0 0x1 0x0 0x0
A:3 0x0 0x0 0x0 0x1 0x0 0x0
A:4 0x0 0x0 0x0 0x1 0x0 0x0
A:5 0x0 0x0 0x0 0x1 0x0 0x0
A:6 0x0 0x0 0x0 0x1 0x0 0x0
A:7 0x0 0x0 0x0 0x1 0x0 0x0
B:0 0x3 0x0 0x0 0x0 0x1 0x0
B:1 0x0 0x0 0x0 0x1 0x0 0x0
C:0 0x0 0x0 0x0 0x1 0x0 0x0
C:1 0x0 0x0 0x0 0x1 0x0 0x0
C:2 0x0 0x0 0x0 0x1 0x0 0x0
C:3 0x0 0x0 0x0 0x1 0x0 0x0
C:4 0x0 0x0 0x0 0x1 0x0 0x0
C:5 0x0 0x0 0x0 0x1 0x0 0x0
C:6 0x0 0x0 0x0 0x1 0x0 0x0
C:7 0x0 0x0 0x0 0x1 0x0 0x0
D:0 0x0 0x0 0x0 0x1 0x0 0x0
D:1 0x0 0x0 0x0 0x1 0x0 0x0
D:2 0x0 0x0 0x0 0x1 0x0 0x0
D:3 0x0 0x0 0x0 0x1 0x0 0x0
E:0 0x0 0x0 0x0 0x1 0x0 0x0
E:1 0x0 0x0 0x0 0x1 0x0 0x0
E:2 0x0 0x0 0x0 0x1 0x0 0x0
E:3 0x0 0x0 0x0 0x1 0x0 0x0
E:4 0x0 0x0 0x0 0x1 0x0 0x0
E:5 0x0 0x0 0x0 0x1 0x0 0x0
E:6 0x0 0x0 0x0 0x1 0x0 0x0
E:7 0x0 0x0 0x0 0x1 0x0 0x0
F:0 0x0 0x0 0x0 0x1 0x0 0x0
F:1 0x0 0x0 0x0 0x1 0x0 0x0
F:2 0x0 0x0 0x0 0x1 0x0 0x0
F:3 0x0 0x0 0x0 0x1 0x0 0x0
F:4 0x0 0x0 0x0 0x1 0x0 0x0
F:5 0x0 0x0 0x0 0x1 0x0 0x0
G:0 0x6d 0x5 0x1 0x1 0x0 0x0
G:1 0x0 0x0 0x0 0x1 0x0 0x0
G:2 0x3 0x0 0x0 0x0 0x1 0x0
G:3 0x3 0x0 0x0 0x0 0x1 0x0
G:4 0x45 0x0 0x1 0x1 0x0 0x0
G:5 0x0 0x0 0x0 0x1 0x0 0x0
G:6 0x0 0x0 0x0 0x1 0x0 0x0
G:7 0x4d 0x0 0x0 0x0 0x0 0x0
H:0 0x0 0x0 0x0 0x1 0x0 0x0
H:1 0x0 0x0 0x0 0x1 0x0 0x0
H:2 0x0 0x0 0x0 0x1 0x0 0x0
H:3 0x1 0x0 0x0 0x1 0x0 0x0
H:4 0x0 0x0 0x0 0x1 0x0 0x0
H:5 0x1 0x0 0x1 0x1 0x0 0x0
H:6 0x0 0x0 0x0 0x1 0x0 0x0
H:7 0x0 0x0 0x0 0x1 0x0 0x0
I:0 0x0 0x0 0x0 0x1 0x0 0x0
I:1 0x0 0x0 0x0 0x1 0x0 0x0
I:2 0x0 0x0 0x0 0x1 0x0 0x0
I:3 0x0 0x0 0x0 0x1 0x0 0x0
I:4 0x0 0x0 0x0 0x1 0x0 0x0
J:0 0x0 0x0 0x0 0x1 0x0 0x0
J:1 0x0 0x0 0x0 0x1 0x0 0x0
J:2 0x0 0x0 0x0 0x1 0x0 0x0
J:3 0x0 0x0 0x0 0x1 0x0 0x0
J:4 0x0 0x0 0x0 0x1 0x0 0x0
J:5 0x0 0x0 0x0 0x1 0x0 0x0
K:0 0x0 0x0 0x0 0x1 0x0 0x0
K:1 0x0 0x0 0x0 0x1 0x0 0x0
K:2 0x0 0x0 0x0 0x1 0x0 0x0
K:3 0x0 0x0 0x0 0x1 0x0 0x0
K:4 0x0 0x0 0x0 0x1 0x0 0x0
K:5 0x0 0x0 0x0 0x1 0x0 0x0
K:6 0x0 0x0 0x0 0x1 0x0 0x0
K:7 0x0 0x0 0x0 0x1 0x0 0x0
L:0 0x0 0x0 0x0 0x1 0x0 0x0
L:1 0x0 0x0 0x0 0x1 0x0 0x0
L:2 0x1 0x0 0x1 0x1 0x0 0x0
L:3 0x0 0x0 0x0 0x1 0x0 0x0
M:0 0x0 0x0 0x0 0x1 0x0 0x0
M:1 0x4d 0x0 0x0 0x0 0x0 0x0
M:2 0x0 0x0 0x0 0x1 0x0 0x0
M:3 0x0 0x0 0x0 0x1 0x0 0x0
M:4 0x0 0x0 0x0 0x1 0x0 0x0
M:5 0x0 0x0 0x0 0x1 0x0 0x0
M:6 0x0 0x0 0x0 0x1 0x0 0x0
M:7 0x0 0x0 0x0 0x1 0x0 0x0
N:0 0x3 0x0 0x0 0x0 0x0 0x0
N:1 0x1 0x0 0x0 0x1 0x0 0x0
N:2 0x0 0x0 0x0 0x1 0x0 0x0
O:0 0x0 0x0 0x0 0x1 0x0 0x0
O:1 0x0 0x0 0x0 0x1 0x0 0x0
O:2 0x0 0x0 0x0 0x1 0x0 0x0
O:3 0x0 0x0 0x0 0x1 0x0 0x0
O:4 0x0 0x0 0x0 0x1 0x0 0x0
O:5 0x0 0x0 0x0 0x1 0x0 0x0
P:0 0x0 0x0 0x0 0x1 0x0 0x0
P:1 0x0 0x0 0x0 0x1 0x0 0x0
P:2 0x0 0x0 0x0 0x1 0x0 0x0
P:3 0x0 0x0 0x0 0x1 0x0 0x0
P:4 0x3 0x0 0x0 0x0 0x0 0x0
P:5 0x3 0x0 0x0 0x0 0x0 0x0
P:6 0x0 0x0 0x0 0x1 0x0 0x0
P:7 0x0 0x0 0x0 0x1 0x0 0x0
Q:0 0x0 0x0 0x0 0x1 0x0 0x0
Q:1 0x1 0x0 0x1 0x1 0x0 0x0
Q:2 0x0 0x0 0x0 0x1 0x0 0x0
Q:3 0x1 0x0 0x1 0x1 0x0 0x0
Q:4 0x0 0x0 0x0 0x1 0x0 0x0
Q:5 0x1 0x0 0x0 0x1 0x0 0x0
Q:6 0x1 0x0 0x0 0x1 0x0 0x0
Q:7 0x0 0x0 0x0 0x1 0x0 0x0
R:0 0x1 0x0 0x0 0x1 0x0 0x0
R:1 0x3 0x0 0x0 0x0 0x1 0x0
R:2 0x0 0x0 0x0 0x1 0x0 0x0
R:3 0x0 0x0 0x0 0x1 0x0 0x0
R:4 0x1 0x0 0x0 0x1 0x0 0x0
R:5 0x1 0x0 0x1 0x1 0x0 0x0
S:0 0x0 0x0 0x0 0x1 0x0 0x0
S:1 0x0 0x0 0x0 0x1 0x0 0x0
S:2 0x0 0x0 0x0 0x1 0x0 0x0
S:3 0x0 0x0 0x0 0x1 0x0 0x0
S:4 0x1 0x0 0x0 0x1 0x0 0x0
S:5 0x0 0x0 0x0 0x1 0x0 0x0
S:6 0x0 0x0 0x0 0x1 0x0 0x0
S:7 0x1 0x0 0x0 0x1 0x0 0x0
T:0 0x0 0x0 0x0 0x1 0x0 0x0
T:1 0x0 0x0 0x0 0x1 0x0 0x0
T:2 0x0 0x0 0x0 0x1 0x0 0x0
T:3 0x0 0x0 0x0 0x1 0x0 0x0
T:4 0x0 0x0 0x0 0x1 0x0 0x0
T:5 0x1 0x0 0x0 0x1 0x0 0x0
T:6 0x1 0x0 0x0 0x1 0x0 0x0
T:7 0x1 0x0 0x0 0x1 0x0 0x0
U:0 0x1 0x0 0x0 0x1 0x0 0x0
V:0 0x0 0x0 0x0 0x1 0x0 0x0
V:1 0x0 0x0 0x0 0x1 0x0 0x0
V:2 0x0 0x0 0x0 0x1 0x0 0x0
V:3 0x0 0x0 0x0 0x1 0x0 0x0
V:4 0x0 0x0 0x0 0x1 0x0 0x0
V:5 0x0 0x0 0x0 0x1 0x0 0x0
V:6 0x0 0x0 0x0 0x1 0x0 0x0
V:7 0x0 0x0 0x0 0x1 0x0 0x0
W:0 0x0 0x0 0x0 0x1 0x0 0x0
W:1 0x0 0x0 0x0 0x1 0x0 0x0
X:2 0x0 0x0 0x0 0x1 0x0 0x0
X:3 0x0 0x0 0x0 0x1 0x0 0x0
X:4 0x0 0x0 0x0 0x1 0x0 0x0
X:5 0x0 0x0 0x0 0x1 0x0 0x0
X:6 0x0 0x0 0x0 0x1 0x0 0x0
X:7 0x0 0x0 0x0 0x1 0x0 0x0
Y:0 0x1 0x0 0x0 0x1 0x0 0x0
Y:1 0x1 0x0 0x0 0x1 0x0 0x0
Y:2 0x1 0x0 0x0 0x1 0x0 0x0
Y:3 0x1 0x0 0x0 0x1 0x0 0x0
Y:4 0x1 0x0 0x0 0x1 0x0 0x0
Y:5 0x1 0x0 0x0 0x1 0x0 0x0
Y:6 0x0 0x0 0x0 0x1 0x0 0x0
Y:7 0x1 0x0 0x0 0x1 0x0 0x0
Z:0 0x0 0x0 0x0 0x1 0x0 0x0
Z:1 0x4d 0x0 0x1 0x1 0x0 0x0
Z:2 0x0 0x0 0x0 0x1 0x0 0x0
Z:3 0x1 0x0 0x0 0x1 0x0 0x0
Z:4 0x1 0x0 0x1 0x1 0x0 0x0
Z:5 0x1 0x0 0x1 0x1 0x0 0x0
Z:6 0x1 0x0 0x1 0x1 0x0 0x0
Z:7 0x1 0x0 0x1 0x1 0x0 0x0
FF:0 0x0 0x0 0x0 0x1 0x0 0x0
FF:1 0x0 0x0 0x0 0x1 0x0 0x0
GG:0 0x0 0x0 0x0 0x1 0x0 0x0
GG:1 0x0 0x0 0x0 0x1 0x0 0x0

Linux_for_Tegra/source/public/kernel/kernel-4.9/include/linux/gpio.h

The APIS used to control the GPIO.

gpio_request(num, “name”);
gpio_direction_output(num,GPIOF_DIR_OUT);
gpio_set_value(num,0);
gpio_set_value(num,1);

Useful guide:

40 PIN Header: Welcome — Jetson Linux
Developer Guide 34.1 documentation

Tegra GPIO:
GitHub - NVIDIA/jetson-gpio: A Python library that enables the use of Jetson's GPIOs
Platform Adaptation and Bring-Up;
Welcome — Jetson Linux
Developer Guide 34.1 documentation

Yolomei May 26, 2022, 9:24am 4

Hello, I would like to ask how the “GPIO_ACTIVE_LOW” in the above comes from and what does it mean? Is there a formula for the gpios properties in the device tree?

Thank you!!

You can directly search this over the Internet. This is not jetson related but a common defined one in linux kernel.

542270618 December 27, 2022, 1:34pm 6

WayneWWW:
您好!我想操作gpio07,发现按您说的方法操作不了

  1. dmesg | grep GPIOs
    [ 3.178644] gpiochip0: registered GPIOs 504 to 511 on max77620-gpio
    [ 6.996601] gpiochip1: registered GPIOs 335 to 503 on tegra194-gpio
    [ 6.998441] gpiochip2: registered GPIOs 305 to 334 on tegra194-gpio-aon
  2. root@lee:/home/lee# cat /sys/kernel/debug/gpio
    gpiochip2: GPIOs 305-334, parent: platform/c2f0000.gpio, tegra194-gpio-aon:
    gpio-305 (PAA.00 )
    gpio-306 (PAA.01 )
    gpio-307 (PAA.02 )
    gpio-308 (PAA.03 )
    gpio-309 (PAA.04 )
    gpio-310 (PAA.05 )
    gpio-311 (PAA.06 )
    gpio-312 (PAA.07 )
    gpio-313 (PBB.00 )
    gpio-314 (PBB.01 )
    gpio-315 (PBB.02 )
    gpio-316 (PBB.03 )
    gpio-317 (PCC.00 )
    gpio-318 (PCC.01 |pwr ) out hi
    gpio-319 (PCC.02 )
    gpio-320 (PCC.03 )
    gpio-321 (PCC.04 )
    gpio-322 (PCC.05 )
    gpio-323 (PCC.06 )
    gpio-324 (PCC.07 )
    gpio-325 (PDD.00 )
    gpio-326 (PDD.01 )
    gpio-327 (PDD.02 )
    gpio-328 (PEE.00 )
    gpio-329 (PEE.01 )
    gpio-330 (PEE.02 )
    gpio-331 (PEE.03 )
    gpio-332 (PEE.04 |power-key ) in hi IRQ ACTIVE LOW
    gpio-333 (PEE.05 )
    gpio-334 (PEE.06 )
    gpiochip1: GPIOs 335-503, parent: platform/2200000.gpio, tegra194-gpio:
    gpio-335 (PA.00 )
    gpio-336 (PA.01 )
    gpio-337 (PA.02 )
    gpio-338 (PA.03 )
    gpio-339 (PA.04 )
    gpio-340 (PA.05 )
    gpio-341 (PA.06 )
    gpio-342 (PA.07 )
    gpio-343 (PB.00 )
    gpio-344 (PB.01 )
    gpio-345 (PC.00 |fixed-regulators:reg) out lo
    gpio-346 (PC.01 )
    gpio-347 (PC.02 )
    gpio-348 (PC.03 )
    gpio-349 (PC.04 )
    gpio-350 (PC.05 )
    gpio-351 (PC.06 )
    gpio-352 (PC.07 )
    gpio-353 (PD.00 )
    gpio-354 (PD.01 )
    gpio-355 (PD.02 )
    gpio-356 (PD.03 )
    gpio-357 (PE.00 )
    gpio-358 (PE.01 )
    gpio-359 (PE.02 )
    gpio-360 (PE.03 )
    gpio-361 (PE.04 )
    gpio-362 (PE.05 )
    gpio-363 (PE.06 )
    gpio-364 (PE.07 )
    gpio-365 (PF.00 )
    gpio-366 (PF.01 )
    gpio-367 (PF.02 )
    gpio-368 (PF.03 )
    gpio-369 (PF.04 )
    gpio-370 (PF.05 )
    gpio-371 (PG.00 |force-recovery ) in hi IRQ ACTIVE LOW
    gpio-372 (PG.01 )
    gpio-373 (PG.02 |fixed-regulators:reg) out lo
    gpio-374 (PG.03 |wifi-enable ) out hi
    gpio-375 (PG.04 )
    gpio-376 (PG.05 |phy_reset ) out hi
    gpio-377 (PG.06 )
    gpio-378 (PG.07 )
    gpio-379 (PH.00 )
    gpio-380 (PH.01 )
    gpio-381 (PH.02 )
    gpio-382 (PH.03 )
    gpio-383 (PH.04 )
    gpio-384 (PH.05 )
    gpio-385 (PH.06 )
    gpio-386 (PH.07 )
    gpio-387 (PI.00 )
    gpio-388 (PI.01 )
    gpio-389 (PI.02 )
    gpio-390 (PI.03 )
    gpio-391 (PI.04 )
    gpio-392 (PJ.00 )
    gpio-393 (PJ.01 )
    gpio-394 (PJ.02 )
    gpio-395 (PJ.03 )
    gpio-396 (PJ.04 )
    gpio-397 (PJ.05 )
    gpio-398 (PK.00 )
    gpio-399 (PK.01 )
    gpio-400 (PK.02 )
    gpio-401 (PK.03 )
    gpio-402 (PK.04 )
    gpio-403 (PK.05 )
    gpio-404 (PK.06 )
    gpio-405 (PK.07 )
    gpio-406 (PL.00 )
    gpio-407 (PL.01 )
    gpio-408 (PL.02 )
    gpio-409 (PL.03 )
    gpio-410 (PM.00 )
    gpio-411 (PM.01 |hdmi2.0_hpd ) in lo IRQ
    gpio-412 (PM.02 )
    gpio-413 (PM.03 )
    gpio-414 (PM.04 )
    gpio-415 (PM.05 )
    gpio-416 (PM.06 )
    gpio-417 (PM.07 )
    gpio-418 (PN.00 |fixed-regulators:reg) out lo
    gpio-419 (PN.01 )
    gpio-420 (PN.02 )
    gpio-421 (PO.00 )
    gpio-422 (PO.01 )
    gpio-423 (PO.02 )
    gpio-424 (PO.03 )
    gpio-425 (PO.04 )
    gpio-426 (PO.05 )
    gpio-427 (PP.00 )
    gpio-428 (PP.01 )
    gpio-429 (PP.02 )
    gpio-430 (PP.03 )
    gpio-431 (PP.04 )
    gpio-432 (PP.05 )
    gpio-433 (PP.06 )
    gpio-434 (PP.07 )
    gpio-435 (PQ.00 )
    gpio-436 (PQ.01 )
    gpio-437 (PQ.02 )
    gpio-438 (PQ.03 )
    gpio-439 (PQ.04 )
    gpio-440 (PQ.05 )
    gpio-441 (PQ.06 )
    gpio-442 (PQ.07 )
    gpio-443 (PR.00 )
    gpio-444 (PR.01 )
    gpio-445 (PR.02 )
    gpio-446 (PR.03 )
    gpio-447 (PR.04 )
    gpio-448 (PR.05 )
    gpio-449 (PS.00 )
    gpio-450 (PS.01 )
    gpio-451 (PS.02 )
    gpio-452 (PS.03 )
    gpio-453 (PS.04 )
    gpio-454 (PS.05 )
    gpio-455 (PS.06 )
    gpio-456 (PS.07 )
    gpio-457 (PT.00 )
    gpio-458 (PT.01 )
    gpio-459 (PT.02 )
    gpio-460 (PT.03 )
    gpio-461 (PT.04 )
    gpio-462 (PT.05 )
    gpio-463 (PT.06 )
    gpio-464 (PT.07 )
    gpio-465 (PU.00 )
    gpio-466 (PV.00 )
    gpio-467 (PV.01 )
    gpio-468 (PV.02 )
    gpio-469 (PV.03 )
    gpio-470 (PV.04 )
    gpio-471 (PV.05 )
    gpio-472 (PV.06 )
    gpio-473 (PV.07 )
    gpio-474 (PW.00 )
    gpio-475 (PW.01 )
    gpio-476 (PX.00 )
    gpio-477 (PX.01 )
    gpio-478 (PX.02 )
    gpio-479 (PX.03 )
    gpio-480 (PX.04 )
    gpio-481 (PX.05 )
    gpio-482 (PX.06 )
    gpio-483 (PX.07 )
    gpio-484 (PY.00 )
    gpio-485 (PY.01 )
    gpio-486 (PY.02 )
    gpio-487 (PY.03 )
    gpio-488 (PY.04 )
    gpio-489 (PY.05 )
    gpio-490 (PY.06 )
    gpio-491 (PY.07 )
    gpio-492 (PZ.00 )
    gpio-493 (PZ.01 |vbus ) in hi IRQ ACTIVE LOW
    gpio-494 (PZ.02 )
    gpio-495 (PZ.03 )
    gpio-496 (PZ.04 )
    gpio-497 (PZ.05 )
    gpio-498 (PZ.06 )
    gpio-499 (PZ.07 )
    gpio-500 (PFF.00 )
    gpio-501 (PFF.01 )
    gpio-502 (PGG.00 )
    gpio-503 (PGG.01 )

gpiochip0: GPIOs 504-511, parent: i2c/4-003c, max77620-gpio, can sleep:
gpio-510 ( |gpio_default ) in hi
gpio-511 ( |gpio_default ) in hi

  1. 设备树中的定义
    #define BOTTOM_CAM_RESET TEGRA194_MAIN_GPIO(R, 0) //下视reset
    bottom-cam-reset-gpio = <&tegra_main_gpio BOTTOM_CAM_RESET GPIO_ACTIVE_HIGH>; //驱动程序中使用该符号
  2. 结果发现无法拉低
  3. 是否有其它地方正在 用该gpio
  4. Jetson_Xavier_NX_Pinmux_Configuration_Template_v1.06.xlsm 表中此io已经配置成输入?

Hello, I am trying to configure GPIO04, pin 127, Ball Name SPI2_MISO.

First of all, I am a bit confused from the Jetson_Xavier_NX_Pinmux_COnfiguration_v1.06.xlsm, why does only the SFIO, highlighted in light blue, appears, or rather are described, in the command “cat /sys/kernel/debug/gpio” ? Does that mean that the GPIO is unsupported or just doesn’t have a Special Function IO ? Can I still use it ?

In my case, Pin 127 GPIO04 is associated with pin 225 (SPI2_MISO_PCC1) from /sys/kernel/debug/pinctrl/2430000.pinmux#, when I do “cat pins”.

A cat of the gpio-ranges inside the same folder indicates:

0: tegra-gpio GPIOS [288 - 495] PINS [0 - 207]
208: tegra-gpio GPIOS [496 - 511] PINS [248 - 263]
0: tegra-gpio-aon GPIOS [248 - 287] PINS [208 - 247]

pin 225 makes it gpio 265. A cat of /sys/kernel/debug/gpio indicates:

gpio-265 ( )

So again, since from the Excel sheet, it is a GPIO but not an SFIO, it is not described. But is it still available ?

These commands below seem to work, but I don’t see the effect on my board:

~# echo 265 > /sys/class/gpio/export
~# cd /sys/class/gpio/gpio265
/sys/class/gpio/gpio265# ls
active_low device direction edge power subsystem uevent value
/sys/class/gpio/gpio265# cat direction
out
/sys/class/gpio/gpio265# cat value
0
sys/class/gpio/gpio265# echo 1 > /sys/class/gpio/gpio265/value
/sys/class/gpio/gpio265# cat value
1
sys/class/gpio/gpio265# echo 0 > /sys/class/gpio/gpio265/value
/sys/class/gpio/gpio265# cat value
0

lance9527 December 28, 2023, 10:09am 8

你解决了吗?我按他们的方法也不行