How to modify the pinmux reuse in Orin nano board, compile it into an image and burn it into the Orin nano development board?

我能確認一下你怎麼燒錄的嗎?

Linux_for_Tegra/bootloader

另外能請你在這一層搜尋一下 然後分享結果嗎?

find -iname "*bpmp*dtb"

Hi,WayneWWW:
当前调试的单板是使用sdkmanager工具烧录的,现在我只是替换tegra234-p3767-0004-p3768-0000-a0.dtb来调试,修改 p3767.conf.common需要重新烧录吗?我第一次修改这个文件的时候,使用命令:

./flash.sh jetson-orin-nano-devkit-nvme internal

进行烧录的,但是烧录后,设备异常无法启动,所以我又将备份的固件使用l4t_backup_restore.sh刷回去了。

Hi,WayneWWW:
这是执行查找命令的结果:

root@yan-virtual-machine:/home/yan/nvidia/nvidia_sdk/JetPack_5.1.3_Linux_JETSON_ORIN_NANO_TARGETS/Linux_for_Tegra# cd bootloader/
root@yan-virtual-machine:/home/yan/nvidia/nvidia_sdk/JetPack_5.1.3_Linux_JETSON_ORIN_NANO_TARGETS/Linux_for_Tegra/bootloader# 
root@yan-virtual-machine:/home/yan/nvidia/nvidia_sdk/JetPack_5.1.3_Linux_JETSON_ORIN_NANO_TARGETS/Linux_for_Tegra/bootloader# 
root@yan-virtual-machine:/home/yan/nvidia/nvidia_sdk/JetPack_5.1.3_Linux_JETSON_ORIN_NANO_TARGETS/Linux_for_Tegra/bootloader# find -iname "*bpmp*dtb"
./5143/tegra234-bpmp-3767-0004-3509-a02_with_odm_sigheader.dtb
./5143/tegra234-bpmp-3767-0004-3509-a02_with_odm_aligned.dtb
./5143/blob_tegra234-bpmp-3767-0004-3509-a02_with_odm_aligned_sigheader.dtb
./5143/blob_tegra234-bpmp-3767-0004-3509-a02_with_odm_aligned.dtb
./5143/blob_tegra234-bpmp-3767-0004-3509-a02_with_odm.dtb
./5143/tegra234-bpmp-3767-0004-3509-a02_with_odm.dtb
./5143/tegra234-bpmp-3767-0004-3509-a02.dtb
./t186ref/tegra234-bpmp-3701-0005-as-3767-0003-3737-0000.dtb
./t186ref/tegra234-bpmp-3701-0005-3737-0000-maxn.dtb
./t186ref/tegra234-bpmp-3767-0000-a02-as-3767-0001-3509-a02.dtb
./t186ref/tegra234-bpmp-3701-0004-3737-0000-maxn.dtb
./t186ref/tegra234-bpmp-3701-0002-3711-0000.dtb
./t186ref/tegra194-a02-bpmp-p2888-0005-a04-maxn.dtb
./t186ref/tegra234-bpmp-3767-0000-a02-3509-a02.dtb
./t186ref/tegra194-a02-bpmp-p2888-a04.dtb
./t186ref/tegra194-a02-bpmp-p2888-0008-b01-jaxi-maxn.dtb
./t186ref/tegra194-a02-bpmp-p3668-a00.dtb
./t186ref/tegra234-bpmp-3701-0008-3740-0002-c00.dtb
./t186ref/tegra234-bpmp-3701-0000-3737-0000.dtb
./t186ref/tegra234-bpmp-3767-0003-3509-a02.dtb
./t186ref/tegra234-bpmp-3701-0000-3737-0000-maxn.dtb
./t186ref/tegra234-bpmp-3767-0000-a02-3509-a02-maxn.dtb
./t186ref/tegra234-bpmp-3701-0008-3737-0000.dtb
./t186ref/tegra194-a01-bpmp-p2888-a01.dtb
./t186ref/tegra234-bpmp-3701-0000-as-3767-0004-3737-0000.dtb
./t186ref/tegra234-bpmp-3701-0005-3737-0000.dtb
./t186ref/tegra234-bpmp-3767-0000-a02-as-3767-0004-3509-a02.dtb
./t186ref/tegra234-bpmp-3701-0000-as-3767-0000-3737-0000.dtb
./t186ref/tegra234-bpmp-3701-0000-as-3767-0003-3737-0000.dtb
./t186ref/tegra234-bpmp-3701-0005-as-3767-0004-3737-0000.dtb
./t186ref/tegra194-a02-bpmp-p2888-0005-a04.dtb
./t186ref/tegra234-bpmp-3701-0004-3737-0000.dtb
./t186ref/tegra234-bpmp-3767-0001-3509-a02-maxn.dtb
./t186ref/tegra234-bpmp-3701-0005-as-3767-0000-3737-0000.dtb
./t186ref/tegra194-a01-bpmp-p2888-a02.dtb
./t186ref/tegra194-a02-bpmp-p2888-0004-a04-mccoy.dtb
./t186ref/tegra194-a02-bpmp-p2888-0008-b01-jaxi-noecc.dtb
./t186ref/tegra234-bpmp-3767-0000-a02-as-3767-0003-3509-a02.dtb
./t186ref/tegra194-a02-bpmp-p2888-a01.dtb
./t186ref/tegra234-bpmp-3701-0005-as-3767-0001-3737-0000.dtb
./t186ref/tegra234-bpmp-3701-0002-3740-0002.dtb
./t186ref/tegra234-bpmp-3701-0000-as-3701-0004-3737-0000.dtb
./t186ref/tegra234-bpmp-3701-0008-3737-0000-maxn.dtb
./t186ref/tegra234-bpmp-3701-0005-as-3701-0004-3737-0000.dtb
./t186ref/tegra234-bpmp-3701-0002-3740-0002-b01.dtb
./t186ref/tegra234-bpmp-3767-0004-3509-a02.dtb
./t186ref/tegra194-a02-bpmp-p2888-a04-maxn.dtb
./t186ref/tegra194-a02-bpmp-p2888-0008-b01-jaxi.dtb
./t186ref/tegra194-a02-bpmp-p2888-a02.dtb
./t186ref/tegra234-bpmp-3701-0000-as-3767-0001-3737-0000.dtb
./t186ref/tegra234-bpmp-3767-0001-3509-a02.dtb
./tegra234-bpmp-3767-0004-3509-a02.dtb

  1. 麻煩完全不要使用jetson-orin-nano-devkit-nvme.
    要燒錄就用jetson-orin-nano-devkit. 做整機燒錄確保ODMDATA有燒對

  2. (1)做完之後把你的bootloader/tegra234-bpmp-3767-0004-3509-a02.dtb這一份用dtc解開之後附上來.

