> Has someone managed to build a kernel for use on the WL-700gE?
> I tried to update my kernel and first noticed that the aec62xx module
> was missing.  `packages/kernel/modules/block.mk' seemed to explain that
> some renaming break the kmod-ide-core package.  So looking at the files
> drivers/ide/*.ko, I figured that maybe ide-disk.ko was replaced by
> ide-generic.ko and aec62xx was moved from one directory to another, just
> like ide-pci-generic.  So after adjusting things this way, the build
> finishes, but the resulting image doesn't work right: it fails to give
> me the necessary /dev/hde* devices.

It turns out that guess was wrong: the new `ide-generic.ko' is not the
replacement for `ide-disk.ko'.  Instead, to get back a working system we
need to use the new CONFIG_IDE_GD kernel parameter which ends up
producing the ide-gd_mod.ko file, which is the proper replacement for
ide-disk.ko.

I've used the patch below which gave me a working firmware for my
WL-700gE.  Clearly the patch shouldn't be installed as is since it
breaks builds with earlier kernels.  But I'm not very good at using
those funny `make' statement like `ifeq', not being too sure how and
where they can be used, so I haven't yet ventured into cleaning it up.

I also have no idea what's the meaning of options of the form
"OPTION_NAME" rather than "OPTION_NAME=y" or "OPTION_NAME=n" or
"OPTION_NAME=m" in the KCONFIG setting.  Can someone enlighten me (I
haven't found anything relevant in the doc)?


        Stefan


Index: block.mk
===================================================================
--- block.mk    (révision 14586)
+++ block.mk    (copie de travail)
@@ -131,13 +131,15 @@
 $(eval $(call KernelPackage,ata-via-sata))
 
 
-# XXX: broken on 2.6.28 due to module name/path changes
 define KernelPackage/ide-core
   SUBMENU:=$(BLOCK_MENU)
   TITLE:=IDE (ATA/ATAPI) device support
-  DEPENDS:=...@pci_support @LINUX_2_6_28:BROKEN
+  DEPENDS:=...@pci_support
   KCONFIG:= \
        CONFIG_IDE \
+       CONFIG_IDE_GD=y \
+       CONFIG_IDE_GD_ATA=y \
+       CONFIG_IDE_GD_ATAPI=n \
        CONFIG_IDE_GENERIC \
        CONFIG_BLK_DEV_GENERIC \
        CONFIG_BLK_DEV_IDE \
@@ -146,8 +148,8 @@
        CONFIG_BLK_DEV_IDEPCI=y
   FILES:= \
        $(LINUX_DIR)/drivers/ide/ide-core.$(LINUX_KMOD_SUFFIX) \
-       $(LINUX_DIR)/drivers/ide/ide-disk.$(LINUX_KMOD_SUFFIX)
-  AUTOLOAD:=$(call AutoLoad,20,ide-core) $(call AutoLoad,40,ide-disk)
+       $(LINUX_DIR)/drivers/ide/ide-gd_mod.$(LINUX_KMOD_SUFFIX)
+  AUTOLOAD:=$(call AutoLoad,20,ide-core) $(call AutoLoad,40,ide-gd_mod)
 endef
 
 define KernelPackage/ide-core/2.4
@@ -157,7 +159,7 @@
 
 ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.26)),1)
   define KernelPackage/ide-core/2.6
-    FILES+=$(LINUX_DIR)/drivers/ide/pci/ide-pci-generic.$(LINUX_KMOD_SUFFIX)
+    FILES+=$(LINUX_DIR)/drivers/ide/ide-pci-generic.$(LINUX_KMOD_SUFFIX)
     AUTOLOAD+=$(call AutoLoad,30,ide-pci-generic)
   endef
 else
@@ -183,7 +185,7 @@
   TITLE:=Acard AEC62xx IDE driver
   DEPENDS:=...@pci_support +kmod-ide-core
   KCONFIG:=CONFIG_BLK_DEV_AEC62XX
-  FILES:=$(LINUX_DIR)/drivers/ide/pci/aec62xx.$(LINUX_KMOD_SUFFIX)
+  FILES:=$(LINUX_DIR)/drivers/ide/aec62xx.$(LINUX_KMOD_SUFFIX)
   AUTOLOAD:=$(call AutoLoad,30,aec62xx)
 endef
 

_______________________________________________
openwrt-devel mailing list
[email protected]
http://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

Reply via email to