On 9/1/2011 12:23 AM, Hilman, Kevin wrote:
Benoit Cousson<b-cous...@ti.com>  writes:

From: Nishanth Menon<n...@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<n...@ti.com>
[b-cous...@ti.com: Adapt it to the new pdev pointer inside od]
Signed-off-by: Benoit Cousson<b-cous...@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.

After comments on patch 1 are addressed, the

       pdev = omap_hwmod_name_get_pdev(oh_name)
       return&pdev->dev;

Thanks,
Benoit
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to