GPIO can not control

Dear all:

1: we use following gpio in Jetson AGX orin with Jetpack6.2_R36.4.3, change pinmux and gpio file to gpio.

2: add patch to pinctrl-tegra.c and pinctrl-tegra.h What’s the base address of GPIO_EE_ENABLE_CONFIG_02_0 Offset: 0x1040?

3: The following gpio,

gpio PM.07 and PQ.04 can be controled.
gpioset --mode=wait `gpiofind "PM.07"`=0 
gpioset --mode=wait `gpiofind "PQ.04"`=0

gpio PM.07 and PQ.04 can not be  controled. it is high
gpioset --mode=wait `gpiofind "PN.02"`=1
gpioset --mode=wait `gpiofind "PP.04"`=1


Could you give some advice about it ?

Thank you very much.


*** Please note that this reply is generated by LLM automatically ***

The question seems to be asking about the base address of GPIOEEENABLECONFIG020 Offset 0x1040 on the Jetson AGX Orin with Jetpack 4.6.2/R34.3.

Unfortunately, the provided context does not explicitly mention the base address of GPIOEEENABLECONFIG020 Offset 0x1040. However, I can provide some general information about the GPIO configuration on the Jetson AGX Orin.

The Jetson AGX Orin has a complex GPIO configuration, and the pinmux and gpio files need to be modified to configure the GPIOs. The pinctrl-tegra.c and pinctrl-tegra.h files are responsible for configuring the pinmux and gpio settings.

To determine the base address of GPIOEEENABLECONFIG020 Offset 0x1040, you may need to refer to the Jetson AGX Orin Technical Reference Manual (TRM) or the Jetson AGX Orin datasheet. These documents should provide detailed information about the GPIO configuration, including the base addresses of the GPIO registers.

Alternatively, you can try searching for the GPIOEEENABLECONFIG020 Offset 0x1040 in the Linux kernel source code, specifically in the arch/arm64/boot/dts/tegra194.dtsi file, which contains the device tree configuration for the Jetson AGX Orin.

It’s also worth noting that the GPIO configuration on the Jetson AGX Orin may vary depending on the specific module and carrier board being used. Therefore, it’s essential to consult the relevant documentation and source code to determine the correct base address of GPIOEEENABLECONFIG020 Offset 0x1040.

In comparison to other Jetson modules, such as the Jetson Xavier NX and Jetson AGX Xavier, the GPIO configuration on the Jetson AGX Orin may differ due to the different hardware architecture and pinmux configurations. Therefore, it’s essential to consult the specific documentation and source code for the Jetson AGX Orin to determine the correct base address of GPIOEEENABLECONFIG020 Offset 0x1040.

In summary, while the provided context does not explicitly mention the base address of GPIOEEENABLECONFIG020 Offset 0x1040, it’s possible to determine the correct base address by consulting the Jetson AGX Orin Technical Reference Manual (TRM), datasheet, or Linux kernel source code.

*** Please give the thumbs up if you get answers you like. Or provide feedback to help us improve the answer. ***

Hi 848145724,

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

Do you paste the wrong link with the patch you applied?
I don’t see the patch in the link you shared.

Please share how do you configure PN.02 and PP.04 in pinmux spreadsheet.
Do you get a scope to measure if they have been controlled correctly?

1: it is costomed board, and use tegra234-p3737-0000+p3701-0004-nv.dtb

2: Sorry, it is link :https://forums.developer.nvidia.com/t/40hdr-spi1-gpio-padctl-register-bit-10-effect-by-gpiod-tools-in-jp6/301171/20

3: I change the following files:

tegra234-mb1-bct-gpio-p3701-0000-a04.dtsi:

  • gpio-output-high

tegra234-mbi-bct-pinmux-p3701-0000-a04.dtsi

4: I use multimeter test gpio, hardware is normal.

Okay, it is the necessary patch if you want to control GPIO with JP6.x.

It seems you don’t update the nvidia,function for GPIO usage.
I would suggest using pinmux spreadsheet to configure them instead of updating pinmux/gpio dtsi manually in case you missed something or configure something invalid.

Let me take PP.04 as example, please configure it as following in pinmux spreadsheet.
image
Please check if it can be controlled after applying the change.

# busybox devmem 0x02430020
# gpioset --mode=wait `gpiofind "PP.04"`=0
# gpioset --mode=wait `gpiofind "PP.04"`=1

sudo busybox devmem 0x02430020 value: 0x00000404

and after change by pinmux spreadsheet, and PM.07 PQ.04 gpio can not be control.

I think PM.07 and PQ.04 may be used in system ?Could you give some suggestion about it?

whats more, Does pinmux spreadsheet have change for JP6.2? now it from JP5.1.2., now I use Jetson_AGX_Orin_Series_Pinmux_Config_Template_1.5.xlsm.

Is this still an issue to support? Any result can be shared?

0x404 is not the expected result to use the pin as GPIO. (i.e. bit 10 should not be set)

You can simply run the following command to check if these pins have been used by other driver in your case.

$ sudo cat /sys/kernel/debug/gpio|grep -E "PM.07|PQ.04"

Pinmux should be valid for both JP5.x and JP6.x releases.
Please just make sure it matches your design of the custom carrier board.

yes, gpio can not be controled. I will try to resolve it.

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