LV.13 D2 开发板启动流程 学习笔记
2023-12-14 00:15:50
一、开发板启动过程
EMMC:相当于电脑的外存,断电不丢失
????????开发板上电后首先运行SOC内部iROM中固化的代码(BL0),这段代码先对基本的软硬件环境(时钟等...)进行初始化,然后再检测拨码开关位置获取启动方式,然后再将对应存储器中的uboot搬移到内存,然后跳转到uboot运行
????????uboot开始运行后首先对开发板上的软硬件环境做进一步初始化,然后将linux内核、设备树(dtb)、根文件系统(rootfs)从外部存储器(或网络)搬移到内存,然后跳转到linux运行
设备树(dtb):存储硬件设备信息,linux和dtb加起来才是一个完整的Linux内核?
根文件系统(rootfs):根文件系统不属于linux,本质是一些文件,Linux运行之前需要用到这些文件。
????????linux开始运行后先对系统环境做初始化,当系统启动完成后,Linux再从内存中(或网络)挂载根文件系统?
地址映射表
? ? ? ? 一上电,芯片就会先执行IROM里的程序,这里就放着BL0,但是这段代码不是开源的我们不知道它写了什么。
0202 0000-0206 0000这段地址是三星设计的一块内存
1000 0000-1400 0000这段地址是特殊功能寄存器,之前裸机开发用到的寄存器大多在这段地址中。
4000 0000-A000 0000这1.5G是留给扩展内存的
A000 0000-FFFF FFFF这1.5G也是预留给扩展内存的
二、系统移植步骤
uboot移植 ?
linux内核移植(包含设备树) ?
根文件系统移植
文章来源:https://blog.csdn.net/djjyy/article/details/134907323
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!