1、Linux的调试串口是u-boot指定的,通过bootargs参数指定哪个串口是调试串口,默认配置的就是uart2
![RV1126 串口篇与uboot的启动逻辑-串口烧写uboot RV1126 串口篇与uboot的启动逻辑-串口烧写uboot](http://ebaina.oss-cn-hangzhou.aliyuncs.com/res/images/202304/14/new_20230414-173136-543.png)
在这里可以看到
![RV1126 串口篇与uboot的启动逻辑-串口烧写uboot1 RV1126 串口篇与uboot的启动逻辑-串口烧写uboot1](http://ebaina.oss-cn-hangzhou.aliyuncs.com/res/images/202304/14/new_20230414-173205-652.png)
2、uboot的启动逻辑可以在rk.log文件中看到
![RV1126 串口篇与uboot的启动逻辑-串口烧写uboot2 RV1126 串口篇与uboot的启动逻辑-串口烧写uboot2](http://ebaina.oss-cn-hangzhou.aliyuncs.com/res/images/202304/14/new_20230414-173311-789.png)
RV1126的u-boot启动流程概述:
芯片硬件复位:当RV1126上电或接受软件复位信号时,芯片会进入硬件复位状态。
芯片内置Boot ROM:RV1126内置Boot ROM,用于从外部存储器中加载启动软件(多为u-boot或操作系统内核)到内部SRAM中执行。Boot ROM会在芯片复位后自动运行,并根据芯片引脚的配置判断启动模式。
载入u-boot:当Boot ROM确定使用第二存储器(通常为闪存)启动时,会从闪存中加载u-boot到内部SRAM,并跳转到u-boot的入口地址。此时,u-boot就接管了芯片的控制权。
初始化硬件:u-boot会初始化DDR等外设硬件,使其能够正常工作,并申请内存、存储器等资源。
载入操作系统内核:根据配置文件中的信息,在u-boot中加载操作系统内核(例如Linux内核)到内存中,并跳转到内核的入口地址,将控制权交给操作系统内核。