[文章]Hi3861系统LoaderBoot启动流程及与Hiburn交互

阅读量0
2
5
Hi3861系统启动大体流程如下:
企业微信截图_16316202959352.png

        其中启动liteOs之前还有RomBoot,LoaderBoot,FlashBoot三个阶段,RomBoot是固化在芯片内部看不到代码,LoaderBoot和FlashBoot可以看到代码,今天分析一下LoaderBoot代码,LoaderBoot被加载运行后,负责与HiBurn交互进行操作系统固件的烧录工作。
       LoaderBoot的入口函数在如下汇编文件中:
企业微信截图_16316208468488.png

start_loaderboot是主要启动函数,负责一些一些硬件的初始化和命令处理的功能,然后进入一个死循环,命令处理就是与HiBurn的交互,可以看到如下打印语句是和HiBurn运行时一样的。

企业微信截图_1631621199304.png

企业微信截图_16316210578525.png

然后看一下HiBurn与LoaderBoot的命令与处理函数如下:
企业微信截图_16316213232867.png

这是一个函数二维数组,根据指定的命令进行相应的处理,其中loader_download_image就是下载烧录固件的函数。
最后调用loader_serial_ymodem函数下载可以看到采用的时
ymodem协议。
企业微信截图_1631621447418.png



回帖

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。 侵权投诉
链接复制成功,分享给好友