فهرست منبع

make rootfs configurable, add ext4 support

Waldemar Brodkorb 15 سال پیش
والد
کامیت
da18fa3f6b
5فایلهای تغییر یافته به همراه117 افزوده شده و 5 حذف شده
  1. 10 0
      mk/modules.mk
  2. 74 2
      target/Config.in
  3. 22 0
      target/linux/config/Config.in.fs
  4. 0 3
      target/linux/config/Config.in.kernel
  5. 11 0
      target/linux/config/Config.in.lib

+ 10 - 0
mk/modules.mk

@@ -786,6 +786,12 @@ $(eval $(call KMOD_template,EXT3_FS,fs-ext3,\
 	$(MODULES_DIR)/kernel/fs/ext3/ext3 \
 ,30))
 
+$(eval $(call KMOD_template,EXT4_FS,fs-ext4,\
+	$(MODULES_DIR)/kernel/fs/mbcache \
+	$(MODULES_DIR)/kernel/fs/jbd2/jbd2 \
+	$(MODULES_DIR)/kernel/fs/ext4/ext4 \
+,30))
+
 $(eval $(call KMOD_template,FUSE_FS,fs-fuse,\
 	$(MODULES_DIR)/kernel/fs/fuse/fuse \
 ,30))
@@ -1290,6 +1296,10 @@ $(eval $(call KMOD_template,CRC_ITU_T,crc-itu-t, \
 	$(MODULES_DIR)/kernel/lib/crc-itu-t \
 ,01))
 
+$(eval $(call KMOD_template,CRC16,crc16, \
+	$(MODULES_DIR)/kernel/lib/crc16 \
+,01))
+
 $(eval $(call KMOD_template,CRC32,crc32, \
 	$(MODULES_DIR)/kernel/lib/crc32 \
 ,01))

+ 74 - 2
target/Config.in

@@ -212,10 +212,8 @@ config ADK_LINUX_X86_64_SHUTTLE
 	select ADK_KERNEL_BLK_DEV_MD if ADK_TARGET_ROOTFS_ARCHIVE
 	select ADK_KERNEL_MD_RAID0 if ADK_TARGET_ROOTFS_ARCHIVE
 	select ADK_KERNEL_MD_RAID1 if ADK_TARGET_ROOTFS_ARCHIVE
-	select ADK_KERNEL_XFS_FS if ADK_TARGET_ROOTFS_ARCHIVE
 	select ADK_KPACKAGE_KMOD_SKY2 if ADK_TARGET_ROOTFS_INITRAMFS_PIGGYBACK
 	select ADK_KPACKAGE_KMOD_SATA_AHCI if ADK_TARGET_ROOTFS_INITRAMFS_PIGGYBACK
-	select ADK_KPACKAGE_KMOD_XFS_FS if ADK_TARGET_ROOTFS_INITRAMFS_PIGGYBACK
 	select ADK_KPACKAGE_KMOD_BLK_DEV_MD if ADK_TARGET_ROOTFS_INITRAMFS_PIGGYBACK
 	select ADK_KPACKAGE_KMOD_MD_RAID0 if ADK_TARGET_ROOTFS_INITRAMFS_PIGGYBACK
 	select ADK_KPACKAGE_KMOD_MD_RAID1 if ADK_TARGET_ROOTFS_INITRAMFS_PIGGYBACK
@@ -535,6 +533,80 @@ config ADK_TARGET_ROOTFS_ENCRYPTED
 
 endchoice
 
