source code : exFAT-nonfuse
https://github.com/dorimanx/exfat-nofuse
http://opensource.samsung.com/reception/receptionSub.do?method=search&searchValue=exfat
[Installing as a stand-alone module]
make
sudo make install
To load the driver manually, run this as root:
modprobe exfat
You may also specify custom toolchains by using CROSS_COMPILE flag, in my case:
CROSS_COMPILE=../dorimanx-SG2-I9100-Kernel/android-toolchain/bin/arm-eabi-
[Installing as a part of the kernel]
Let's take [linux] as the path to your kernel source dir...
cd [linux]
cp -rvf exfat-nofuse [linux]/fs/exfat
edit [linux]/fs/Kconfig
menu "DOS/FAT/NT Filesystems"
source "fs/fat/Kconfig"
+source "fs/exfat/Kconfig"
source "fs/ntfs/Kconfig"
endmenu
edit [linux]/fs/Makefile
obj-$(CONFIG_FAT_FS) += fat/
+obj-$(CONFIG_EXFAT_FS) += exfat/
obj-$(CONFIG_BFS_FS) += bfs/
cd [linux]
make menuconfig
Go to:
File systems > DOS/FAT/NT check exfat as MODULE (M) (437) Default codepage for exFAT (utf8) Default iocharset for exFAT
ESC to main menu Save an Alternate Configuration File ESC ESC
build your kernel
1./linux kernel xxx/fs/exfat/ 下產生 exfat.ko,將此ko拷貝到平台 insmod
2.cat /proc/filesystems
...
...
...
exfat => successful!!!
....
3.mount -t exfat /dev/mmcblk0p1 /mnt/sd_card
====================
(其他資料)
====================
1) Download the "exFAT" moudule linux driver from the below link.
2) Modify the "Makefile" as per your kernel source.
3) Build with your tollchain
4) Install the "exFAT" driver in linux.
[log]
root@omapl138-lcdk:/# cat /proc/filesystems
nodev sysfs
nodev rootfs
nodev bdev
nodev proc
nodev cgroup
nodev tmpfs
nodev debugfs
nodev sockfs
nodev pipefs
nodev anon_inodefs
nodev rpc_pipefs
nodev devpts
ext3
ext2
cramfs
nodev ramfs
vfat
msdos
iso9660
nodev nfs
ufs
nodev jffs2
nodev mqueue
nodev mtd_inodefs
nodev ubifs
root@omapl138-lcdk:/#
root@omapl138-lcdk:/#
root@omapl138-lcdk:/#
root@omapl138-lcdk:/# insmod exfat.ko
exFAT: Version 1.2.9
root@omapl138-lcdk:/#
root@omapl138-lcdk:/# cat /proc/filesystems
nodev sysfs
nodev rootfs
nodev bdev
nodev proc
nodev cgroup
nodev tmpfs
nodev debugfs
nodev sockfs
nodev pipefs
nodev anon_inodefs
nodev rpc_pipefs
nodev devpts
ext3
ext2
cramfs
nodev ramfs
vfat
msdos
iso9660
nodev nfs
ufs
nodev jffs2
nodev mqueue
nodev mtd_inodefs
nodev ubifs
exfat
nodev sysfs
nodev rootfs
nodev bdev
nodev proc
nodev cgroup
nodev tmpfs
nodev debugfs
nodev sockfs
nodev pipefs
nodev anon_inodefs
nodev rpc_pipefs
nodev devpts
ext3
ext2
cramfs
nodev ramfs
vfat
msdos
iso9660
nodev nfs
ufs
nodev jffs2
nodev mqueue
nodev mtd_inodefs
nodev ubifs
root@omapl138-lcdk:/#
root@omapl138-lcdk:/#
root@omapl138-lcdk:/#
root@omapl138-lcdk:/# insmod exfat.ko
exFAT: Version 1.2.9
root@omapl138-lcdk:/#
root@omapl138-lcdk:/# cat /proc/filesystems
nodev sysfs
nodev rootfs
nodev bdev
nodev proc
nodev cgroup
nodev tmpfs
nodev debugfs
nodev sockfs
nodev pipefs
nodev anon_inodefs
nodev rpc_pipefs
nodev devpts
ext3
ext2
cramfs
nodev ramfs
vfat
msdos
iso9660
nodev nfs
ufs
nodev jffs2
nodev mqueue
nodev mtd_inodefs
nodev ubifs
exfat
=======================================
Linux 下使用 exfat 檔案系統
要掛載使用 exfat 檔案系統的磁碟,mount 時候指定 exfat 格式即可。其操作命令如下:
mount -t exfat /dev/device-name /mnt/dirname
要格式化某個磁碟裝置使用 exfat,可以透過 mkfs.exfat 命令。其操作命令如下:
mkfs.exfat /devv/device-name
=======================================
build exFAT to linux kernel
https://github.com/dorimanx/Dorimanx-SG2-I9100-Kernel/commit/e8fc728a68096db9ffcebff40244ebfb60a3de18
1.fs/Kconfig
menu "DOS/FAT/NT Filesystems"
source "fs/fat/Kconfig"
+source "fs/exfat/Kconfig"
source "fs/ntfs/Kconfig"
endmenu
2.fs/Makefile View
obj-$(CONFIG_CODA_FS) += coda/
obj-$(CONFIG_MINIX_FS) += minix/
obj-$(CONFIG_FAT_FS) += fat/
+obj-$(CONFIG_EXFAT_FS) += exfat/
obj-$(CONFIG_BFS_FS) += bfs/
obj-$(CONFIG_ISO9660_FS) += isofs/
obj-$(CONFIG_HFSPLUS_FS) += hfsplus/ # Before hfs to find wrapped HFS+
@@ -129,7 +130,6 @@ obj-$(CONFIG_EXOFS_FS) += exofs/
obj-$(CONFIG_CEPH_FS) += ceph/
obj-$(CONFIG_PSTORE) += pstore/
obj-$(CONFIG_F2FS_FS) += f2fs/
-obj-y += exfat/
# Patched by YAFFS
obj-$(CONFIG_YAFFS_FS) += yaffs2/
3.fs/exfat/Makefile
-# Exfat Linux kernel modules
-#
-
-obj-m += exfat.o
+obj-$(CONFIG_EXFAT_FS) += exfat.o
exfat-y := exfat_core.o exfat_api.o exfat_blkdev.o exfat_cache.o exfat_super.o \
- exfat_data.o exfat_global.o exfat_nls.o exfat_oal.o exfat_upcase.o
-
-EXTRA_FLAGS += -I$(PWD)
-
-#KDIR := /usr/src/linux/
-KDIR := /lib/modules/$(shell uname -r)/build
-PWD := $(shell pwd)
-
-all:
- $(MAKE) -C $(KDIR) M=$(PWD) modules
-
-clean:
- $(MAKE) -C $(KDIR) M=$(PWD) clean
-
-help:
- $(MAKE) -C $(KDIR) M=$(PWD) help
-
-.PHONY : install
-install : all
- sudo $(MAKE) -C $(KDIR) M=$(PWD) modules_install; sudo depmod
+ exfat_data.o exfat_global.o exfat_nls.o exfat_oal.o exfat_upcase.o
確認=>
File systems > DOS/FAT/NT check exfat as MODULE (*) (437) Default codepage for exFAT (utf8) Default iocharset for exFAT
====================================
google 的 exFAT 與 tool
https://code.google.com/p/exfat/wiki/Downloads?tm=2
=======================================
build exFAT to linux kernel
https://github.com/dorimanx/Dorimanx-SG2-I9100-Kernel/commit/e8fc728a68096db9ffcebff40244ebfb60a3de18
1.fs/Kconfig
menu "DOS/FAT/NT Filesystems"
source "fs/fat/Kconfig"
+source "fs/exfat/Kconfig"
source "fs/ntfs/Kconfig"
endmenu
2.fs/Makefile View
obj-$(CONFIG_CODA_FS) += coda/
obj-$(CONFIG_MINIX_FS) += minix/
obj-$(CONFIG_FAT_FS) += fat/
+obj-$(CONFIG_EXFAT_FS) += exfat/
obj-$(CONFIG_BFS_FS) += bfs/
obj-$(CONFIG_ISO9660_FS) += isofs/
obj-$(CONFIG_HFSPLUS_FS) += hfsplus/ # Before hfs to find wrapped HFS+
@@ -129,7 +130,6 @@ obj-$(CONFIG_EXOFS_FS) += exofs/
obj-$(CONFIG_CEPH_FS) += ceph/
obj-$(CONFIG_PSTORE) += pstore/
obj-$(CONFIG_F2FS_FS) += f2fs/
-obj-y += exfat/
# Patched by YAFFS
obj-$(CONFIG_YAFFS_FS) += yaffs2/
3.fs/exfat/Makefile
-# Exfat Linux kernel modules
-#
-
-obj-m += exfat.o
+obj-$(CONFIG_EXFAT_FS) += exfat.o
exfat-y := exfat_core.o exfat_api.o exfat_blkdev.o exfat_cache.o exfat_super.o \
- exfat_data.o exfat_global.o exfat_nls.o exfat_oal.o exfat_upcase.o
-
-EXTRA_FLAGS += -I$(PWD)
-
-#KDIR := /usr/src/linux/
-KDIR := /lib/modules/$(shell uname -r)/build
-PWD := $(shell pwd)
-
-all:
- $(MAKE) -C $(KDIR) M=$(PWD) modules
-
-clean:
- $(MAKE) -C $(KDIR) M=$(PWD) clean
-
-help:
- $(MAKE) -C $(KDIR) M=$(PWD) help
-
-.PHONY : install
-install : all
- sudo $(MAKE) -C $(KDIR) M=$(PWD) modules_install; sudo depmod
+ exfat_data.o exfat_global.o exfat_nls.o exfat_oal.o exfat_upcase.o
確認=>
File systems > DOS/FAT/NT check exfat as MODULE (*) (437) Default codepage for exFAT (utf8) Default iocharset for exFAT
====================================
google 的 exFAT 與 tool
https://code.google.com/p/exfat/wiki/Downloads?tm=2