Re: [PATCH] [POWERPC] 85xx: Add basic Uniprocessor MPC8572 DS port

Kumar Gala
2007-09-11T15:47:28Z

On Sep 11, 2007, at 9:18 AM, Olof Johansson wrote:

> Hi,
>
> On Tue, Sep 11, 2007 at 01:29:18AM -0500, Kumar Gala wrote:
>> Added basic board port for MPC8572 DS reference platform that is
>> similiar to the MPC8544/33 DS reference platform in uniprocessor
>> mode.
>>
>> ---
>> 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.

>
>
>> diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h
>> index 06d23e1..c98b867 100644
>> --- a/include/linux/pci_ids.h
>> +++ b/include/linux/pci_ids.h
>> @@ -374,10 +374,9 @@
>> #define PCI_DEVICE_ID_ATI_IXP400_SATA 0x4379
>> #define PCI_DEVICE_ID_ATI_IXP400_SATA2 0x437a
>> #define PCI_DEVICE_ID_ATI_IXP600_SATA 0x4380
>> -#define PCI_DEVICE_ID_ATI_IXP600_SMBUS 0x4385
>> +#define PCI_DEVICE_ID_ATI_SBX00_SMBUS 0x4385
>> #define PCI_DEVICE_ID_ATI_IXP600_IDE 0x438c
>> #define PCI_DEVICE_ID_ATI_IXP700_SATA 0x4390
>> -#define PCI_DEVICE_ID_ATI_IXP700_SMBUS 0x4395
>> #define PCI_DEVICE_ID_ATI_IXP700_IDE 0x439c
>
> This looks like it doesn't belong in this patch.

oops :) {copying from an different tree}

- k