+choice
+prompt "Root filesystem type"
+	depends on ADK_TARGET_ROOTFS_INITRAMFS_PIGGYBACK
+	default ADK_TARGET_ROOT_XFS
+
+config ADK_TARGET_ROOT_XFS_MOD
+	boolean
+	prompt "XFS filesystem"
+	select ADK_KPACKAGE_KMOD_XFS_FS
+	select ADK_PACKAGE_XFSPROGS
+	help
+	  Select XFS filesystem kernel module and filesystem utilities.
+
+config ADK_TARGET_ROOT_EXT2_MOD
+	boolean
+	prompt "EXT2 filesystem"
+	select ADK_KPACKAGE_KMOD_EXT2_FS
+	select ADK_PACKAGE_E2FSPROGS
+	help
+	  Select EXT2 filesystem kernel module and filesystem utilities.
+
+config ADK_TARGET_ROOT_EXT3_MOD
+	boolean
+	prompt "EXT3 filesystem"
+	select ADK_KPACKAGE_KMOD_EXT3_FS
+	select ADK_PACKAGE_E2FSPROGS
+	help
+	  Select EXT3 filesystem kernel module and filesystem utilities.
+
+config ADK_TARGET_ROOT_EXT4_MOD
+	boolean
+	prompt "EXT4 filesystem"
+	select ADK_KPACKAGE_KMOD_EXT4_FS
+	select ADK_PACKAGE_E2FSPROGS
+	help
+	  Select EXT4 filesystem kernel module and filesystem utilities.
+
+endchoice
+
+choice
+prompt "Root filesystem type"
+	depends on ADK_TARGET_ROOTFS_ARCHIVE
+	default ADK_TARGET_ROOT_XFS
+
+config ADK_TARGET_ROOT_XFS
+	boolean
+	prompt "XFS filesystem"
+	select ADK_KERNEL_XFS_FS
+	help
+	  Compile XFS filesystem into kernel and use it as root filesystem.
+
+config ADK_TARGET_ROOT_EXT2
+	boolean
+	prompt "EXT2 filesystem"
+	select ADK_KERNEL_EXT2_FS
+	help
+	  Compile EXT2 filesystem into kernel and use it as root filesystem.
+
+config ADK_TARGET_ROOT_EXT3
+	boolean
+	prompt "EXT3 filesystem"
+	select ADK_KERNEL_EXT3_FS
+	help
+	  Compile EXT3 filesystem into kernel and use it as root filesystem.
+
+config ADK_TARGET_ROOT_EXT4
+	boolean
+	prompt "EXT4 filesystem"
+	select ADK_KERNEL_EXT4_FS
+	help
+	  Compile EXT4 filesystem into kernel and use it as root filesystem.
+
+endchoice
+
 #config ADK_SSP
 #	bool "Enable Stack Smashing Protection"
 #	default n

+ 22 - 0
target/linux/config/Config.in.fs

@@ -17,6 +17,10 @@ config ADK_KPACKAGE_KMOD_EXPORTFS
 	default n
 	help
 
+config ADK_KERNEL_EXT2_FS
+	boolean
+	default n
+
 config ADK_KPACKAGE_KMOD_EXT2_FS
 	prompt "kmod-fs-ext2...................... EXT2 filesystem support"
 	tristate
@@ -26,9 +30,14 @@ config ADK_KPACKAGE_KMOD_EXT2_FS
 	help
 	  Ext2 is a standard Linux file system for hard disks.
 
+config ADK_KERNEL_EXT3_FS
+	boolean
+	default n
+
 config ADK_KPACKAGE_KMOD_EXT3_FS
 	prompt "kmod-fs-ext3...................... EXT3 filesystem support"
 	tristate
+	depends on !ADK_KERNEL_EXT3_FS
 	default n
 	help
 	  This is the journalling version of the Second extended file system
@@ -54,6 +63,19 @@ config ADK_KPACKAGE_KMOD_EXT3_FS
 	  e2fsprogs version 1.20 or later in order to create ext3 journals
 	  (available at <http://sourceforge.net/projects/e2fsprogs/>).
 
+config ADK_KERNEL_EXT4_FS
+	boolean
+	select ADK_KERNEL_CRC16
+	default n
+
+config ADK_KPACKAGE_KMOD_EXT4_FS
+	prompt "kmod-fs-ext4...................... EXT4 filesystem support"
+	tristate
+	depends on !ADK_KERNEL_EXT4_FS
+	select ADK_KPACKAGE_KMOD_CRC16
+	default n
+	help
+
 config ADK_KPACKAGE_KMOD_HFSPLUS_FS
 	prompt "kmod-fs-hfsplus................... HFS+ filesystem support"
 	tristate

+ 0 - 3
target/linux/config/Config.in.kernel

@@ -92,7 +92,4 @@ config ADK_KERNEL_SUNRPC
 #	boolean
 #	default n
 
-config ADK_KERNEL_EXT2_FS
-	boolean
-	default n
 

+ 11 - 0
target/linux/config/Config.in.lib

@@ -1,5 +1,9 @@
 menu "Library Routines"
 
+config ADK_KERNEL_CRC16
+	bool
+	default n
+
 config ADK_KERNEL_CRC32
 	bool
 	default n
@@ -14,6 +18,13 @@ config ADK_KPACKAGE_KMOD_CRC_ITU_T
 	  the kernel tree does. Such modules that use library CRC ITU-T V.41
 	  functions require M here.
 
+config ADK_KPACKAGE_KMOD_CRC16
+	prompt "kmod-crc16.......................... provide CRC16 library functions"
+	tristate
+        depends on ! ADK_KERNEL_CRC16
+	default n
+	help
+
 config ADK_KPACKAGE_KMOD_CRC32
 	prompt "kmod-crc32.......................... provide CRC32 library functions"
 	tristate