linux3.4 内核裁剪,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
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
總結
以上是生活随笔為你收集整理的linux3.4 内核裁剪,05-S3C2440学习之内核(移植)linux3.4.2移植(2)之yffs2文件系统移植+内核裁剪+内核制作补丁...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux文件本编辑,Linux就该这么
- 下一篇: linux 其他常用命令