diff --git a/package/kernel/modules/fs.mk b/package/kernel/modules/fs.mk
index 10557a77a5..84d482657d 100644
--- a/package/kernel/modules/fs.mk
+++ b/package/kernel/modules/fs.mk
@@ -271,20 +271,18 @@ endef
 
 $(eval $(call KernelPackage,fs-nfsd))
 
-ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.30)),1)
-  MSDOS_DIR:=fat
-endif
-MSDOS_DIR?=msdos
-
 define KernelPackage/fs-msdos
   SUBMENU:=$(FS_MENU)
   TITLE:=MSDOS filesystem support
   KCONFIG:=CONFIG_MSDOS_FS
-  FILES:=$(LINUX_DIR)/fs/$(MSDOS_DIR)/msdos.$(LINUX_KMOD_SUFFIX)
+  FILES:=$(LINUX_DIR)/fs/fat/msdos.$(LINUX_KMOD_SUFFIX)
   AUTOLOAD:=$(call AutoLoad,40,msdos)
 $(call KernelPackage/nls/Depends)
 endef
 
+define KernelPackage/fs-msdos/2.4
+  FILES:=$(LINUX_DIR)/fs/msdos/msdos.$(LINUX_KMOD_SUFFIX)
+endef
 
 define KernelPackage/fs-msdos/description
  Kernel module for MSDOS filesystem support
@@ -307,11 +305,6 @@ endef
 
 $(eval $(call KernelPackage,fs-reiserfs))
 
-ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.28)),1)
-  VFAT_DIR:=fat
-endif
-VFAT_DIR?=vfat
-
 define KernelPackage/fs-vfat
   SUBMENU:=$(FS_MENU)
   TITLE:=VFAT filesystem support
@@ -320,11 +313,16 @@ define KernelPackage/fs-vfat
 	CONFIG_VFAT_FS
   FILES:= \
 	$(LINUX_DIR)/fs/fat/fat.$(LINUX_KMOD_SUFFIX) \
-	$(LINUX_DIR)/fs/$(VFAT_DIR)/vfat.$(LINUX_KMOD_SUFFIX)
+	$(LINUX_DIR)/fs/fat/vfat.$(LINUX_KMOD_SUFFIX)
   AUTOLOAD:=$(call AutoLoad,30,fat vfat)
 $(call KernelPackage/nls/Depends)
 endef
 
+define KernelPackage/fs-vfat/2.4
+  FILES:= \
+	$(LINUX_DIR)/fs/fat/fat.$(LINUX_KMOD_SUFFIX) \
+	$(LINUX_DIR)/fs/vfat/vfat.$(LINUX_KMOD_SUFFIX)
+endef
 
 define KernelPackage/fs-vfat/description
  Kernel module for VFAT filesystem support