[RFC/PATCH 10/14] dt: Add pd_size to AUXDATA structure

Grant Likely grant.likely at secretlab.ca
Wed Aug 10 23:16:30 EST 2011


On Wed, Aug 10, 2011 at 5:57 AM, Cousson, Benoit <b-cousson at ti.com> wrote:
> On 8/9/2011 4:10 PM, G, Manjunath Kondaiah wrote:
>>
>> Add pd_size in the AUXDATA structure so that device drivers which require
>> platform_data size can pass along with AUXDATA.
>
> It is really needed by device driver? Or is it because omap_device_build is
> using platform_device_add_data that is doing a copy of the pdata and thus
> require the size?

Yes, I have the same question.  What is the reason for needing the
platform data size?

g.

>
>> Signed-off-by: G, Manjunath Kondaiah<manjugk at ti.com>
>> ---
>>  drivers/of/platform.c       |    2 ++
>>  include/linux/of_platform.h |    5 +++++
>>  2 files changed, 7 insertions(+), 0 deletions(-)
>>
>> diff --git a/drivers/of/platform.c b/drivers/of/platform.c
>> index ebbbf42..4b27286 100644
>> --- a/drivers/of/platform.c
>> +++ b/drivers/of/platform.c
>> @@ -565,6 +565,7 @@ static int of_platform_bus_create(struct device_node
>> *bus,
>>        struct platform_device *dev;
>>        const char *bus_id = NULL;
>>        void *platform_data = NULL;
>> +       int pd_size;
>
> Maybe platform_data_size will be a little bit more consistent?
>
> Regards,
> Benoit
>
>>        int id = -1;
>>        int rc = 0;
>>
>> @@ -588,6 +589,7 @@ static int of_platform_bus_create(struct device_node
>> *bus,
>>                bus_id = auxdata->name;
>>                id = auxdata->id;
>>                platform_data = auxdata->platform_data;
>> +               pd_size = auxdata->pd_size;
>>        }
>>
>>        if (of_device_is_compatible(bus, "arm,primecell")) {
>> diff --git a/include/linux/of_platform.h b/include/linux/of_platform.h
>> index 252246c..a3be980 100644
>> --- a/include/linux/of_platform.h
>> +++ b/include/linux/of_platform.h
>> @@ -47,6 +47,7 @@ struct of_dev_auxdata {
>>        char *name;
>>        int id;
>>        void *platform_data;
>> +       int pd_size;
>>  };
>>
>>  /* Macro to simplify populating a lookup table */
>> @@ -58,6 +59,10 @@ struct of_dev_auxdata {
>>        { .compatible = _compat, .phys_addr = _phys, .name = _name, \
>>          .id = _id, .platform_data = _pdata }
>>
>> +#define OF_DEV_AUXDATA_ID_PDSIZE(_compat,_phys,_name,_id,_pdata,_pd_size)
>> \
>> +       { .compatible = _compat, .phys_addr = _phys, .name = _name, \
>> +         .id = _id, .platform_data = _pdata, .pd_size = _pd_size }
>> +
>>  /**
>>   * of_platform_driver - Legacy of-aware driver for platform devices.
>>   *
>
>
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
>



-- 
Grant Likely, B.Sc., P.Eng.
Secret Lab Technologies Ltd.


More information about the devicetree-discuss mailing list