kernel/modules: add f2fs support
[openwrt.git] / package / kernel / linux / modules / fs.mk
index ecdfb6d..3e59cab 100644 (file)
@@ -7,6 +7,43 @@
 
 FS_MENU:=Filesystems
 
+define KernelPackage/fs-fscache
+  SUBMENU:=$(FS_MENU)
+  TITLE:=General filesystem local cache manager
+  DEPENDS:=
+  KCONFIG:=\
+       CONFIG_FSCACHE=m \
+       CONFIG_FSCACHE_STATS=y \
+       CONFIG_FSCACHE_HISTOGRAM=n \
+       CONFIG_FSCACHE_DEBUG=n \
+       CONFIG_FSCACHE_OBJECT_LIST=n \
+       CONFIG_CACHEFILES=y \
+       CONFIG_CACHEFILES_DEBUG=n \
+       CONFIG_CACHEFILES_HISTOGRAM=n
+  FILES:=$(LINUX_DIR)/fs/fscache/fscache.ko
+  AUTOLOAD:=$(call AutoLoad,29,fscache)
+endef
+
+$(eval $(call KernelPackage,fs-fscache))
+
+define KernelPackage/fs-afs
+  SUBMENU:=$(FS_MENU)
+  TITLE:=Andrew FileSystem client
+  DEPENDS:=+kmod-rxrpc +kmod-dnsresolver +kmod-fs-fscache
+  KCONFIG:=\
+       CONFIG_AFS_FS=m \
+       CONFIG_AFS_DEBUG=n \
+       CONFIG_AFS_FSCACHE=y
+  FILES:=$(LINUX_DIR)/fs/afs/kafs.ko
+  AUTOLOAD:=$(call AutoLoad,30,kafs)
+endef
+
+define KernelPackage/fs-afs/description
+  Kernel module for Andrew FileSystem client support
+endef
+
+$(eval $(call KernelPackage,fs-afs))
+
 define KernelPackage/fs-autofs4
   SUBMENU:=$(FS_MENU)
   TITLE:=AUTOFS4 filesystem support
@@ -16,7 +53,7 @@ define KernelPackage/fs-autofs4
 endef
 
 define KernelPackage/fs-autofs4/description
 Kernel module for AutoFS4 support
+ Kernel module for AutoFS4 support
 endef
 
 $(eval $(call KernelPackage,fs-autofs4))
@@ -25,7 +62,7 @@ $(eval $(call KernelPackage,fs-autofs4))
 define KernelPackage/fs-btrfs
   SUBMENU:=$(FS_MENU)
   TITLE:=BTRFS filesystem support
-  DEPENDS:=+kmod-lib-crc32c +kmod-lib-lzo +kmod-lib-zlib
+  DEPENDS:=+kmod-lib-crc32c +kmod-lib-lzo +kmod-lib-zlib +(!LINUX_3_3&&!LINUX_3_6&&!LINUX_3_8):kmod-lib-raid6 +(!LINUX_3_3&&!LINUX_3_6&&!LINUX_3_8):kmod-lib-xor
   KCONFIG:=\
        CONFIG_BTRFS_FS \
        CONFIG_BTRFS_FS_POSIX_ACL=n \
@@ -36,7 +73,7 @@ define KernelPackage/fs-btrfs
 endef
 
 define KernelPackage/fs-btrfs/description
 Kernel module for BTRFS support
+ Kernel module for BTRFS support
 endef
 
 $(eval $(call KernelPackage,fs-btrfs))
@@ -84,13 +121,28 @@ endef
 
 $(eval $(call KernelPackage,fs-configfs))
 
+define KernelPackage/fs-cramfs
+  SUBMENU:=$(FS_MENU)
+  TITLE:=Compressed RAM/ROM filesystem support
+  DEPENDS:=+kmod-lib-zlib
+  KCONFIG:= \
+       CONFIG_CRAMFS
+  FILES:=$(LINUX_DIR)/fs/cramfs/cramfs.ko
+  AUTOLOAD:=$(call AutoLoad,30,cramfs)
+endef
+
+define KernelPackage/fs-cramfs/description
+ Kernel module for cramfs support
+endef
+
+$(eval $(call KernelPackage,fs-cramfs))
 
 define KernelPackage/fs-exportfs
   SUBMENU:=$(FS_MENU)
   TITLE:=exportfs kernel server support
   KCONFIG:=CONFIG_EXPORTFS
   FILES=$(LINUX_DIR)/fs/exportfs/exportfs.ko
