Re: [v0 PATCH 5/5] EDAC: CPC925 MC platform device setup

Harry Ciao
2009-04-03T03:20:27Z

Arnd Bergmann 写道:
> On Thursday 02 April 2009, Harry Ciao wrote:
>
>> +#ifdef CONFIG_EDAC
>> +#define CPC925_MC_START 0xf8000000
>> +#define CPC925_MC_END 0xf8ffffff /* sizeof 16MB */
>> +/* Register a platform device for CPC925 memory controller */
>> +static int __init maple_cpc925_edac_setup(void)
>>
>
> It's not good to have these encoded as magic numbers.
> Can't you find the addresses in the device tree? Maybe it's
> even possible to make this an of_platform_driver if you
> find a good node to bind to.
>
> Does the driver also work on a G5 Mac, or is it limited
> to the maple platform?
>
> Arnd <><
>
>
Hi Arnd,

I did try to get resource information from its DTB node first, the
"hostbridge" node do can be found successfully, however, unfortunately,
as I put in the notes in that function, the #address-cells and
#size-cells specified by its parent node are both 2, but the cell number
used in its "reg" property is actually 1, as

reg = <0xf8000000 0x1000000>;

which will make of_address_to_resource() failed with -EINVAL; that's why
I have to set it up from scratch manually.

Cheers,

Harry