[PATCH 2/7] OMAP: PM: omap_device: add few quick access functions
Kevin Hilman
khilman at ti.com
Thu Sep 1 10:55:14 EDT 2011
"Cousson, Benoit" <b-cousson at ti.com> writes:
> On 9/1/2011 12:23 AM, Hilman, Kevin wrote:
>> Benoit Cousson<b-cousson at ti.com> writes:
>>
>>> From: Nishanth Menon<nm at ti.com>
>>>
>>> Provide a quick set of access functions:
>>> a) Convert omap_device to platform_device - This is the flip of
>>> to_omap_device for equivalent usage
>>> b) Convert omap_device to device pointer - This is useful for
>>> most devices that need to go through standard linux functions that
>>> take device pointer.
>>> c) Convert hwmod to device pointer - This wrapper provides ability for
>>> drivers to convert directly from hwmod name back to device pointer
>>> without having to handle this on a driver by driver basis
>>>
>>> Signed-off-by: Nishanth Menon<nm at ti.com>
>>> [b-cousson at ti.com: Adapt it to the new pdev pointer inside od]
>>> Signed-off-by: Benoit Cousson<b-cousson at ti.com>
>>> ---
>>> arch/arm/plat-omap/include/plat/omap_device.h | 15 +++++++++++++++
>>> 1 files changed, 15 insertions(+), 0 deletions(-)
>>>
>>> diff --git a/arch/arm/plat-omap/include/plat/omap_device.h b/arch/arm/plat-omap/include/plat/omap_device.h
>>> index bdc2804..903f329 100644
>>> --- a/arch/arm/plat-omap/include/plat/omap_device.h
>>> +++ b/arch/arm/plat-omap/include/plat/omap_device.h
>>> @@ -152,6 +152,21 @@ static inline struct omap_device *to_omap_device(struct platform_device *pdev)
>>> return pdev ? pdev->archdata.od : NULL;
>>> }
>>>
>>> +/* Convert omap_device to platform device pointer */
>>> +#define omap_device_get_pdev(x) ((x)->pdev)
>>> +/* Convert omap_device to device pointer */
>>> +#define omap_device_get_dev(x) (&omap_device_get_pdev(x)->dev)
>>
>> I don't see these used elsewhere, and I don't think they're needed...
>
> Well, there are used once... just below, and that's all.
>
>>> +/* Convert omap_hwmod name to device pointer */
>>> +static inline struct device *omap_hwmod_name_get_dev(const char *oh_name)
>>> +{
>>> + struct omap_device *od;
>>> + od = omap_hwmod_name_get_odev(oh_name);
>>> + if (IS_ERR_OR_NULL(od))
>>> + return ERR_PTR(od ? PTR_ERR(od) : -ENODEV);
>>> + return omap_device_get_dev(od);
>>> +}
>>> +
>
> I will let Nishant comment, but I guess the idea was that an
> omap_device API should handle omap_device pointer, and then access to
> pdev or dev is done using these helpers.
>
> Assuming that now omap_device API should preferably use pdev, we can
> remove one step of indirection and thus get rid of the helpers, since
> they are not used anywhere else.
>
Yes please.
I've made most of the omap_device API now use pdev pointers already in
my series.
Thanks,
Kevin
More information about the linux-arm-kernel
mailing list