AM335x平台:修改调试串口流程详解

需积分: 45 9 下载量 34 浏览量 更新于2024-08-06 收藏 400KB PDF 举报
"本文主要介绍了在AM335x平台上如何修改调试和打印串口,特别是在引导SPL、Uboot、Kernel期间。针对TI的Processor SDK 3.0和EZSDK 6.0,提供了详细的修改流程。文章指出,虽然默认情况下UART0被设置为调试串口,但有时需要根据项目需求进行更改。" 在AM335x平台上,有六个物理串口(UART0到UART5)可供使用,这对于大多数项目来说已经足够。如果需要更多串口,可以利用带PRU的AM335x芯片,通过PRU模拟额外的串口。然而,对于那些需要改变默认调试串口的项目,尤其是当遇到引脚复用或冲突时,修改串口配置就显得尤为重要。 在Processor SDK 3.0中,修改SPL串口打印的步骤相对复杂。首先,当构建uboot时,`makefile`会根据`Kconfig`(位于`board\ti\am335x`目录下)生成`autoconf.h`文件。这个文件包含了各种宏定义,其中`CONFIG_CONS_INDEX 1`定义了UART0为SPL的串口设备。若要更改此设置,需编辑`Kconfig`,特别是与串口选择相关的部分。例如,如果要使用UART1,将`default 1`更改为`default 2`。 对于EZSDK 6.0,修改SPL和U-boot串口的步骤相对简单。这里,`makefile`在构建过程中会调用`mkconfig`,根据`boards.cfg`生成`config.h`。要修改串口,只需在`boards.cfg`中找到对应的板卡类型(如`am335x_evm`),并更新`SERIAL`和`CONS_INDEX`的值。例如,将`SERIAL1,CONS_INDEX=1`更改为`SERIAL2,CONS_INDEX=2`,以使U-boot使用UART1。 除了修改配置文件,还可能需要更新板级支持包中的`mux.c`文件,确保正确配置了所需串口的引脚复用。在`board\ti\am335x`目录下的`mux.c`文件中,找到与新选中串口相关的代码,并做相应调整,以使串口在硬件层面上能够正常工作。 总结来说,修改AM335x平台上的调试串口涉及对配置文件的修改,如`Kconfig`或`boards.cfg`,以及可能的硬件配置调整,如`mux.c`。这个过程在不同版本的SDK中可能会有所不同,因此理解这些差异并准确进行修改是关键。希望这些详细步骤能帮助开发者顺利地在引导过程中切换串口打印调试信息。