-  AUTOLOAD:=$(call AutoLoad,20,exportfs)
+  AUTOLOAD:=$(call AutoLoad,20,exportfs,1)
 endef
 
 define KernelPackage/fs-exportfs/description
@@ -121,6 +173,26 @@ endef
 $(eval $(call KernelPackage,fs-ext4))
 
 
+define KernelPackage/fs-f2fs
+  SUBMENU:=$(FS_MENU)
+  TITLE:=F2FS filesystem support
+  DEPENDS:=@!LINUX_3_3
+  KCONFIG:= \
+       CONFIG_F2FS_FS \
+       CONFIG_F2FS_STAT_FS=y \
+       CONFIG_F2FS_FS_XATTR=n \
+       CONFIG_F2FS_CHECK_FS=n
+  FILES:=$(LINUX_DIR)/fs/f2fs/f2fs.ko
+  AUTOLOAD:=$(call AutoLoad,30,f2fs,1)
+endef
+
+define KernelPackage/fs-f2fs/description
+ Kernel module for F2FS filesystem support
+endef
+
+$(eval $(call KernelPackage,fs-f2fs))
+
+
 define KernelPackage/fuse
   SUBMENU:=$(FS_MENU)
   TITLE:=FUSE (Filesystem in Userspace) support
@@ -203,6 +275,7 @@ $(eval $(call KernelPackage,fs-minix))
 define KernelPackage/fs-msdos
   SUBMENU:=$(FS_MENU)
   TITLE:=MSDOS filesystem support
+  DEPENDS:=+kmod-fs-vfat
   KCONFIG:=CONFIG_MSDOS_FS
   FILES:=$(LINUX_DIR)/fs/fat/msdos.ko
   AUTOLOAD:=$(call AutoLoad,40,msdos)
@@ -219,14 +292,20 @@ $(eval $(call KernelPackage,fs-msdos))
 define KernelPackage/fs-nfs
   SUBMENU:=$(FS_MENU)
   TITLE:=NFS filesystem support
-  DEPENDS:=+kmod-fs-nfs-common
+  DEPENDS:=+kmod-fs-nfs-common +kmod-dnsresolver
   KCONFIG:= \
        CONFIG_NFS_FS \
        CONFIG_NFS_USE_LEGACY_DNS=n \
        CONFIG_NFS_USE_NEW_IDMAPPER=n
+ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.6.0)),1)
+  FILES:= \
+       $(LINUX_DIR)/fs/nfs/nfs.ko \
+       $(LINUX_DIR)/fs/nfs/nfsv3.ko
+else
   FILES:= \
        $(LINUX_DIR)/fs/nfs/nfs.ko
-  AUTOLOAD:=$(call AutoLoad,40,nfs)
+endif
+  AUTOLOAD:=$(call AutoLoad,40,nfs nfsv3)
 endef
 
 define KernelPackage/fs-nfs/description
@@ -360,7 +439,7 @@ define KernelPackage/fs-xfs
   SUBMENU:=$(FS_MENU)
   TITLE:=XFS filesystem support
   KCONFIG:=CONFIG_XFS_FS
-  DEPENDS:= +kmod-fs-exportfs @!avr32
+  DEPENDS:= +kmod-fs-exportfs +kmod-lib-crc32c @!avr32
   FILES:=$(LINUX_DIR)/fs/xfs/xfs.ko
   AUTOLOAD:=$(call AutoLoad,30,xfs,1)
 endef
@@ -370,3 +449,19 @@ define KernelPackage/fs-xfs/description
 endef
 
 $(eval $(call KernelPackage,fs-xfs))
+
+
+define KernelPackage/fs-jfs
+  SUBMENU:=$(FS_MENU)
+  TITLE:=JFS filesystem support
+  KCONFIG:=CONFIG_JFS_FS
+  FILES:=$(LINUX_DIR)/fs/jfs/jfs.ko
+  AUTOLOAD:=$(call AutoLoad,30,jfs,1)
+  $(call AddDepends/nls)
+endef
+
+define KernelPackage/fs-jfs/description
+ Kernel module for JFS support
+endef
+
+$(eval $(call KernelPackage,fs-jfs))