主题 : Barebox for tiny 210 - step 8 NAND启动 复制链接 | 浏览器收藏 | 打印
级别: 侠客
UID: 54261
精华: 9
发帖: 43
金钱: 665 两
威望: 133 点
贡献值: 9 点
综合积分: 266 分
注册时间: 2011-08-27
最后登录: 2014-08-08
楼主  发表于: 2013-04-13 20:30

 Barebox for tiny 210 - step 8 NAND启动

管理提醒: 本帖被 xoom 执行加亮操作(2013-04-15)
返回学习汇总贴
0.开始之前:
    (1) tiny210可以选择从SD卡或NAND启动
    (2) 开机时,iROM代码负责从SD卡或NAND中加载程序到iRAM,然后运行iRAM中的代码;由于iRAM空间有限,iROM只能加载程序的最前面的一小部分
    (3) 加载前,iROM先要校验程序的完整性,所以烧写到SD卡或者NAND中的代码都是经过封装的(头部加了长度、校验等字段,共16个字节,详见s5p_cksum.c)
    (4) 加载时,iROM读NAND使用8位ECC
    (5) 加载后,iRAM中的代码首先初始化PLL、DRAM,然后加载整个程序(这里指barebox)到DRAM,最后跳转到DRAM继续运行
    (6) 掌握 Barebox for tiny 210 - step 7
1.编译
    (1) 更新源码到对应版本
        cd ~/s5pv210/github/loader/barebox && git checkout 39e2c675dc14d821037b912f0cff7e3b6dcc3f64
    (2) 配置编译
        cp arch/arm/configs/friendlyarm_tiny210_defconfig .config
        make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- menuconfig
                禁用System Type  --->S3C Features  --->[ ] Booting from NAND
        make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- && cp barebox.s5p barebox.sd
        编译生成的barebox.s5p,重命名为barebox.sd,这个版本适合SD卡启动,NAND读写使用8位ECC,专门用于向NAND写入barebox
        make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- menuconfig
                启用System Type  --->S3C Features  --->[*] Booting from NAND
        make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- && sudo cp barebox.s5p /srv/tftp/
        编译生成的barebox.s5p,放到tftp根目录下,这个版本适合NAND启动,NAND读写使用1位ECC
2.运行
        将SD版本烧写到SD卡        sudo dd if=./barebox.sd of=/dev/sdb bs=512 seek=1
        从SD卡启动单板,三秒内按任意键中断autoboot
        从FTP取NAND版本,烧写到nand.barebox分区        erase /dev/nand0.barebox.bb & cp /mnt/tftp/barebox.s5p /dev/nand0.barebox.bb
        从NAND启动单板,barebox正常启动
3.源码分析
        不贴代码,感兴趣的建议看github commit记录
4.继续之前
        解释__bare_init和__nand_boot_init的作用
        添加代码自动识别NAND或SD卡启动,可以参考大牛的的方案,在此向大牛致敬,学到了好多东西!!!
[ 此帖被mei5150在2013-04-13 20:45重新编辑 ]
级别: 风云使者
UID: 36096
精华: 3
发帖: 2513
金钱: 14075 两
威望: 2815 点
贡献值: 3 点
综合积分: 5086 分
注册时间: 2011-01-11
最后登录: 2015-11-15
1楼  发表于: 2013-04-25 21:11
路过帮顶了
极度缺钱,求捐赠……支付宝兼邮箱:huming2207@qq.com
级别: 新手上路
UID: 65147
精华: 0
发帖: 33
金钱: 165 两
威望: 33 点
贡献值: 0 点
综合积分: 66 分
注册时间: 2012-03-14
最后登录: 2013-08-13
2楼  发表于: 2013-04-27 22:29
帮顶,虽然一直在使用uboot,但是还是支持新的东西能做的更好。