Raspberry Pi 启动流程

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

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

有文档说明的启动流程其实是:
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芯片复位,跳转到内核镜像执行github

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

注:code

GPU在rpi里角色很多,实际上承担了一些bootloader的做用。内存

相关文章
相关标签/搜索