自己写bootloadder

bootloader的目标:启动内核。


①从Flash上把内核读入内存(SDRAM)

    a.能读Flash

    b.初始化/内存/时钟/其他

②启动

    a.设置参数(告诉内核内存大小、应该去哪里找根文件系统)

    b.跳转执行



最简单的bootloader的编写步骤:

1、初始化硬件:关看门狗、设置时钟、设置SDRAM、初始化Nand Flash

    (关看门狗:对于2440,一上电看门狗会打开着,必须把它关掉,如果不关掉,过3秒钟会复位这个开发板)

    (设置时钟:对于2440,上电的时候,它运行的频率是12MHz,想要让它运行更快一点)

    (设置SDRAM:SDRAM这款内存,先要初始化)

    (初始化Nand Flash:因为从Nand Flash上把内核读进来,bootlorader应该对Nand Flash的操作,如果Nor Flash,就像对内存)

2、如果bootloader比较大,要把它重定位到SDRAM

3、把内核从Nand Flash读到SDRAM

4、设置“要传给内核的参数”

5、跳转执行内核



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值