Hi,
I am working on a Jetson Orin NX running JetPack 6 / L4T 36.5. My goal is to use GPIO07 (soc_gpio07_pi6) as a PWM output to verify pulse duty-cycle variation from 0% to 100% on an external device.
Steps performed:
-
Opened the Jetson Orin NX/Nano pinmux spreadsheet.
-
Configured GPIO07 as:
-
Customer Usage: GPIO07 (PWM)
-
Function: GP_PWM7
-
Direction: Output
-
-
Generated the DT files:
-
pinmux.dtsi
-
gpio-default.dtsi
-
padvoltage-default.dtsi
-
Observations:
- In the generated gpio-default.dtsi, GPIO07 is removed from the GPIO list:
- TEGRA234_MAIN_GPIO(G, 6)
- However, in the generated pinmux.dtsi, GPIO07 still appears as:
soc_gpio07_pi6 {
nvidia,pins = "soc_gpio07_pi6";
nvidia,function = "gp";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_ENABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
nvidia,lpdr = <TEGRA_PIN_DISABLE>;
};
- I expected the pinmux generator to configure the pin for PWM instead of keeping
nvidia,function = "gp".
Additional information:
- PWM7 exists in tegra234.dtsi:
pwm7: pwm@32e0000
- PWM7 is also referenced in:
nv-public/nv-platform/tegra234-p3768-0000+p3767-xxxx-nv-common.dtsi
My intention is only want to output a PWM signal and verify duty-cycle variation from 0% to 100% on GPIO07 using an oscilloscope or logic analyzer.
Questions:
-
Should changing GPIO07 to PWM7 in the pinmux spreadsheet automatically update
nvidia,functionfrom"gp"to"pwm"or"pwm7"in the generated DTS? -
Is a
pwm7node supposed to appear in the generated pinmux output files, or is PWM configuration only handled in the SoC-level DTS files? -
After generating and flashing the DTB, what additional steps are required to enable PWM output on the pin and verify duty-cycle variation from 0% to 100%?
Thanks.