i.mx6 linux启动流程分析.pdf

  1. 1、本文档共39页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
i.mx6 linux启动流程分析

I.MX6 LINUX 启动流程分析 2014/07/25 主要内容 i.MX6Q芯片启动流程 u-boot启动流程 linux内核启动流程 文件系统,服务程序启动流程 I.MX6Q功能框图 I.MX6 IROM和IRAM地址映射 I.MX6Q BOOT ROM i.MX6 Boot ROM有以下功能: 支持从以下设备启动: 支持从多种存储设备启动  Nor Flash  串行下载(USB OTG)  NAND Flash 芯片相关功能模块配置 OneNAND Flash (DCD) SD/MMC 数字签名认证 Serial ATA(SATA) HDD 从低功耗模式唤醒 Serial (I2C/SPI) Nor Flash and EEPROM BOOT ROM启动模式 三种模式 00 :读取熔丝位决定启动方式 01 :USB下载模式 10 :内部ROM执行启动流程 SPI FLASH启动模式 I.MX6Q PROGRAM IMAGE i.MX6Q Program Image :用户编译完成的程序镜像文件,这里指 u-boot Program Image包含四部分:  Image Vector Table(IVT) 内部ROM从IVT中读出需要的数据来启动芯片,是一个数据结构  Boot data 一张指向映像地址、映像大小的表  Device configuration data 包含芯片相关硬件初始化的寄存器地址和初始值  User code and data 用户代码和数据,这里指真正意义的u-boot代码和数据段 IVT IMAGE VECTOR TABLE 从SPI FLASH启动流程 SPI i.MX6 检查映像 执行硬件 拷贝u-boot映像 FLASH 内部RAM 合法性 初始化 到外部RAM 代码阅读 U-BOOT 两个阶段 分为两个启动阶段 第一阶段(汇编实现) 第二阶段(C语言)  硬件设备初始化,CPU设置为  硬件设备初始化 SVC32管理模式  …  关闭I/D Cache,关闭MMU  关闭二级缓存L2 Cache  设置好栈指针  调转到第二阶段的C入口函数 start_armboot U-BOOT 启动第一阶段 第一阶段重要文件  Makefile (make mx6q_sabresd_config3332行)  include\configs\mx6q_sabresd.h (u-boot配置文件)  include\config.h (make自动生成)  board\freescale\mx6q_sabresd\config.mk  board\freescale\mx6q_sabresd\flash_header.S cpu\arm_cortexa8\start.S  board\freescale\mx6q_sabresd\lowlevel_init.S  board\freescale\mx6q_sabresd\u-boot.lds (链接脚本) U-BOOT MEMORY MAP U-BOOT 启动第二阶段 第二阶段  lib_arm\board.c (入口)  。。。 U

文档评论(0)

yaocen + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档