imx6ull 内存资源
讯为终结者Linux开发板 i.MX6ULL cortex-A7 ARMv7
板载ram 和 rom
内置
资源 | 大小 | 范围 | 说明 |
---|---|---|---|
sram | 128 KB | 0x00900000 ~ 0x0091FFFF | OCRAM 类型RAM |
srom | 92 KB | 0x00000000 ~ 0x00016FFF | Boot ROM (Protected area) 用户不可编程 |
srom | 4 KB | 0x00017000 ~ 0x00017FFF | Boot ROM (ROMCP)用户不可编程 |
外扩
资源 | 大小 | 范围 | 说明 |
---|---|---|---|
DDR3 | 512 MB | 0x80000000 ~ 0xFFFFFFFF | 升级版的DRAM |
EMMC | 8 GB | 通过sdio接口访问,没有编址 | KLM8G1GET带闪存管理器的NAND Flash |
最终内存布局
在 uboot 运行后,DDR3上内存的最终布局如下下图所示(代码大小影响地址),内存情况被存储在 struct globd_data 中,后期传递给kernel 使用。
zImage 地址: 0x80800000
imx6ul_xxx.dtb 地址: 0x83000000
rootfs 地址: 0x83800000
uboot 烧录到 EMMC 上后,是最早被 OCRAM 中固化程序读取到 RAM 中的,此时 uboot 的链接地址和运行地址都在 #define CONFIG_SYS_TEXT_BASE 0x87800000,所以在被 OCRAM 读取到 RAM 中后可以直接运行,之后为了给 kernel 腾出空间会把自己重新重定位(包括动态符号表)到 EMMC 尾部地址上。
EMMC分区情况
/dev/mmcblk1p0 | /dev/mmcblk1p1 | /dev/mmcblk1p2 |
---|---|---|
分区表(前两个扇区) + uboot(第三个扇区) | kernel 内核和 dtb设备树 | rootfs根文件系统 |
EMMC三个分区:
- 0分区(/dev/mmcblk1boot0):0分区前两个块 (扇区 )保存着分区表,从第三块开始存放uboot;
- 1分区(/dev/mmcblk1p1):存放 Linux 内核 kernel 和 dtb 设备树;
- 2分区(/dev/mmcblk1p2):存放 rootfs 根文件系统;
本文链接:
/archives/1723131980894
版权声明:
本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自
以梦为马!
喜欢就支持一下吧