以下の非常に簡潔なパッチを当てると、LinuxカーネルがKUROBOX-PROで動作するようになりました。
diff --git a/arch/arm/mach-orion5x/kurobox_pro-setup.c b/arch/arm/mach-orion5x/kurobox_pro-setup.c
index cb72f1b..86bf268 100644
--- a/arch/arm/mach-orion5x/kurobox_pro-setup.c
+++ b/arch/arm/mach-orion5x/kurobox_pro-setup.c
@@ -137,7 +137,7 @@ static int __init kurobox_pro_pci_map_irq(struct pci_dev *dev, u8 slot, u8 pin)
}
static struct hw_pci kurobox_pro_pci __initdata = {
- .nr_controllers = 2,
+ .nr_controllers = 1,
.swizzle = pci_std_swizzle,
.setup = orion5x_pci_sys_setup,
.scan = orion5x_pci_sys_scan_bus,
今のところ、上記パッチにてkurobox-proで動作を確認したのは
kernel-2.6.26.19
kernel-2.6.27
Kernel-2.6.28.7
Kernel-2.6.29-rc7
です。config はそれぞれ arch/arm/configs/orion5x_defconfig
を .config にコピーすれば概ねOKです。
たった1バイトの変更点ですが、やっとまともに動くカーネルがコンパイルできました。