05-S3C2440学习之内核(移植)linux3.4.2移植(2)之yffs2文件系统移植+内核裁剪+内核制作补丁

一、移植YFFS2文件系统

yffs文件系统更加支持nand设备

上节移植了jffs2文件系统(点击查看)到移植的内核中,这节我们将yffs2文件系统移植到刚移植好的内核中。

(1)获取源码并解压

git clone git://www.aleph1.co.uk/yaffs2

tar xjf yaffs2.tar.bz2


(2)给内核打上yffs2补丁

./patch-ker.sh c m /home/book/linux-3.4.2

++

(3) 配置内核支持YAFFS

1.    ls fs/yaffs2





(4)编译、生成uImage

出错,制作yffs2 source工程.

(5)修改错误内容


修改:

加上下划线


+

等等多处需要添加下划线。

再次编译出现如下错误:

+

搜索s_root 查看其它文件系统如何使用

更换函数名称 解决问题


make uImage 继续解决一系列缺少——的问题。

(6)编译成功后,拷贝新内核到NFS

cp arch/arm/boot/uImage/work/nfs_root/uImage_yaffs

(7)制作、烧写yaffs映象.


mkyaffs2image fs_mini_mdev_new     fs_mini_mdev_new.yaffs2

此步骤依赖于上一节移植jffs2文件系统的前半部分fs_mini_mdev_new(点击查看)

uboot-2012的操作:

nfs 30000000 192.168.1.101:/work/nfs_root/fs_mini_mdev_new.yaffs2

nand erase.part rootfs

nand write.yaffs 30000000 260000  $filesize

set bootargs console=ttySAC0,115200    root=/dev/mtdblock3

nfs 32000000 192.168.1.101:/work/nfs_root/uImage_yaffs

bootm 32000000

uboot-1.1.6的操作:

nfs 30000000 192.168.1.101:/work/nfs_root/fs_mini_mdev_new.yaffs2

nand erase root

nand write.yaffs 30000000 260000  $(filesize)

set bootargs console=ttySAC0,115200   root=/dev/mtdblock3

nfs 32000000 192.168.1.101:/work/nfs_root/uImage_yaffs

bootm 32000000


到此yffs2在内核上挂接成功。

二、内核裁剪

看看此时内核大小:

MTD分区的时候 我们留给了内核2M的空间,所以要进行裁剪。

(1)查看.config,此时内核支持多种单板:


make menuconfig

/来查找AT2440


去掉不需要支持的单板:


(2)文件系统裁剪

make menuconfig



还是大于2M,尝试根据打印信息去掉一些:


1:
2: 这个需要配置上
3

4
5
6此时内核小于2M

制作了u-boot_new.bin, uImage_new,fs_mini_mdev_new.yaffs

重烧整个系统:

使用jtag工具烧u-boot_new.bin

或使用uboot来更新自己: tftp30000000 u-boot_new.bin; nand erase.part u-boot; nand write 30000000 u-boot

启动uboot,用它来烧写内核、FS

tftp 30000000 uImage_new; nand erase.partkernel; nand write 30000000 kernel

tftp 30000000 fs_mini_mdev_new.yaffs2; nanderase.part rootfs; nand write.yaffs 30000000 260000  $filesize

 

设置参数

set 'nand read 30000000 kernel;bootm30000000'(根据print)

set bootargs console=ttySAC0,115200root=/dev/mtdblock3

set machid 16a

save


三、内核打补丁


使用内核补丁:

patch -p1 < ../linux-3.4.2_100ask.patch

cp config_ok .config

make uImage








  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值