nvidia xavier nx平台禁用组合UART的问题
1. 前言
操作步骤如下:
bootloader/t186ref/BCT/tegra194-mb1-bct-misc-flash.cfg
-enable_combined_uart = 1;
-spe_uart_instance = 2;
+enable_combined_uart = 0;
+spe_uart_instance = 0xff;
bootloader/t186ref/BCT/tegra194-mb1-bct-misc-l4t.cfg
-enable_combined_uart = 1;
-spe_uart_instance = 0x2;
+enable_combined_uart = 0;
+spe_uart_instance = 0xff;
p3668.conf.common
-CMDLINE_ADD="console=ttyTCU0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0";
+CMDLINE_ADD="console=ttyTHS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0";
flash.sh
- CMDLINE_ADD="console=ttyTCU0,115200n8";
+ CMDLINE_ADD="console=ttyTHS0,115200n8";
common/tegra194-p3668-common.dtsi
- bootargs ="console=ttyTCU0,115200";
+ bootargs ="console=ttyTHS0,115200";
combined-uart {
console-port;
combined-uart;
- status = "okay";
+ status = "disabled";
};
修改完后使用
jetson-disk-image-creator.sh和flash开发SoM创建一个sdcard映像
板子就会启动并正常工作
但如果我尝试flash生产SoM,在刷机阶段会出现以下问题
[ 13.0009 ] Sending bootloader and pre-requisite binaries
[ 13.0022 ] tegrarcm_v2 --download blob blob.bin
[ 13.0033 ] Applet version 01.00.0000
[ 13.0183 ] Sending blob
[ 13.0185 ] [................................................] 100%
[ 13.7927 ]
[ 13.7960 ] tegrarcm_v2 --boot recovery
[ 13.7983 ] Applet version 01.00.0000
[ 13.8223 ]
[ 14.8264 ] tegrarcm_v2 --isapplet
如果我试图恢复
bootloader/t186ref/BCT/tegra194-mb1-bct-misc-flash.cfg中的更改
并在bootloader/t186ref/BCT/tegra194-mb1-bct-misc-flash.cfg
中保留以下更改并恢复其他更改
-enable_combined_uart = 1;
+enable_combined_uart = 0;
可以flash,但在引导期间出现以下问题
[0001.165] I> EKB detected (length: 0x410) @ VA:0x52714400
ipc-unittest-main: 1519: Welcome to IPC unittest!!!
ipc-unittest-main: 1531: waiting forever
ipc-unittest-srv: 329: Init unittest services!!!
hwkey-agent: 40: hwkey-agent is running!!
hwkey-agent: 182: key_mgnt_processing .......
hwkey-agent: 157: Init hweky-agent services!!
platform_bootstrap_epilog: trusty bootstrap complete
2. 参考Xavier上禁用组合uart修改方法
(1)更新misc配置文件
diff --git a/misc/tegra194-mb1-bct-misc.cfg b/misc/tegra194-mb1-bct-misc.cfg
@@ -105,8 +105,8 @@ aocluster.evp_reset_addr = 0xc480000;
enable_sce = 0;
enable_rce = 1;
enable_ape = 1;
-enable_combined_uart = 1;
-spe_uart_instance = 2;
+enable_combined_uart = 0;
+spe_uart_instance = 0xff;
(2)更新设备树禁用组合UART
+ serial@c280000 {
+ compatible = "nvidia,tegra20-uart";
+ clock-frequency = <0x18519600>;
+ console-port;
+ status = "okay";
+ /delete-property/ resets;
+ /delete-property/ reset-names;
+ };
+
serial@3140000 {
compatible = "nvidia,tegra186-hsuart";
status = "okay";
diff --git a/common/tegra194-p2888-0001-p2822-0000-common.dtsi b/common/tegra194-p2888-0001-p2822-0000-common.dtsi
@@ -34,7 +34,8 @@
compatible = "nvidia,galen", "nvidia,jetson-xavier", "nvidia,p2822-0000+p2888-0001", "nvidia,tegra194";
chosen {
- bootargs ="console=ttyTCU0,115200";
+ bootargs ="console=ttyS2,115200 earlycon=uart8250,mmio32,0x0c280000";
+ stdout-path = &uartc;
board-has-eeprom;
};
(3)内核命令行禁用组合UART
diff --git a/scripts/board_config/p2972-0000.conf.common b/scripts/board_config/p2972-0000.conf.common
ROOTFSSIZE=28GiB;
- CMDLINE_ADD="console=ttyTCU0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0 rootfstype=ext4";
+ CMDLINE_ADD="console=ttyS2,115200n8 console=tty0 fbcon=map:0 net.ifnames=0 rootfstype=ext4";
(4)将bpmp-dtb文件反汇编为文本进行修改
diff --git a/include/platforms/bpmp-p2888-a01.dtsi b/include/platforms/bpmp-p2888-a01.dtsi
@@ -6,7 +6,7 @@
#include "parts/uphy/tegra194-bpmp-p2888-uphy.dtsi"
#include "parts/emc-strap/emc-p2888.dtsi"
#include "parts/i2c/cvm-i2c-common.dtsi"
-#include "parts/policy/serial-3-comb-uart.dtsi"
+#include "parts/policy/serial-2-input.dtsi"
#include "parts/policy/mail-common.dtsi"
diff --git a/include/platforms/bpmp-p2888-a02.dtsi b/include/platforms/bpmp-p2888-a02.dtsi
@@ -6,7 +6,7 @@
#include "parts/uphy/tegra194-bpmp-p2888-uphy.dtsi"
#include "parts/emc-strap/emc-p2888.dtsi"
#include "parts/i2c/cvm-i2c-common.dtsi"
-#include "parts/policy/serial-3-comb-uart.dtsi"
+#include "parts/policy/serial-2-input.dtsi"
#include "parts/policy/mail-common.dtsi"
diff --git a/include/platforms/bpmp-p2888-a04.dtsi b/include/platforms/bpmp-p2888-a04.dtsi
@@ -6,7 +6,7 @@
#include "parts/uphy/tegra194-bpmp-p2888-uphy.dtsi"
#include "parts/emc-strap/emc-p2888.dtsi"
#include "parts/i2c/cvm-i2c-common.dtsi"
-#include "parts/policy/serial-3-comb-uart.dtsi"
+#include "parts/policy/serial-2-input.dtsi"
#include "parts/policy/mail-common.dtsi"
这个解决方案是为Xavier
试图将上述解决方案合并到Xavier NX
(tegra194-p3509-0000-a00.dtsi,
tegra194-p3668-common.dtsi,
tegra194-mb1-bct-misc-l4t.cfg,
tegra194-mb1-bct-misc-flash.cfg)
3. bpmp-dtb文件修改
这是配置BPMP固件禁用联合UART,
下面是将DTB文件反汇编为文本文件的命令,
例如
$ dtc -I dtb -O dts -o temp.dts tegra.dtb
可以从bpmp-dtb blob中排除下面的内容来禁用它
serial {
port = <0x3>;
has_input;
combined-uart {
enabled;
};
};
可以包括下面的添加串行2输入
/ {
serial {
port = <2>;
has_input;
};
执行命令将其转换为另一个新的DTB文件进行验证,
例如,
$ dtc -I dts -O dtb -o new-output.dtb temp.dts
按照上述流程执行
但Xavier Nx仍然卡在Init内核中
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 4.9.140 (user@user-HP-EliteDesk-800-G4-TWR) (gcc v0
[ 0.000000] Boot CPU: AArch64 Processor [4e0f0040]
[ 0.000000] OF: fdt:memory scan node memory, reg size 48,
[ 0.000000] OF: fdt: - 80000000 , 2c000000
[ 0.000000] OF: fdt: - ac200000 , 44600000
[ 0.000000] OF: fdt: - 100000000 , 180000000
[ 0.000000] earlycon: uart8250 at MMIO32 0x000000000c280000 (options ‘’)
[ 0.000000] bootconsole [uart8250] enabled
[ 0.000000] Found tegra_fbmem: 00140000@a069c000
[ 0.000000] Found lut_mem: 00002008@a0696000
卡住地方与添加到设备树地址0x000000000c280000的UART相关。
4. 修改p3668.conf.common
更新NX平台配置文件p3668.conf.common
可以参考jetson-xavier-nx-devkit.conf获取其配置文件
例如,
source "${LDK_DIR}/p3668.conf.common";
5. 总结
Jetson Xavier NX将三个uart带出主连接器;
有3个uart可用,UART0到M2;UART1 40-PIN;UART2调试。
可以访问NX产品设计指南,并检查Xavier NX uart引脚描述。
修改misc配置文件,告诉引导加载程序不要使用调试UART,
如果使用其他uart#作为调试UART
应该更改内核dts中的值也为bootparam和串行节点作为当前UART0。
- 分享
- 举报
-
浏览量:7179次2021-07-31 15:26:23
-
2021-05-06 16:03:00
-
浏览量:10848次2021-05-06 16:22:01
-
浏览量:8583次2021-05-14 14:43:43
-
浏览量:9456次2021-05-26 14:17:15
-
浏览量:7417次2021-05-11 17:51:48
-
浏览量:9407次2021-04-27 17:56:41
-
浏览量:7369次2021-05-27 16:16:56
-
浏览量:5249次2021-05-10 17:48:42
-
浏览量:7087次2021-05-11 17:04:57
-
浏览量:5038次2021-07-29 11:53:53
-
浏览量:7147次2021-07-29 14:18:58
-
浏览量:7481次2021-05-20 17:08:14
-
浏览量:9388次2021-05-25 17:31:40
-
浏览量:7084次2021-05-20 16:37:42
-
浏览量:7906次2021-05-25 15:32:16
-
浏览量:9219次2021-05-19 17:32:00
-
浏览量:5289次2021-07-09 15:20:08
-
浏览量:6225次2021-07-09 15:17:28
-
178篇
- NVIDIA Tegra K1设备包揽Futuremark 12月GPU榜单前三甲!
- CES 2015黄仁勋主题演讲:通往移动超级计算之路
- nvidia xavier nx平台GStreamer pipeline挂起问题调试1
- 两天精彩让你High翻天!NGF 2014观展指南
- Jetson Nano平台更改DP1上DisplayPort的设备树4
- 个性由你掌控!GeForce GTX LED灯光设置指南
- Denver版Tegra K1:首款Android系统64位处理器
- 性能惊人!NVIDIA GeForce GTX 780 GHz重装上阵
- xavier nx 平台 EQOS LAN端口连接异常问题调试1
- nvidia xavier nx平台SPI接口调试记录
-
广告/SPAM
-
恶意灌水
-
违规内容
-
文不对题
-
重复发帖
free-jdx
感谢您的打赏,如若您也想被打赏,可前往 发表专栏 哦~
举报类型
- 内容涉黄/赌/毒
- 内容侵权/抄袭
- 政治相关
- 涉嫌广告
- 侮辱谩骂
- 其他
详细说明