主题 : Barebox (u-boot-v2) for tiny 210学习笔记 - 更新到MLC NAND驱动 复制链接 | 浏览器收藏 | 打印
级别: 侠客
UID: 54261
精华: 9
发帖: 43
金钱: 665 两
威望: 133 点
贡献值: 9 点
综合积分: 266 分
注册时间: 2011-08-27
最后登录: 2014-08-08
楼主  发表于: 2013-01-08 10:44

 Barebox (u-boot-v2) for tiny 210学习笔记 - 更新到MLC NAND驱动

管理提醒: 本帖被 xoom 设置为精华(2013-01-08)
我就是头猪,tiny210刚刚推出的时候就入手了,买回来就一直摆在那边,都长霉了,v2加了功能,价格还降了近一半,伤不起啊...
对于初学者,Barebox绝对是个好东西,相对于全功能巨无霸u-boot,它只关注必要的功能,代码量少得多,学习起来相对容易些
Barebox采用类Linux代码结构、编译框架、驱动模型,学一会二...  www.barebox.org 你懂的...
东拉西扯的容易丢东西,我在github上拉了个分支,一步一步修改,希望感兴趣的人来一起研究https://github.com/jiandeng/barebox

汇报一下进度:
0.添加step-by-step-note记录学习过程;
1.原始分支烧写到SD卡,能正常启动,串口有输出;
    http://aiothome.net/read.php?tid-27536.html
2.添加网卡驱动,手动设置单板IP后能ping通主机;
    http://www.aiothome.net/read.php?tid=27553&page=1&toread=1#tpc
3.切换到新版env,自动为单板设置默认IP;开启TFTP、GO命令,以便实现down & run;
    http://www.aiothome.net/read.php?tid=27571&page=1&toread=1#tpc
4.支持跳过PLL & SDRAM初始化,以方便调试,详细说明一下:
        (1)开启PLL & SDRAM初始化,编译生成barebox.s5p,烧写到SD卡;
        (2)关闭PLL & SDRAM初始化,编译生成barebox.bin;
        (3)从SD卡启动,tftp下载barebox.bin,然后运行调试;
        (4)说清楚了吧,语言学得太差了...
    http://aiothome.net/read.php?tid=27573&page=1&toread=1#tpc
5.添加NAND FLASH驱动,支持1bit ecc和8bit ecc,只支持页大小为2k的SLC,继续123abc:
        (1)读手册、学代码,折腾出来nand_s5pv210.c;
        (2)为了调试方便,写了nand_dump命令;
        (3)写nand_dump命令时,顺手改了两个“BUG”;(加了引号,因为我不确定到底是不是BUG,更不确定改对没有);
        (4)使用nandtest和nanddump命令初步确认nand读写操作正常。
    http://www.aiothome.net/read.php?tid=27603&page=1&toread=1#tpc
6.启动网络或NAND中的uImage,挂载NFS根文件系统
    http://www.aiothome.net/read.php?tid-28680.html
7.支持loadenv和saveenv,保存到nand flash
    http://www.aiothome.net/read.php?tid=28687&page=1&toread=1#tpc
8.支持NAND启动
    http://www.aiothome.net/read.php?tid-28710.html
9.UBIFS根文件系统
    http://www.aiothome.net/read.php?tid=28919&page=1&toread=1#tpc
10.MLC NAND驱动
    http://www.aiothome.net/read.php?tid=29021&page=1&toread=1#tpc

下一步学习计划:
3.支持SD卡读写;
4.跪求达人鸟人一起研究...

  
[ 此帖被mei5150在2013-05-09 14:42重新编辑 ]
级别: 侠客
UID: 54261
精华: 9
发帖: 43
金钱: 665 两
威望: 133 点
贡献值: 9 点
综合积分: 266 分
注册时间: 2011-08-27
最后登录: 2014-08-08
1楼  发表于: 2013-01-08 10:52
没人理,占楼先!
级别: 侠客
UID: 54261
精华: 9
发帖: 43
金钱: 665 两
威望: 133 点
贡献值: 9 点
综合积分: 266 分
注册时间: 2011-08-27
最后登录: 2014-08-08
2楼  发表于: 2013-01-08 13:00
引用第3楼mindee于2013-01-08 12:33发表的  :
支持,若能把你的杰作细化说明,做到善始善终,以助于其他用户研习,这将对我们的产品推广也会有所帮助;
将来四核新平台出来时可向我们免费申请一套,以作答谢。

其他任何真正感兴趣的嵌入式爱好者亦如是。


没问题,后续我会把整个过程一步一步加到帖子中,谢谢!期待四核开发板!
级别: 侠客
UID: 54261
精华: 9
发帖: 43
金钱: 665 两
威望: 133 点
贡献值: 9 点
综合积分: 266 分
注册时间: 2011-08-27
最后登录: 2014-08-08
3楼  发表于: 2013-01-08 22:07

 回 7楼(huhu2207) 的帖子

Barebox (formerly known as u-boot-v2) is a bootloader that inherits the best of U-Boot and the Linux kernel:
The size and look-and-feel of u-boot, with driver model and lots of design concepts from the kernel.

其实,目前barebox才刚起步,功能还没u-boot全面,略显简单了,这不正好给了我们机会一步一步跟着学,甚至时不时贡献点代码么!
另外,它参照linux源码框架、驱动模型来设计的,你大致瞄一眼源码就晓得,搞清楚barebox对理解linux源码结构等非常有帮助!
[ 此帖被mei5150在2013-01-08 22:45重新编辑 ]