How do I update the pin configuration if there is no recovery mode?

jetson-xavier-nx
i can update the pin configuration by cfg under recovery mode。
but how can i update the pin configuration or driver without recovery mode。
In the other type of development board, I can find the pin configuration in DTSI and replace the line on the development board after generating the DTB file。
Now I can only use CFG file under recovery mode,and flash all 。

If the DTB being used is from “/boot”, and not via partition, then you could simply change it in “/boot”. Better yet, add a second boot entry in “/boot/extlinux/extlinux.conf” which is close to a duplicate of the default boot (but different label and different FDT entry to use a different device tree, then boot to that entry with serial console to pick it as a test, followed by changing that to the default entry if it works). There is also a partition which might be used (best to log boot via serial console to see which is used), and although I wouldn’t advise it, sometimes you can create a signed version from the Linux host PC (the “--no-flash -u <rsa_priv>.pem -v <sbk>.key” option to “flash.sh”), and then use “dd” to overwrite the existing partition for partition-based trees (this won’t work if the new tree is too large for the partition).

The problem is that I only found how to create CFG by jetson_xavier_nx_pinmux_configuration_template_V1.06, and then I don’t know how to modify the pins in DTB to replace the files in boot.
I replaced the CFG file and recompiled the DTB file, but it didn’t work.

Recovery mode itself does not change the Jetson. What it does is put the Jetson in a custom USB mode which is able to be flashed, and the “driver package” within the flash software understands that custom USB device. The configuration change alters the content to be flashed, but there are several files which are involved at different stages of flash, and so I wonder if perhaps your DTB file either was the wrong one or placed where it was bypassed.

I don’t think I can answer specific questions for a given device tree edit, but you will want to post:

  • Which L4T or JetPack/SDKM release you are using?
  • Which PINMUX change are you making (what specific edit)?
  • Which DTB file was installed, and where, when it did not work?

Note: You can browse “/proc/device-tree” to see the current running tree. You can verify if your change made it in or not by looking there. It is also possible that early boot stages will edit some entries, but there are not many this happens with.

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