Hi,WayneWWW:
如果烧录不用jetson-orin-nano-devkit-nvme.会烧录失败,报错log提示找不到storage信息;
我使用的烧录命令:./flash.sh jetson-orin-nano-devkit external


后面我在论坛上看到使用jetson-orin-nano-devkit-nvme会成功,我将烧录命令改为:

./flash.sh jetson-orin-nano-devkit-nvme internal

确实烧录成功了,如果需要重新烧录,我再用论坛中看到的命令尝试重新烧写一下:

sudo ./tools/kernel_flash/l4t_initrd_flash.sh --external-device nvme0n1p1   -c tools/kernel_flash/flash_l4t_external.xml -p "-c bootloader/t186ref/cfg/flash_t234_qspi.xml"   --showlogs --network usb0 jetson-orin-nano-devkit internal

麻煩直接用你貼的那個initrd flash那個command進行燒錄.

Hi,WayneWWW:
使用l4t_initrd_flash.sh脚本烧录后,可以看得到C9的配置了。

root@nvidia-desktop:/sys/class/net# lspci
0001:00:00.0 PCI bridge: NVIDIA Corporation Device 229e (rev a1)
0001:01:00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8822CE 802.11ac PCIe Wireless Network Adapter
0004:00:00.0 PCI bridge: NVIDIA Corporation Device 229c (rev a1)
0004:01:00.0 Non-Volatile memory controller: Phison Electronics Corporation Device 5013 (rev 01)
0008:00:00.0 PCI bridge: NVIDIA Corporation Device 229c (rev a1)
0008:01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 15)
0009:00:00.0 PCI bridge: NVIDIA Corporation Device 229c (rev a1)
0009:01:00.0 Ethernet controller: Intel Corporation I210 Gigabit Unprogrammed (rev 03)
root@nvidia-desktop:/sys/class/net# cat /sys/kernel/debug/bpmp/debug/uphy/config 
0x03a40000


