S5PV210 启动流程
S3C6410启动流程
首先,看一下S3C6410启动流程
① iROM supports initial boot up : initialize system clock, D-TCM, device specific controller and booting device.
② iROM boot codes can load 4KB of bootloader to stepping stone. The 8KB boot loader is called BL1.
③ BL1: BL1 can initialize system clock, UART, and SDRAM for user. After initializing, BL1 will load remaining boot loader which is called BL2 on the SDRAM
④ Finally, jump to start address of BL2. That will make good environment to use system.① 初始化时钟等
② 如果是nandflash启动,nandflash控制器会把nandflash的前4k区域,拷贝到内置SRAM(大小4k)
③ BL1这4k,可以初始化系统时钟,UART,和SDRAM。初始化完成以后,会拷贝BL2到SDRAM中
④ 跳转到BL2的加载地址。再将OS拷贝到SDRAM,跳转到OS的加载地址
S5PV210启动流程
增加了iROM大小,增加了内置SRAM大小
BL1 max. size is 16KB. BL2 max. size is 80KB
① iROM can do initial boot up : initialize system clock, device specific controller and booting device.
② iROM boot codes can load boot-loader to SRAM. The boot-loader is called BL1. then iROM verify integrity of BL1 in case of secure boot mode.
③ BL1 will be executed: BL1 will load remained boot loader which is called BL2 on the SRAM then BL1 verify integrity of BL2 in case of secure boot mode.
④ BL2 will be executed : BL2 initialize DRAM controller then load OS data to SDRAM.
⑤ Finally, jump to start address of OS. That will make good environment to use system.① …
② iROM拷贝BL1到SRAM中
③ BL1加载,并拷贝BL2到内置SRAM中
④ BL2加载,并拷贝OS到SDRAM中
⑤ 跳转到OS的加载地址
Memory Map
As BL1 doesn’t need header information through UART/USB boot mode, BL1’s code base address is 0xd002_0000. In other cases except UART/USB boot mode, BL1 should have header information and It’s code base address is 0xd0020010
如果是SD卡启动,BL1的起始地址是0xd0020010。前4个字节中,校验码是必须的,也就是BL1数据(16KB-16Byte)的校验和
S5PV210 启动流程的更多相关文章
- 【嵌入式开发】 Bootloader 详解 ( 代码环境 | ARM 启动流程 | uboot 工作流程 | 架构设计)
作者 : 韩曙亮 博客地址 : http://blog.csdn.net/shulianghan/article/details/42462795 转载请著名出处 相关资源下载 : -- u-boo ...
- [project X] tiny210(s5pv210)上电启动流程(BL0-BL2)
建议参考文档: S5PV210-iROM-ApplicationNote-Preliminary-20091126 S5PV210_UM_REV1.1 项目介绍参考 [project X] tiny2 ...
- (七)u-boot2013.01.01 for s5pv210:《u-boot启动流程》
转载请注明地址:http://blog.csdn.net/zsy2020314/article/details/9824035 1.关于启动流程 1.1 启动阶段分为3个,bl0,bl1,bl2.下面 ...
- [project X] tiny210(s5pv210)上电启动流程(BL0-BL2)(转)
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/ooonebook/article/det ...
- ARM启动流程
S3C2440支持两种启动方式:norflash启动和nandflash启动. 一.norflash启动 NOR Flash 的特点是芯片内执行(XIP ,eXecute In Place),这样应用 ...
- [uboot] (第五章)uboot流程——uboot启动流程
http://blog.csdn.net/ooonebook/article/details/53070065 以下例子都以project X项目tiny210(s5pv210平台,armv7架构)为 ...
- Uboot启动流程分析(转载)
最近一段时间一直在做uboot移植相关的工作,需要将uboot-2016-7移植到单位设计的ARMv7的处理器上.正好元旦放假三天闲来无事,有段完整的时间来整理下最近的工作成果.之前在学习uboot时 ...
- Part4_lesson2---ARM处理器这个硬件启动流程分析
1.启动方式 s3c2440:可以从Nor flash启动,Nor flash一般是2MB:也可以从Nandflash启动,它一般是256MB,我们习惯上把我们的uboot,内核以及文件系统都放到Na ...
- 常见SOC启动流程分析
本文以s5pv210这款SOC为例,分析了其启动流程 在s5pv210的SOC内部,存在着一个内部的ROM和一个内部的RAM 这个内部的ROM叫做 IROM,它是norflash的一种.其不同于板子上 ...
随机推荐
- 【Linux】 新建用户并授权
一.创建新用户 1.创建一个新用户:laofan [root@localhost ~]# adduser laofan 2.为新用户创建初始化密码 [root@localhost~]# passwd ...
- 基于Python的WEB接口开发与自动化测试 pdf(内含书签)
基于Python的WEB接口开发与自动化测试 目录 目 录O V目 录章 Python 学习必知 ................................................... ...
- 深入理解JVM+G1+GC.pdf (中文版带书签)
目录 序 VII前言 IX 第1章 JVM & GC基础知识 11.1 引言 21.2 基本术语 31.2.1 Java相关术语 41.2.2 JVM/GC通用术语 241.2.3 G1涉及术 ...
- LODOP打印table不切行TableRowThickNess
不切行的调整方法有三种:1.简单表格,不嵌套合并等,可以用ADD_PRINT_TABLE输出,该 语句不切行,相关博文:LODOP设置超文本不自动分页的方法.2.进入打印设计,调整打印项到合适的高度, ...
- 【Leetcode_easy】868. Binary Gap
problem 868. Binary Gap solution1: class Solution { public: int binaryGap(int N) { ; vector<int&g ...
- Shell脚本运行报错Bad substitution解决办法
环境Ubuntu18.4.02 脚本运行报错 # sh test.sh test.sh: 2: test.sh: Bad substitution 原因 从 ubuntu 6.10 开始,ubuntu ...
- stochastic noise and deterministic noise
在机器学习中,导致overfitting的原因之一是noise,这个noise可以分为两种,即stochastic noise,随机噪声来自数据产生过程,比如测量误差等,和deterministic ...
- Ansible-Ad_Hoc临时命令的使用
Ad_Hoc临时命令的使用 1.使用场景: 所有的临时获取信息的都可以使用,比如节前健康检查.临时更新配置文件. 2.用法: ansible -i 主机 -m 模块 选项 3.常用的命令选项: -v ...
- Spring初解
1,关于spring容器: spring容器是Spring的核心,该 容器负责管理spring中的java组件, ApplicationContext ctx = new ClassPathXmlA ...
- LeetCode 941. 有效的山脉数组(Valid Mountain Array)
941. 有效的山脉数组 941. Valid Mountain Array 题目描述 给定一个整数数组 A,如果它是有效的山脉数组就返回 true,否则返回 false. 让我们回顾一下,如果 A ...