Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1264483
  • 博文数量: 404
  • 博客积分: 10011
  • 博客等级: 上将
  • 技术积分: 5382
  • 用 户 组: 普通用户
  • 注册时间: 2008-09-03 16:29
文章存档

2010年(40)

2009年(140)

2008年(224)

我的朋友

分类: LINUX

2008-09-25 17:41:39

原来一直不知道 nandboot 是干什么用的,反正老师说要和uboot合在一起,才能用. 对此一直有疑问

在网上搜索关于nandboot 的资料,基本上什么也没有,所以只有读取源代码,才能解决我这个疑问

后来费了很大劲才弄明白,是这么回事(也不知道对不对,有错的话,一定要给我指出来)

是否用 nandboot 跟硬件设计有关系,有的系统 只有nand flash 没有nor flash

有nor flash 的从nor flash启动的 OM1和OM00 应该接成01的模式

没有nor flash 的从nand flash启动的 OM1和OM00 应该接成00的模式

没有nor flash 的从nand flash启动的,需要nandboot程序, 有nor flash 的从nor flash启动的不需要nandboot程序

2410中ncgs0 指向的地址在 OM1和OM00 应该接成00的模式下有 4k的sram 可以映射 flash 低4k 的内容

上电首先运行这4k的内容,所以 nandflash必须写在nandflash的第0块,而且不能大于4k


nandboot 源程序代码并不多,文件解压后得到以下几个目录(为什么,我nandboot的源码传不上来?)

image文件夹   (存放编译完成后的bin文件)

      /nandboot.bin

obj文件夹 (存放编译过程中的目标文件)

include文件夹 (头文件-定义宏)

    2410addr.h(定义cpu内部寄存器的地址的宏)

    2410lib.h(调用的函数声明)

    2410slib.h( MMU_EnableICache(void);函数声明)

    k9s1208.h

    def.h

    memcfg.h  (内存寄存器数值定义)

    option.h    (内存分配 映射表)

src文件夹 (c源文件)

    2410init.S  (cpu初始化 引导文件,最早运行的程序)

    2410lib.c

    2410loader.c (主程序)

    k9s1208.c (flash 读写驱动程序)

    Makefile
阅读(1538) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~