我们还要使用C7,请问这里lspci中是否C7 x1也被使能了?

你要把dmesg給出來才有辦法知道

Hi,WayneWWW:
new.log (67.5 KB)
上面文件是我抓取的dmesg信息。

[ 8.980484] tegra194-pcie 141e0000.pcie: Phy link never came up
[ 8.986663] tegra194-pcie 141e0000.pcie: PCI host bridge to bus 0007:00
[ 8.993481] pci_bus 0007:00: root bus resource [bus 00-ff]
[ 8.999120] pci_bus 0007:00: root bus resource [io 0x200000-0x2fffff] (bus address [0x3e100000-0x3e1fffff])
[ 9.009225] pci_bus 0007:00: root bus resource [mem 0x3228000000-0x322fffffff] (bus address [0x40000000-0x47ffffff])
[ 9.020064] pci_bus 0007:00: root bus resource [mem 0x2e40000000-0x3227ffffff pref]
[ 9.027991] pci 0007:00:00.0: [10de:229a] type 01 class 0x060400
[ 9.034311] pci 0007:00:00.0: PME# supported from D0 D3hot
[ 9.049260] pci 0007:00:00.0: PCI bridge to [bus 01-ff]
[ 9.054656] pci 0007:00:00.0: Max Payload Size set to 256/ 256 (was 256), Max Read Rq 512
[ 9.063649] pcieport 0007:00:00.0: Adding to iommu group 9
[ 9.069544] pcieport 0007:00:00.0: PME: Signaling with IRQ 59
[ 9.076369] pcieport 0007:00:00.0: AER: enabled with IRQ 59
[ 9.082369] pci_bus 0007:01: busn_res: [bus 01-ff] is released
[ 9.088479] pci 0007:00:00.0: Removing from iommu group 9
[ 9.094043] pci_bus 0007:00: busn_res: [bus 00-ff] is released

C7 controller已經是開著的狀態了

Hi,WayneWWW:
非常感谢您的耐心解惑,我们使能C9的目的是添加一路网口,我们选用的网卡IC是I210IT,我们购买了一个调试模组回来,将I210IT调试模组插到wifi模组的接口上,设备可以正常识别网口,现在我们自己设计的硬件上,将网卡模组设计连接到C9上,设备异常。

0001:00:00.0 PCI bridge: NVIDIA Corporation Device 229e (rev a1)
0001:01:00.0 Ethernet controller: Intel Corporation I210 Gigabit Network Connection (rev 03)
0004:00:00.0 PCI bridge: NVIDIA Corporation Device 229c (rev a1)
0004:01:00.0 Non-Volatile memory controller: Phison Electronics Corporation Device 5013 (rev 01)
0008:00:00.0 PCI bridge: NVIDIA Corporation Device 229c (rev a1)
0008:01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 15)
0009:00:00.0 PCI bridge: NVIDIA Corporation Device 229c (rev a1)
0009:01:00.0 Ethernet controller: Intel Corporation I210 Gigabit Unprogrammed (rev 03)

正如上面的log显示,0001中的是可以正常识别到的,但是0009中的有报错,他们使用的是同一个驱动,但是在0009上就无法正常工作。要想我们添加的这个网卡工作,C9是否还需要修改其他配置?
dmesglog:
dmesg1.log (68.4 KB)

Hi,

從你給出來的dmesg部分沒有看到任何C9有關的錯誤.

而且當你的lspci能讀到 “0009:01:00.0 Ethernet controller: Intel Corporation I210 Gigabit Unprogrammed (rev 03)” 的時候就代表pcie部分的設定已經結束了.

從裝置上的名字顯示成 “Unprogrammed (rev 03)” 我比較懷疑的是這個i210是不是有什麼firmware或是EEPROM需要預先使用Intel的tool進行programming才能使用?

比方說類似這個

Hi,WayneWWW:
非常感谢,如果设备不识别和平台没有关系,我们先自己查查看。