Unable to use PWM9, PWM2 and PWM3 on agx thor

Hi Nvidia Team,

I am currently using AGX Thor with my custom carrier board, and i have made pinmux changes to use PWM9, PWM3 and PWM2.

The current observation is if i am using FAN_TACH0 i am able to control the PWM4 but i am not able to control other pwm’s using the same.

Screenshot from 2026-08-12 14-55-38

Screenshot from 2026-08-12 14-56-56

Screenshot from 2026-08-12 14-55-54

Here are my dtsi changes:

diff --git a/hardware/nvidia/t264/nv-public/tegra264.dtsi b/hardware/nvidia/t264/nv-public/tegra264.dtsi
index b90f371f5..192b3a44b 100644
--- a/hardware/nvidia/t264/nv-public/tegra264.dtsi
+++ b/hardware/nvidia/t264/nv-public/tegra264.dtsi
@@ -4372,7 +4372,7 @@
 
 		pwm2: pwm@810c5e0000 {
 			compatible = "nvidia,tegra264-pwm";
-			status = "disabled";
+			status = "okay";
 
 			reg = <0x81 0x0c5e0000 0x0 0x10000>;
 			nvidia,hw-instance-id = <0x2>;
@@ -4411,7 +4411,7 @@
 
 		pwm9: pwm@810c610000 {
 			compatible = "nvidia,tegra264-pwm";
-			status = "disabled";
+			status = "okay";
 
 			reg = <0x81 0x0c610000 0x0 0x10000>;
 			nvidia,hw-instance-id = <0x9>;
-- 
2.43.0

There’s is no pwm entry inside /sys/devices/platform/bus@0/810c5e0000.pwm/pwm/pwmchip1

Kindly guide me how to control this pwm’s

Regards,

Vrushti

Hi vrushti.dabhi,

What’s the Jetpack version in use?

What’s the required PWM frequency and duty cycle?
To control PWM, please simply run ls -l /sys/class/pwm to check the available PWM first.

Please also refer to T5000新增PWM风扇如何配置 - #18 by KevinFFF about the case for TACH.

Hi @KevinFFF , we are currently using JP7.2, we are making sure that the pwm’s on custom board board works at any frequency and duty cycle, but currently no able to find any pwm node in any of the pwmchip’s

Under /sys/class/pwm/pwmchip*, you have to run echo 0 > export to get pwm node exported.
You may simply refer to How to use 40pins pwm01? - #23 by KevinFFF for the detailed steps. (It is the example for AGX Orin, but you can just refer to the step3 and step4 for Thor)

Hi @KevinFFF , i was able to set the duty_cycle and period for pwm2 but incase of pwm3 getting following error.

I noticed that pwm3 is assigned to GPIO36 (SNN_SOC_NVME_FAN_PWM) on the Thor DevKit, but the pinmux indicates it can be repurposed for general use (i have configured the same in pinmux as GP_PWM3). What are the specific steps to unbind it from the fan control and configure it as a general-purpose pin?

Please share the result of ls /sys/devices/platform/bus@0/810c5f0000.pwm/pwm/pwmchip2/ on your board.
It seems you didn’t enter into pwm0 under /sys/devices/platform/bus@0/810c5f0000.pwm/pwm/pwmchip2/..
Please run echo command under /sys/devices/platform/bus@0/810c5f0000.pwm/pwm/pwmchip2/pwm0

Please just enable pwm@810c5f0000 in device tree.

Hi @KevinFFF , thanks for the clarification i was able to set the duty_cycle and period after enabling pwm@810c5f0000 in device tree.