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

接上一节:【ARM 裸机】I.MX 启动方式之启动头文件 1

2.3、DCD

DCD,Device Configuration Data ,就是配置 6ULL 寄存器的,DCD 数据最大限制 1768 字节;

CCGR0 是不是很熟悉?对,在写汇编驱动的时候配置过这个寄存器;

接下来会设置 DDR 初始化参数 ;

接下来会配置 MMDC(DDR 控制器),参看 I.MX6ULL 参考手册第 35 章;

2.4、其他的数据

检查数据命令,NOP 命令,解锁命令也都属于 DCD 数据,只是没有管它而已。

可以得出,DCD 里面的初始化配置主要包括三方面:设置 CCGR0~CCGR6 这 7 个外设时钟使能寄存器,默认打开所有的外设时钟;配置 DDR3 所用的所有 IO;配置 MMDC 控制器,初始化 DDR3;

在这一节:【ARM 裸机】汇编 led 驱动之烧写 bin 文件 中说到,我们编译出来的 .bin 文件不能直接烧写到 SD卡中,需要在.bin 文件前面加上 IVT、BOOT DATA 和 DCD 这三个数据块,这三个数据块是有指定格式的,必须按照格式填写,然后将其放到 .bin 文件前面,最终合成的文件才是直接烧写到 SD 卡中的文件。

相关推荐
大鱼>1 小时前
eBPF内核编程:从TC到XDP的全栈可观测性
linux·服务器·php
sxstj1 小时前
老旧电脑 Linux 系统完整推荐(按内存分档,新手友好)
linux
Lyra_Infra2 小时前
OpenClaw 服务异常故障分析报告
linux·人工智能
weixin_424381003 小时前
IAR EW for Arm - IAR命令行
arm开发
冷莫溪4 小时前
Zabbix——认识及部署Zabbix(基于Rocky9.7)
linux·运维·php·zabbix
风曦Kisaki4 小时前
Kubernetes(K8s)笔记Day03: Pod命名空间,标签,Pod 的调度,污点与容忍度,Pod 常见状态和重启策略,Pod 生命周期
linux·运维·笔记·docker·云原生·容器·kubernetes
xuhe24 小时前
一劳永逸!解决 AutoDL 系统盘(30GB)爆满与 pip 缓存迁移
linux·python·ai·jupyter
学无止境_永不停歇4 小时前
9. 缓冲区
linux·服务器·c++
dok124 小时前
Johannes 《Linux内核模块与设备驱动开发:编写Linux驱动程序》(4) devicefile 设备号相关
linux·运维·服务器
Fu2067215 小时前
结课项目考试
linux·运维·服务器