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 启动流程的更多相关文章

  1. 【嵌入式开发】 Bootloader 详解 ( 代码环境 | ARM 启动流程 | uboot 工作流程 | 架构设计)

    作者 : 韩曙亮 博客地址 : http://blog.csdn.net/shulianghan/article/details/42462795 转载请著名出处 相关资源下载 :  -- u-boo ...

  2. [project X] tiny210(s5pv210)上电启动流程(BL0-BL2)

    建议参考文档: S5PV210-iROM-ApplicationNote-Preliminary-20091126 S5PV210_UM_REV1.1 项目介绍参考 [project X] tiny2 ...

  3. (七)u-boot2013.01.01 for s5pv210:《u-boot启动流程》

    转载请注明地址:http://blog.csdn.net/zsy2020314/article/details/9824035 1.关于启动流程 1.1 启动阶段分为3个,bl0,bl1,bl2.下面 ...

  4. [project X] tiny210(s5pv210)上电启动流程(BL0-BL2)(转)

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/ooonebook/article/det ...

  5. ARM启动流程

    S3C2440支持两种启动方式:norflash启动和nandflash启动. 一.norflash启动 NOR Flash 的特点是芯片内执行(XIP ,eXecute In Place),这样应用 ...

  6. [uboot] (第五章)uboot流程——uboot启动流程

    http://blog.csdn.net/ooonebook/article/details/53070065 以下例子都以project X项目tiny210(s5pv210平台,armv7架构)为 ...

  7. Uboot启动流程分析(转载)

    最近一段时间一直在做uboot移植相关的工作,需要将uboot-2016-7移植到单位设计的ARMv7的处理器上.正好元旦放假三天闲来无事,有段完整的时间来整理下最近的工作成果.之前在学习uboot时 ...

  8. Part4_lesson2---ARM处理器这个硬件启动流程分析

    1.启动方式 s3c2440:可以从Nor flash启动,Nor flash一般是2MB:也可以从Nandflash启动,它一般是256MB,我们习惯上把我们的uboot,内核以及文件系统都放到Na ...

  9. 常见SOC启动流程分析

    本文以s5pv210这款SOC为例,分析了其启动流程 在s5pv210的SOC内部,存在着一个内部的ROM和一个内部的RAM 这个内部的ROM叫做 IROM,它是norflash的一种.其不同于板子上 ...

随机推荐

  1. flutter的 图片组件基本使用

    import 'package:flutter/material.dart'; void main() { runApp(MyApp()); } class MyApp extends Statele ...

  2. 【Tomcat】Tomcat 配置开机启动

    参考:[Linux]开机自动启动脚本 环境:Linux环境(CentOS 7.4) 步骤 1.在/etc/rc.d/rc.local文件底部,添加内容: # apache-tomcat- /data/ ...

  3. k8s-基础环境配置(六)

    hostname配置1)修改主机名hostnamectl set-hostname xxx2)加入主机映射vim /etc/hosts……关闭selinuxsed -i '/^SELINUX/s/=. ...

  4. Java Sound Capture from Microphone working code

    转载自:http://ganeshtiwaridotcomdotnp.blogspot.com/2011/12/java-sound-capture-from-microphone.html Soun ...

  5. [ kvm ] 学习笔记 4:KVM 高级功能详解

    1. 半虚拟化驱动 1.1 virtio 概述 KVM 是必须使用硬件虚拟化辅助技术(如 Intel VT-x .AMD-V)的 Hypervisor,在CPU 运行效率方面有硬件支持,其效率是比较高 ...

  6. log4net使用简明教程,快看看哟

    在项目当中经常会遇到各种各样的问题,如何可以尽快找到问题,那么就只能靠日志了,所以一个系统的日志是否完备合理就尤为重要. 在日志管理插件中log4net相当流行,下面就简单说明一下使用方法. log4 ...

  7. 【Anaconda】关于conda使用环境未被激活的问题

    前言 在win10系统中安装Anaconda,并创建虚拟环境,但是不明白为什么切换环境之后并未激活要使用的虚拟环境. conda常用命令 activate // 切换到base环境 activate ...

  8. kubectl exec 执行 容器命令

    格式如下: kubectl exec -it podName -c containerName -n namespace -- shell comand 1 创建目录 kubectl exec -it ...

  9. Adaptive Compressive Tracking via Online Vector Boosting Feature Selection(ACT算法解读)

  10. Extjs locked无效,使用enableLocking即可

    一.前言 在使用 extjs 做表格时,由于表格的列太多,我们需要设置一些固定列来查看数据,所以我们需要用到 locked 属性.普通加载 columns 的列是有效的,如果是动态加载的话,使用 lo ...