Add code to the OPP layer to find OPPs by OPP ID.  This is needed to hide
the details of the struct omap_opp from SmartReflex and SRF code.
---
 arch/arm/plat-omap/include/plat/opp.h |    3 +++
 arch/arm/plat-omap/opp.c              |   25 +++++++++++++++++++++++++
 2 files changed, 28 insertions(+), 0 deletions(-)

diff --git a/arch/arm/plat-omap/include/plat/opp.h 
b/arch/arm/plat-omap/include/plat/opp.h
index 4329767..38b5069 100644
--- a/arch/arm/plat-omap/include/plat/opp.h
+++ b/arch/arm/plat-omap/include/plat/opp.h
@@ -241,4 +241,7 @@ int opp_enable(struct omap_opp *opp);
  */
 int opp_disable(struct omap_opp *opp);
 
+struct omap_opp * __deprecated opp_find_by_opp_id(struct omap_opp *opps,
+                                                 u8 opp_id);
+
 #endif         /* __ASM_ARM_OMAP_OPP_H */
diff --git a/arch/arm/plat-omap/opp.c b/arch/arm/plat-omap/opp.c
index 2e97237..a5cc9a6 100644
--- a/arch/arm/plat-omap/opp.c
+++ b/arch/arm/plat-omap/opp.c
@@ -43,6 +43,31 @@ unsigned long opp_get_freq(const struct omap_opp *opp)
        return opp->rate;
 }
 
+/**
+ * opp_find_by_opp_id - look up OPP by OPP ID (deprecated)
+ * @opps: pointer to an array of struct omap_opp
+ *
+ * Returns the struct omap_opp pointer corresponding to the given OPP
+ * ID @opp_id, or returns NULL on error.
+ */
+struct omap_opp * __deprecated opp_find_by_opp_id(struct omap_opp *opps,
+                                                 u8 opp_id)
+{
+       int i = 1;
+
+       if (!opps || !opp_id)
+               return NULL;
+
+       /* The first entry is a dummy one, loop till we hit terminator */
+       while (!OPP_TERM(&opps[i])) {
+               if (opps[i].enabled && (opps[i].opp_id == opp_id))
+                       return &opps[i];
+               i++;
+       }
+
+       return NULL;
+}
+
 int opp_get_opp_count(struct omap_opp *oppl)
 {
        u8 n = 0;


--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to