【ARM 裸机】I.MX 启动方式之启动头文件 1

接上一节:【ARM 裸机】I.MX 启动方式之启动设备的选择

2、启动头文件

当 BOOT_MODE1 为 1,BOOT_MODE0 为 0 的时候此内部 BOOT 模式,在此模式下,芯片会执

行内部的 BOOT ROM 代码,这段 BOOT ROM 代码会进行硬件初始化(一部分外设),然后从 BOOT 设备(就是存放代码的设备、比如 SD/EMMC、NAND)中将代码拷贝出来复制到指定的 RAM 中,一般是 DDR。

2.1、BOOT ROM 做什么

设置内核时钟频率为 396 MHz,使能 MMU 和 Cache,使能 MMU 和 L1 Cache 和 L2 Cache 是为了加速启动;另外还要从 BOOT_CFG 设置的存储中,读取 image,然后做相应的处理;

2.2、IVT 和 BOOT DATA

之前说,bin 文件前面会添加一个头部,我们烧写的 load.imx 文件在 SD卡上的起始地址 0x400,也就是 1024;

头部的大小是 3 KB,加上偏移的 1 KB,一共是 4 KByte,因此 bin 文件在 SD卡上的起始地址为 4096;IVT 的大小为 32 个字节,8 条;



相关推荐
阿拉伯柠檬1 小时前
网络层协议IP(三)
linux·网络·网络协议·tcp/ip·面试
Miracle&2 小时前
在Linux VirtualBox中安装系统失败
linux·运维·服务器
hweiyu002 小时前
Linux 命令:ar
linux·运维
江畔何人初2 小时前
理解容器挂载点
linux·运维·云原生
YMWM_2 小时前
cursor连接Ubuntu远程
linux·运维·ubuntu
Python-AI Xenon2 小时前
RHEL/CentOS 7.9环境中离线安装Telnet服务完整指南
linux·运维·telnet·rhel7.9
Trouvaille ~2 小时前
【Linux】进程信号(三):信号捕捉与操作系统运行原理
linux·运维·服务器·c++·操作系统·信号·中断
zl_dfq3 小时前
Linux 之 【进程间通信】(消息队列与信号量、Systrm VIPC在内核中数据结构设计)
linux
木卫二号Coding3 小时前
Docker-构建自己的Web-Linux系统-镜像colinchang/ubuntu-desktop:22.04
linux·ubuntu·docker
维度攻城狮3 小时前
Ubuntu突然无法中文输入的问题解决办法
linux·运维·ubuntu