Conflicting Tegra234 GPIO defs

I’m using yocto / meta-tegra to build images for AGX Orin. The kernel branch is (oe4t-patches-l4t-r35.1).

There are three separate tegra234-gpio.h files in the linux-tegra source tree, with conflicting definitions e.g.

linux-tegra/include/dt-bindings/gpio/tegra234-gpio.h:#define TEGRA234_MAIN_GPIO_PORT_AC 20
linux-tegra/nvidia/include/dt-bindings/gpio/tegra234-gpio.h:#define TEGRA234_MAIN_GPIO_PORT_AC 27
linux-tegra/nvidia/soc/t23x/kernel-include/dt-bindings/gpio/tegra234-gpio.h:#define TEGRA234_MAIN_GPIO_PORT_AC 20

Why are there multiple conflicting definitions and more importantly which one is correct?


Hi tbottom,

Are you using the devkit or custom board for AGX Orin?

Sorry that we don’t support and maintain the yocto project.
You could check which header is included in your source.

Hi Kevin,

I have an Orin devkit and am modifying the device tree for a custom carrier board. The question is not specific to the yocto project. In the l4t r35.3.1 bsp source tarball ( the pin has two different definitions (all the main gpio defs after TEGRA234_MAIN_GPIO_PORT_N conflict):

~/src/Linux_for_Tegra/source/public/kernel $ grep TEGRA234_MAIN_GPIO_PORT_AC -Ir
nvidia/include/dt-bindings/gpio/tegra234-gpio.h:#define TEGRA234_MAIN_GPIO_PORT_AC 27
kernel-5.10/include/dt-bindings/gpio/tegra234-gpio.h:#define TEGRA234_MAIN_GPIO_PORT_AC 20

You should use the tegra234-gpio.h under kernel-5.10, and you could remove nvidia/include/dt-bindings/gpio/tegra234-gpio.h.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.