From my understanding, TEGRA234_MAIN_GPIO(PP, 6) would imply port-PP and pin-6, which seems to align correctly. Regarding the TEGRA_WAKE_GPIO() function, I’m uncertain about using 32 instead of another value. Additionally, I’m unsure whether to use 1 or 0 to indicate active high/low for the GPIO. Can you provide further clarification on these parameters?"
From my understanding, TEGRA234_MAIN_GPIO(PP, 6) would imply port-PP and pin-6, which seems to align correctly. Regarding the TEGRA_WAKE_GPIO() function, I’m uncertain about using 32 instead of another value. Additionally, I’m unsure whether to use 1 or 0 to indicate active high/low for the GPIO. Can you provide further clarification on these parameters?"
The third parameter of TEGRA_WAKE_GPIO is the instance of the GPIO group.
- For a AON GPIO, it must be 1.
- For a MAIN GPIO, it must be 0.
The 32 here is the wake # you saw in the spreadsheet.
For example,
Power Button (POWER_BTN_N) - GPIO3_PEE.04 - wake29. Then it has to fill in “29”.
Thank you for the clarification on the third parameter of TEGRA_WAKE_GPIO . I understand that the value ‘32’ corresponds to the wake number from the spreadsheet. My question is, doesn’t each GPIO require a unique wake number? Additionally, if we intend to use PP.06, I believe the correct syntax might be PPP.06, where the first ‘P’ denotes the port and the subsequent characters indicate the port number. Could you please confirm or correct my understanding?"
PPP.06, where the first ‘P’ denotes the port and the subsequent characters indicate the port number. Could you please confirm or correct my understanding?"
I was about to try out to add this line of code:
TEGRA_WAKE_GPIO(“power”, 29, 1, TEGRA234_AON_GPIO(PPP, 6)),
But, then we realized that 29 is already connected to GPIO3_PEE.04 and we need something else?
Despite modifying the code, recompiling the kernel, updating the modules, we still haven’t managed to successfully wake up Orin with this pin. We basically are fumbling in the dark here.
Thank you for the prompt response. Although I haven’t dedicated full-time efforts to this issue over the past two weeks, it has now become a priority to address. Below are the key details extracted from row 90 of the pinmux spreadsheet for GPIO03_PP.06:
General Information:
Physical pin: J55
SoC level identifier: SOC_GPIO25
Wake-up signal: wake37 (noting the hidden column)
Power & Configuration:
Power rail: vddio_g3
Configuration Flags: PULL_DOWN, ENABLE
Usage & Direction:
Designation: GPIO3_PP.06
Direction: Input
Status: Active
DevKit Usage:
High-level function: M.2 E Bluetooth wake AP
I am seeking confirmation on these parameters to ensure the accurate configuration of GPIO03_PP.06 as a wake-up source.
I utilized TEGRA234_MAIN_GPIO following your instructions for non-AON GPIOs. Please verify if this adjustment is consistent with the Tegra234 GPIO definitions. It might be worth a new test-run?
must acknowledge that navigating the pinmux spreadsheet and correlating it with the Orin’s source code presents a considerable challenge for us, especially the complex details of pin configurations.
Our primary requirement is a GPIO pin that supports the wake-up functionality. We initially considered GPIO3_PP.06, but we are open to alternatives that meet our needs. If you could guide us towards a compatible GPIO pin or provide a straightforward explanation, that would be immensely helpful. We’re seeking basic, step-by-step assistance to ensure we grasp and apply this knowledge correctly.
To clarify, our essential requirement is a ‘Wake Pin: Yes’ feature for the pin in question.
Just want to clarify again. If I don’t guide you to find the answer this way, you would come back again next time when you just want to switch to another pin. But honestly this things are all the same and repeating one.
Pinmux is also a basic one for developing your own custom board.
Please try to ask a question based on your understanding, but not keep seeking me to help you out directly. I am not your colleague or coworker.
Additionally, we believe that this is a common requirement for many developers working with Orin, so any guidance you provide will not only assist us but potentially many others in the community who are looking to wake up Orin with a hardware signal. I didn’t expect to recompile the linux core to achieve this ;)
Also, if I wish to deepen my understanding as I clearly fumbling here, where might I find that information? Any recommendations for additional forum threads or documentation would be greatly appreciated.