kernel: split out lib-raid6
authorJonas Gorski <jogo@openwrt.org>
Thu, 18 Jul 2013 13:08:31 +0000 (13:08 +0000)
committerJonas Gorski <jogo@openwrt.org>
Thu, 18 Jul 2013 13:08:31 +0000 (13:08 +0000)
raid_pq.ko is needed by btrfs in 3.10+, so split it out into its own
package. Make it hidden as it does not provide any functionality on its
own.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 37394

package/kernel/linux/modules/block.mk
package/kernel/linux/modules/lib.mk

index fe5da0356f56f93fe1e0de16337bfe6c4a83baa3..e5222761620172a0b2107f4e950af876a072a88e 100644 (file)
@@ -306,7 +306,7 @@ $(eval $(call KernelPackage,md-raid10))
 
 
 define KernelPackage/md-raid456
-$(call KernelPackage/md/Depends,)
+$(call KernelPackage/md/Depends,+kmod-lib-raid6)
   TITLE:=RAID Level 456 Driver
   KCONFIG:= \
        CONFIG_XOR_BLOCKS \
@@ -316,7 +316,6 @@ $(call KernelPackage/md/Depends,)
        CONFIG_ASYNC_PQ \
        CONFIG_ASYNC_RAID6_RECOV \
        CONFIG_ASYNC_RAID6_TEST=n \
-       CONFIG_MD_RAID6_PQ \
        CONFIG_MD_RAID456 \
        CONFIG_MULTICORE_RAID456=n
   FILES:= \
@@ -327,8 +326,7 @@ $(call KernelPackage/md/Depends,)
        $(LINUX_DIR)/crypto/async_tx/async_pq.ko \
        $(LINUX_DIR)/crypto/async_tx/async_raid6_recov.ko \
        $(LINUX_DIR)/drivers/md/raid456.ko \
-       $(LINUX_DIR)/lib/raid6/raid6_pq.ko
-  AUTOLOAD:=$(call AutoLoad,28, xor async_tx async_memcpy async_xor raid6_pq async_pq async_raid6_recov raid456)
+  AUTOLOAD:=$(call AutoLoad,28, xor async_tx async_memcpy async_xor async_pq async_raid6_recov raid456)
 endef
 
 define KernelPackage/md-raid456/description
index 0411e93702c7a4604d81de87975d9153b642fa86..095edb1a587cdeb91851e7b12cacde9139df42a6 100644 (file)
@@ -117,6 +117,22 @@ endef
 $(eval $(call KernelPackage,lib-lzo))
 
 
+define KernelPackage/lib-raid6
+  SUBMENU:=$(LIB_MENU)
+  TITLE:=RAID6 algorithm support
+  HIDDEN:=1
+  KCONFIG:=CONFIG_RAID6_PQ
+  FILES:=$(LINUX_DIR)/lib/raid6/raid6_pq.ko
+  AUTOLOAD:=$(call AutoLoad,20,raid6_pq,1)
+endef
+
+define KernelPackage/lib-raid6/description
+ Kernel module for RAID6 algorithms.
+endef
+
+$(eval $(call KernelPackage,lib-raid6))
+
+
 define KernelPackage/lib-textsearch
 SUBMENU:=$(LIB_MENU)
   TITLE:=Textsearch support