Rajendra,

>-----Original Message-----
>From: linux-omap-ow...@vger.kernel.org
>[mailto:linux-omap-ow...@vger.kernel.org] On Behalf Of Rajendra Nayak
>Sent: Monday, March 21, 2011 4:40 PM
>To: linux-omap@vger.kernel.org
>Cc: p...@pwsan.com; b-cous...@ti.com; Rajendra Nayak
>Subject: [RFC 3/3] OMAP3: omap_device: Add support to
>associate a device with an initiator
>
>These api's are meant to to used by drivers to
>associate/disassociate a device from a given initiator.
>
>Signed-off-by: Rajendra Nayak <rna...@ti.com>
>---
> arch/arm/plat-omap/omap_device.c |   54
>++++++++++++++++++++++++++++++++++++++
> 1 files changed, 54 insertions(+), 0 deletions(-)
>
>diff --git a/arch/arm/plat-omap/omap_device.c
>b/arch/arm/plat-omap/omap_device.c
>index 9bbda9a..0cd05d2 100644
>--- a/arch/arm/plat-omap/omap_device.c
>+++ b/arch/arm/plat-omap/omap_device.c
>@@ -662,6 +662,60 @@ int omap_device_shutdown(struct
>platform_device *pdev)
>       return ret;
> }
>
>+static int omap_device_add_initiator_user(struct
>platform_device *pdev,
>+                                        u8 init_id)
>+{
>+      int i;
>+      struct omap_device *od;
>+
>+      od = _find_by_pdev(pdev);
>+
>+      if (od->_state != OMAP_DEVICE_STATE_ENABLED)
>+              return -EINVAL;
>+
>+      for (i = 0; i < od->hwmods_cnt; i++)
>+              omap_hwmod_add_initiator_user(od->hwmods[i], init_id);

Not checking for return value.

>+
>+      return 0;
>+}
>+
>+inline int omap_device_add_mpu_user(struct platform_device *pdev)
>+{
>+      return omap_device_add_initiator_user(pdev, OMAP_INIT_MPU);
>+}
>+
>+inline int omap_device_add_iva_user(struct platform_device *pdev)
>+{
>+      return omap_device_add_initiator_user(pdev, OMAP_INIT_IVA);

Ditto..

>+}
>+
>+static int omap_device_del_initiator_user(struct
>platform_device *pdev,
>+                                        u8 init_id)
>+{
>+      int i;
>+      struct omap_device *od;
>+
>+      od = _find_by_pdev(pdev);
>+
>+      if (od->_state == OMAP_DEVICE_STATE_ENABLED)
>+              return -EINVAL;
>+
>+      for (i = 0; i < od->hwmods_cnt; i++)
>+              omap_hwmod_del_initiator_user(od->hwmods[i], init_id);
>+
>+      return 0;
>+}
>+
>+inline int omap_device_del_mpu_user(struct platform_device *pdev)
>+{
>+      return omap_device_del_initiator_user(pdev, OMAP_INIT_MPU);
>+}
>+
>+inline int omap_device_del_iva_user(struct platform_device *pdev)
>+{
>+      return omap_device_del_initiator_user(pdev, OMAP_INIT_IVA);
>+}
>+
> /**
>  * omap_device_align_pm_lat - activate/deactivate device to
>match wakeup lat lim
>  * @od: struct omap_device *
>--
>1.7.0.4
>
>--
>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
>
--
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