第8章嵌入式系统BootLoader技术.pptVIP

  • 9
  • 0
  • 约8.47千字
  • 约 25页
  • 2016-12-01 发布于海南
  • 举报
第8章嵌入式系统BootLoader技术

8.2 BootLoader(vivi)的代码分析 Bootloader有很多种,如本文将要阅读的vivi,除此之外还有uboot,redboot,lilo等等。Vivi 是韩国mizi公司专门为三星s3c2440芯片设计的Bootloader。 vivi也可以分为2个阶段,阶段1的代码在arch/s3c2440/head.S中,阶段2的代码从init/main.c的main函数开始。 阶段1 1.关WATCH DOG (disable watch dog timer) 上电后,WATCH DOG默认是开着的 2.禁止所有中断 (disable all interrupts) vivi中不会用到中断,中断是系统的事,bootloader可不能去干这事的(不过这段代码实在多余,上电后中断默认是关闭的) 3.初始化系统时钟启动MPLL,FCLK=200MHz,HCLK=100MHz,PCLK=50MHz,“CPU bus mode”改为“Asynchronous bus mode”。 4.初始化内存控制寄存器(memsetup):S3c2440共有15个寄存器,在此开始初始化13个寄存器。 5.检查是否从掉电模式唤醒(Check if this is a wake-up from sleep)若是,则调用WakeupStart函数进行处理

文档评论(0)

1亿VIP精品文档

相关文档