On Tue, Sep 11, 2007 at 10:50:18AM -0500, Kumar Gala wrote: >>> diff --git a/arch/powerpc/platforms/85xx/mpc85xx_ds.c >>> b/arch/powerpc/platforms/85xx/mpc85xx_ds.c >>> index 3a5c3c4..1e2eba8 100644 >>> --- a/arch/powerpc/platforms/85xx/mpc85xx_ds.c >>> +++ b/arch/powerpc/platforms/85xx/mpc85xx_ds.c >>> @@ -181,6 +181,23 @@ static int __init mpc8544_ds_probe(void) >>> } >>> } >>> >>> +/* >>> + * Called very early, device-tree isn't unflattened >>> + */ >>> +static int __init mpc8572_ds_probe(void) >>> +{ >>> + unsigned long root = of_get_flat_dt_root(); >>> + >>> + if (of_flat_dt_is_compatible(root, "MPC8572DS")) { >>> +#ifdef CONFIG_PCI >>> + primary_phb_addr = 0x8000; >>> +#endif >>> + return 1; >>> + } else { >>> + return 0; >>> + } >>> +} >>> + >>> define_machine(mpc8544_ds) { >>> .name = "MPC8544 DS", >>> .probe = mpc8544_ds_probe, >>> @@ -194,3 +211,17 @@ define_machine(mpc8544_ds) { >>> .calibrate_decr = generic_calibrate_decr, >>> .progress = udbg_progress, >>> }; >>> + >>> +define_machine(mpc8572_ds) { >>> + .name = "MPC8572 DS", >>> + .probe = mpc8572_ds_probe, >>> + .setup_arch = mpc85xx_ds_setup_arch, >>> + .init_IRQ = mpc85xx_ds_pic_init, >>> +#ifdef CONFIG_PCI >>> + .pcibios_fixup_bus = fsl_pcibios_fixup_bus, >>> +#endif >>> + .get_irq = mpic_get_irq, >>> + .restart = mpc85xx_restart, >>> + .calibrate_decr = generic_calibrate_decr, >>> + .progress = udbg_progress, >>> +}; >> >> How different are these boards really? Could you just detect MPC85xxDS >> and have a generic platform for them, or are they different enough that >> you need individual ones for it? > > I wanted a different probe. I figured having a different struct was a > simple solution.
Seems like the only reason to need that is the setting of primary_phb_addr. Can't that information be derived out of the device tree instead? That'd avoid alot of code duplication (code that includes ifdefs, FWIW :-) It just seems like a slippery slope. I'm not objecting directly to this patch, but I think it should be fixed for the longer term. -Olof _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev