Thor gpio

agx thor gpio pinmux配置如下

gp_pwm9_pm0 {
			nvidia,pins = "gp_pwm9_pm0";
			nvidia,function = "rsvd1";
			nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
			nvidia,tristate = <TEGRA_PIN_DISABLE>;
			nvidia,enable-input = <TEGRA_PIN_DISABLE>;
			nvidia,drv-type = <TEGRA_PIN_1X_DRIVER>;
			nvidia,e-io-od = <TEGRA_PIN_DISABLE>;
			nvidia,e-lpbk = <TEGRA_PIN_DISABLE>;
		};

gpioinfo line 88: “PM.00” unused output active-high

sudo gpioset -m wait gpiochip2 88=0

sudo gpioset -m wait gpiochip2 88=1 高低电平设置均无效

Hi wang_qing_jiu,

Are you using the devkit or custom carrier board for Thor?
What’s the Jetpack version in use?

How did you configure PM.00 in pinmux spreadsheet?
Could you configure it as following and verify again?
image

自己作的板子 上面的配置正是按照这个配置生成,并且当配置pwm功能的时候 他能正常工作

image

生成之后 我就改成了下拉在配置里面 ,其它都一样

Could you try running the following command to control this pin after you have configured it as GPIO/Output/Drive 1 in pinmux spreadsheet?

# gpioset --mode=wait `gpiofind "PM.00"`=1
# gpioset --mode=wait `gpiofind "PM.00"`=0

还是不行 电压一直高电平

32 (gp_pwm9_pm0):
pull=0
tristate=0
enable-input=0
open-drain=1
io-reset=1
rcv-sel=1
io-hv=1
schmitt=0
pull-down-strength=8
pull-up-strength=8
drive-type=1
gpio-mode=1
function=rsvd1

@KevinFFF 是不是这个引脚只能做pwm

How about you configure it as GPIO3_PM.00/Output/Drive 0 instead?

This pin should be able to work with GPIO mode.
Is there anything connected on this pin?

没有接入任何器件

还是需要gpio控制的

Could you share the pin state after you have configured it like this?

Please also help to check if the GPIO control issue is specific to the current pin (i.e. PM.00)

我又测试了其它gpio 他们配置都是一样的在bootloader/tegra264-mb1-bct-pinmux-p3834-xxxx-p4071-0000.dtsi 测试了pp03 pp04 ,都是可以控制的

我已经找到解决方法了 仅仅配置pinumux不行的

Besides the pinmux changes, did you also disable the PWM node?

是的 还有gpio一些其它配置文件

Could you please share the details of your customization?
It would be very helpful for others encountering similar issues or requirements. Thank you.

就是需要在bootloader 还配置一下初始化电平 然后就可以控制 其它复用功能不需要 我觉得这是一个bug 这个在jp7.2环境测试的

I think the Drive 0 and Drive 1 in pinmux spreadsheet is used for this task.