Raspberry Pi 启动流程

译自:http://www.raspberrypi.org/phpBB3/viewtopic.php?f=7&t=2008

参考:https://github.com/dwelch67/raspberrypi

有文档说明的启动流程实际上是:
1)上电
2)GPU开始从ROM执行一些代码,没人能修改这些代码(注:估计是基金会的地盘)
3)GPU从SD卡读取第一个FAT32分区
4)GPU从SD卡第一个FAT32分区的根路径中加载bootcode.bin和start.elf。
5)GPU还会从这个位置查找config.txt文件,这个文件可以用于修改arm主频,修改加载kernel.img的位置等配置信息
6)GPU读取kernel.img,并拷贝到内存中
7)最后GPU触发arm芯片复位,跳转到内核镜像执行

GPU和ARM是共享内存的,可以在config.txt中配置。从ARM的角度来看,kernel.img文件默认加载到0x8000地址。当然这个地址也是可以配置的。

注:

GPU在rpi里角色不少,实际上承担了一些bootloader的作用。

posted @ 2013-09-19 10:59  行者真无疆  阅读(639)  评论(0)    收藏  举报