找回密码
 注册
搜索
查看: 1301|回复: 7

[讨论] MTK启动问题~!

[复制链接]
发表于 2010-4-1 09:31:39 | 显示全部楼层 |阅读模式
哪位高人能给解释一下MTK中bootloader那个目录是干什么用的?
代码中引导系统的好像是init目录中的bootarm.s这个汇编文件实现的~!
发表于 2010-4-7 15:40:17 | 显示全部楼层
学习中.[em01]
点评回复

使用道具 举报

发表于 2010-4-11 17:13:55 | 显示全部楼层
回个帖,赚点分!
没有生成bootloader
这个目录,最终编译不过
点评回复

使用道具 举报

发表于 2010-10-21 11:31:19 | 显示全部楼层
学习学习
点评回复

使用道具 举报

发表于 2010-10-21 13:19:14 | 显示全部楼层
BOOT顺序
在系统复位之后,ARM7EJ - S核心从最低的内存地址00000000h开始执行指令。它的设计有一个能代替BOOT代码的动态映射结构,外部FLASH或外部SRAM使用内存块0000_0000h - 07ff_ffffh的地址 。
默认情况下,在IBOOT为”0”的状态下,BOOT代码将映射到0000_0000h -0 7ff_ffffh 。但是,这种配置可以通过在系统复位之前改变IBOOT的状态来改变,或通过直接编程EMI_REMAP寄存器RM1位的值来改变。
MT6226系统提供两种开机方法:
        启动系统后从工厂编程BOOT代码运行指令。
        启动系统后从外部FLASH或ROM设备运行指令。
BOOT CODE
如下所示,BOOT CODE只包含两句的指令,并连续放置在重新映射的外部存储器控制器当中。
地址      二进制          汇编指令
00000000h   E51FF004h          LDR PC, 0x4
00000004h   48000000h          (DATA)
工厂编程
配置工厂编程状态在图11 。通常是工厂编程的主机通过的UART接口连接到MT6226。为了指示它正常的运行,系统从BOOT代码引导开机。这时,IBOOT应接地。在微控制器是运行在26MHZ时,下载速度可达到921K BPS。
该系统复位之后,BOOT代码将指引处理器运行放置在系统的ROM工厂编程软件。然后, MT6226将开始搜索UART1端口,直到收到有效的指令。从UART1端口第一次收到的指令就将被用来配置芯片工厂编程。FLASH下载程序接着转移到系统RAM或外部SRAM 。
更多的信息可以查看MT6226软件编程规范。

[此贴子已经被作者于2010-10-21 16:53:12编辑过]
点评回复

使用道具 举报

发表于 2010-10-22 14:07:23 | 显示全部楼层
还有一个文件region_ads.s也会被调用到。bootarm.s主要就是初始化,搬移ZW数据到RAM,初始化ZI为0,配置emi的时序,初始化cache,初始化堆栈(系统堆栈、IRQ堆栈、FIQ堆栈、异常、undefined堆栈),最后跳转到B INC_Initialize这个里面调用到Application_Initialize(),最后调用mainp(),初始化线程,建立task。
以上是我个人的理解。
点评回复

使用道具 举报

发表于 2011-4-8 10:37:07 | 显示全部楼层
楼上:
ZW数据,是什么意思?
点评回复

使用道具 举报

发表于 2011-4-9 11:15:28 | 显示全部楼层
看不懂,只能先打打酱油
点评回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

Archiver|手机版|小黑屋|52RD我爱研发网 ( 沪ICP备2022007804号-2 )

GMT+8, 2024-12-27 15:14 , Processed in 0.044783 second(s), 16 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表