• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

Efronc

  • 博客园
  • 联系
  • 管理

公告

2012年3月1日

u-boot_smdkv210 分析六:内存分配

摘要: 1.内存分配图(引用网络图片)2.u-boot映像的地址0并非指物理地址0,由不同的启动方式映射到不同的地址。例如v210是映射到0xD0000000处的irom。3.TEXT_BASE等指向SDRAM的地址均为虚拟地址。4.TEXT_BASE为顶层Makefile中定义的,例如三星官方BSP中定义的是0xC3E00000,它是程序实际的链接首地址。5.SDRAM_BASE被MMU映射在0xC0000000。6._end和__bss_start为链接脚本文件中最后定义的bss段,在链接时确定,并与u-boot映像编译在一起。7.在bl1段运行时,u-boot映像被复制到TEXT_BASE开始的 阅读全文

posted @ 2012-03-01 21:21 Efronc 阅读(3104) 评论(0) 推荐(1)

u-boot_smdkv210 分析五:硬件启动过程

摘要: 1.上电启动位于地址空间0xD0000000的是irom和iram。由于地址0为Mirrored region depending on the boot mode. 所以启动后直接进入0xD0000000运行。irom中存储的是三星固化的一段64k的启动代码,这段代码又称bl0,完成基本的初始化后读取启动选取引脚设置,将相应存储器的8k的bl1段代码复制到iram中并运行。2.运行bl1bl1为用户编写的启动代码。此处使用u-boot,即u-boot的最开始运行的启动代码。这段代码位于u-boot的开始,完成clk、dram、nand、MMU、串口等基本的初始化,并将完整的u-boot复制到 阅读全文

posted @ 2012-03-01 20:08 Efronc 阅读(1543) 评论(0) 推荐(1)

u-boot_smdkv210 分析四:启动代码汇编部分总结

摘要: 1.进入管理模式2.禁用cache3.清空cache4.使能cache5.禁止TLB6.禁止指令cache7.禁止MMU和cache8.读取启动信息9.将启动信息分析后写入reg中10.进入lowlevel.s11.读取复位标志,如果是唤醒跳过硬件初始化12.关闭看门狗13.配置sram引脚14.配置PMIC引脚15.判断是否在ram中运行,是的话跳过16-1816.PMIC初始化17.系统时钟初始化18.dram控制器初始化cpu_init.s19.串口汇编初始化,打印'O'20.取消存储保护区域21.onenand初始化22.nand初始化23.关闭ABB24.打印' 阅读全文

posted @ 2012-03-01 19:12 Efronc 阅读(1314) 评论(0) 推荐(2)

 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3