Pinmux config not reflected in TX2 NX

Hello, I’m trying to use PWM3(0x032a0000) from TX2-NX. And generated .cfg by altering customer usage of GPIO13 to GP PWM3. But the .cfg changes are not getting reflected in the embedded host.

This is the config file value of pwm3.
“pinmux.0x0c3010a8 = 0x00000401; # gpio_dis5_pu5: gp, tristate-disable, input-disable, lpdr-disable”

While I’m reading the 0x0c3010a8 using busybox devmem from the embedded host after flashing it is showing 0x00000000.

What can be done for this?

hello user22196,

may I know what’s your steps to modify the pinmux spreadsheets in detail.
had you perform the python script $OUT/Linux_for_Tegra/kernel/pinmux/t186/pinmux-dts2cfg.py to converts pinmux dts in to cfg format, and fully flashing the board?

Hi JerryChang,

Yes, I performed those python scripts to convert pinmux dts to cfg format. And fully flashed the board. Copied the .cfg file to Linux_for_Tegra/bootloader/t186ref/BCT directory.

hello user22196,

according to the device tree definition,

        tegra_pwm3: pwm@32a0000 {
                compatible = "nvidia,tegra186-pwm";

are you able to control the PWM via sysfs?
for example,
to populate the channel ID, # echo 0 > /sys/class/pwm/pwmchip2
the channel will be populated and you should be able to configure the require values.
# echo <num> > period
# echo <num> > duty_cycle
# echo 1 > enable

hi JerryChang,

My device tree definition,
pwm@32a0000 {
status = “okay”;
};

And I am able to control via sysfs.

Hi JerryChang,

I tried by changing the GPIO06 and those changes are reflected in the device from cfg file. But GPIO13 changes are not reflected.

hello user22196,

don’t you able to control this PWM pin.
did you mean even you’re able to control this GPIO13, the pinmux config file still shows 0x0?

hello JerryChang,

I’m able to control the PWM pin.
Only for that GPIO13, the config file changes are not updated in the device.

hello user22196,

you’ll need to check whether GPIO13 is being used by something else in software, and thus the change is not getting reflected.
please disassembler the dtb file into text file to review the settings.
for example, $ dtc -I dtb -O dts -o output.txt tegra.dtb

Hi JerryChang,

GPIO13 is not being used by software anywhere. I’m attaching the dtb,dtsi and cfg files. Please check.dtb.txt (241.1 KB)
tegra18x-jetson_tx2_nx-pinmux.dtsi (51.5 KB)
tegra186-mb1-bct-pinmux-p3636-0001-a00.cfg (24.1 KB)

hello user22196,

FYI, we cannot repo this issue.

$ sudo busybox devmem  0x0c3010a8
0x00000405

devmem dump the values as same as pinmux configuration,
for example,
pinmux.0x0c3010a8 = 0x00000405; # gpio_dis5_pu5: gp, pull-down, tristate-disable, input-disable, lpdr-disable

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