大家好,
我正在尝试启动一块使用LPUART8作为控制台的板子,但 i.MX93 EVK 套件中的默认控制台是 LPUART1 。所以我修改了u-boot dts、linux-imx dts、imx93_evk.c 和 imx93_evk.h文件。
但是无法查看串口日志,我使用 EVK 套件J1001 接头引脚 32 和 33进行了检查,它们是 LPUART8 的 ALT 模式。这种配置也不行。请告知需要进行的更改以及更改路径。
谢谢
罗比
嗨@AldoG ,
我们还使用了LPUART8
问题是,启用 Optee 调试后,开发板卡死,无法启动,CFG_TEE_CORE_LOG_LEVEL=3
U-Boot SPL 2024.04(2026 年 3 月 27 日 - 04:41:39 +0000)
SOC:0xa1009300
LC:0x2040010
PMIC:过驱动电压模式
Vx读取计数(2728)大于Vx阈值(1763),继续启动
DDR:3733MTS
M33 准备就绪
正常启动
尝试从 BOOTROM 启动
启动阶段:主启动
图像偏移量 0x0,页面大小 0x200,ivt 偏移量 0x0
通过 ROM_API 从 0x54000 加载镜像
谢谢,此致敬礼!
Rak**bleep**h
你好,
很高兴它现在可以正常工作了,至于图像兼容性,我认为不行,因为即使处理器实际上是另一个处理器的降级版,也需要为 i.MX91 创建自己的图像,但您可以重复使用几乎所有的更改。
此致敬礼/Saludos,
阿尔多。
谢谢@AldoG ,
现在可以正常运行了。i.mx93 镜像是否可与 imx91 镜像兼容?
谢谢!
罗比。
你好,
你的所有更改都是正确的,你缺少一些配置,无法在外部设备上启用时钟,因为在启动时,默认情况下时钟是关闭的。
在 /arch/Arm/mach-imx/imx9/native/clock.c
在 mxc_get_clock(enum mxc_clock clk) 函数中添加:
返回 ccm_clk_root_get_rate(LPUART8_CLK_ROOT);
在 void init_uart_clk(u32 index) 函数中添加:
case LPUART8_CLK_ROOT:
/* 24M */
ccm_lpcg_on(CCGR_URT8, false);
ccm_clk_root_cfg(LPUART8_CLK_ROOT, OSC_24M_CLK, 1);
ccm_lpcg_on(CCGR_URT8, true);
休息;
另请参阅板 /freescale/imx93_evk/imx93_evk.c
在函数 int board_early_init_f(void) 中添加:
init_uart_clk(LPUART8_CLK_ROOT);
这些更改已由同事完成并测试,在 EVK 上运行正常。
此致敬礼/Saludos,
阿尔多。
谢谢@AldoG ,
对于响应,i.MX93 EVK 使用 LPUART1 作为默认控制台端口,但我的定制板配置为使用 LPUART8。我需要将控制台从 LPUART1 更改为 LPUART8,并在 J1001 头文件中进行检查。为此,我做了以下修改:
u-boot-imx:
linux-imx:
添加了 lpuart8 节点,并禁用了 lpuart1 和 iomux。
imx-atf:
/include/platform_def.h 文件中的 IMX_LPUART_BASE 从 U(0x44380000) 更改为 U(0x426a0000)。
元尺度:
在 /conf/machine/imx93-11x11-lpddr4x-evk.conf 中更改 SERIAL_CONSOLES = "115200;ttyLP7",该文件包含头文件 /conf/machine/include/imx93-evk.inc。
optee-os:
将 set(CFG_UART_BASE UART1_BASE) 改为 set(CFG_UART_BASE UART8_BASE)。
如需更多信息,请添加包含更改图片的压缩文件夹。请仔细阅读并告知我最新情况。
谢谢!
罗比
谢谢
罗比
你好,
能否分享一下您所做的更改,以便我检查是否正确?
另外,请分享一下您正在使用的Linux版本。
此致敬礼/Saludos,
阿尔多。