Jetson Nano PWM0-2 using for user's fans

Good afternoon, dear Nvidia! I see, that Jetson Nano has 3 PWM but in dts I see only 2 pwm controllers pwm@7000a000 and pwm@70110000. I want to use user available pwm0 and pwm1 to attach 2 more fans based on different sensors. I can configure this GPIOs in your xlsx file and then receive pinmux dtsi from this but I don’t understand how to enable it in dts then and how to use it. Am I have to use it only from userspace then?

sudo cat /sys/kernel/debug/pwm
platform/70110000.pwm, 1 PWM device
 pwm-0   (pwm-regulator       ): requested enabled period: 2500 ns duty: 0 ns polarity: normal

platform/7000a000.pwm, 4 PWM devices
 pwm-0   ((null)              ): period: 0 ns duty: 0 ns polarity: normal
 pwm-1   (pwm-regulator       ): requested period: 8000 ns duty: 1440 ns polarity: normal
 pwm-2   ((null)              ): period: 0 ns duty: 0 ns polarity: normal
 pwm-3   (pwm-fan             ): requested enabled period: 45334 ns duty: 21333 ns polarity: normal

Hi,
The design seems to be invalid. Per our product design guide:
https://developer.nvidia.com/embedded/dlc/jetson-nano-product-design-guide

We support only single fan per section 11.4 Fan. Please check if you can follow our design guide for designing the board.

Good afternoon, DaneLLL! Then you say that there is can be only 1 fan from 3 PWM pins that come out from Jetson Nano module? We wanted to use all 3 for fans in future…

Hi,
Please refer to the topic to enable PWM pins.
PWM pins

Only one pin can work as pwm-fan. For the other PWM pins, you would need to do manual control.

Must I do something in dts to activate this pins as PWM or I can only export them in /sys/devices/7000a000.pwm/pwm/ and I can use it in bash?
It is normal for me to write bash script for the second FAN but now I don’t fully understand how to do this proper way.
We are using GPIO14 as the main PWM and GPIO08 as the tacho for it. We want to use GPIO13 for the 2nd PWM and GPIO07 as tacho for it. How I understood - we can do this by using the second PWM manually from sysfs and now I only asking you how should I declare it in device tree (and should I really?) and how correctly am I understood you?

Hi,
The design is invalid. Only GPIO14 can be FAN_PWM pin. Only GPIO08 can be FAN_TACH pin.

Yes, but GPIO13 can be configured as PWM in you xlsx file, why can’t I use it for another FAN?

Use the standard FAN signals for the SOC cooler only.
Use an external fan controller for other fans.

https://docs.kernel.org/hwmon/emc2305.html

Because of firmware. Remember: there are also other processor cores running besides the Linux cores. You don’t have access to their firmware.

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