参考资料
xilinx wiki: https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/460653138/Xilinx+Open+Source+Linux
前置知识
zynq启动流程 (UG585,第六章)

BootRom
BootRom为一块只读存储器,里面程序一般出厂前或者流片前写死的,它主要负责从外部存储设备中读取启动镜像。(Ps:部分开发板引入了引脚启动机制,通过拨码开关,控制引导镜像的存储介质,BootRom也会根据引脚状态确定要引导镜像的位置)
BootRom从外部存储设备读取启动镜像后,通常将其加载到OCM中。
BootRom支持文件系统访问,支持FAT32,FAT16文件系统

BootROM负责:
上电复位以后,PS端即开始进行设置。在不使用JTAG的情况下,ARM将在片上的BootROM中开 始执行代码。BootROM中的代码对NAND、NOR、Quad-SPI、SD与PCAP的基本外设控制器进行 初始化,使得ARM核可以访问、使用这些外设。(而DDR等其他外设将在阶段1或者之后进行初始 化。)
BootROM读取MIO[2..8]的引脚设置来确定启动设备,将选定设备的头192Kbyte内容,也就是 FSBL,复制到OCM中,并将控制权交给FSBL。 FSBL启动时可以使用整块256Kb的OCM,当FSBL开始运行后,器件就正式由由用户控制了。
对于SD卡启动流程

懒得重新写了,直接看github吧GitHub
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |