hisicv200 exfat支持
由于项目中需要128Gsd卡支持.所以内核里面需要支持exfat
1.exfat 由于版权问题,所以linux kernel一直都没法支持,由于某些公司在linux kernel 3.9版本开源exfat 文件系统开源代码。
https://www.oschina.net/news/42054/exfat-come-to-linux
代码如下:
https://github.com/dorimanx/exfat-nofuse.git
基本支持所有kernel版本.
kernel修改修改方法如下:
http://www.cnblogs.com/lidabo/p/5893080.html
主要需要修改的地方:
1.在kernel fs 目录下面添加exfat 源代码,
参考fat目录结构
linux-3.4.y/fs$
1 drwxrwxr-x 3 ll ll 4.0K Dec 10 14:45 exfat 2 drwxr-xr-x 2 ll ll 4.0K Dec 10 14:30 exofs 3 drwxr-xr-x 2 ll ll 4.0K May 10 2016 exportfs 4 drwxr-xr-x 2 ll ll 4.0K May 10 2016 ext2
把git 代码直接copy到exfat目录
2.修改fs/Kconfig,增加一行
1 if BLOCK menu "DOS/FAT/NT Filesystems" 2 3 source "fs/fat/Kconfig" 4 source "fs/exfat/Kconfig" 5 source "fs/ntfs/Kconfig"
3.修改makefile ./fs/Makefile
1 obj-$(CONFIG_MINIX_FS)+= minix/ 2 3 obj-$(CONFIG_FAT_FS) += fat/ 4 5 obj-$(CONFIG_EXFAT_FS) += exfat/
4.修改menuconfig,增加kernle对exfat支持
make ARCH=arm CROSS_COMPILE=arm-hisiv300-linux- menuconfig
<> exFAT fs support
5.编译kernel
make ARCH=arm CROSS_COMPILE=arm-hisiv300-linux- uImage
6.生成的uImage 已经mkimage工具处理过了,直接可以修改名字用sd卡升级.
7.其它问题;hisi3516cv200 uboot 没有支持exfat升级.所以升级后,需要升级系统就不能通过sd卡升级了.