The of_node for the SB600 (io-bridge) has its device_type set to 'io-bridge' Set it to 'isa' so that it can be found by isa_bridge_find_early() instead of using patches in the kernel.
Signed-off-by: Darren Stevens <dar...@stevens-zone.net> ---
diff --git a/arch/powerpc/kernel/prom_init.c b/arch/powerpc/kernel/prom_init.c index 8269093..d75937a 100644 --- a/arch/powerpc/kernel/prom_init.c +++ b/arch/powerpc/kernel/prom_init.c @@ -2697,6 +2697,24 @@ static void __init fixup_device_tree_pasemi(void) } } } + + /* + * The io-bridge has device_type set to 'io-bridge' + * change it to 'isa' so that generic isa-bridge code can add the SB600 and + * its on-board peripherals. + */ + + name = "/pxp@0,e0000000/io-bridge@0"; + iob = call_prom("finddevice", 1, 1, ADDR(name)); + if (!PHANDLE_VALID(iob)) + return; + + /* device_type is already set, just change it. */ + + prom_printf("Changing device_type of SB600 node...\n"); + + prom_setprop(iob, name, "device_type", "isa", sizeof("isa")); + #endif //CONFIG_PPC_PASEMI_NEMO } #else