From: Balasubramanian Manoharan <bala.manoha...@linaro.org>

Adds odp_schedule_order_unlock_lock() api. This api combines schedule
order unlock and lock into a single api for performance optimization in HW

Signed-off-by: Balasubramanian Manoharan <bala.manoha...@linaro.org>
---
/** Email created from pull request 160 (bala-manoharan:api_sched_order_lock)
 ** https://github.com/Linaro/odp/pull/160
 ** Patch: https://github.com/Linaro/odp/pull/160.patch
 ** Base sha: 6b6253c30f88c80bf632436ff06c1b000860a2f1
 ** Merge commit sha: 8654cc5ecbcd8f0299a0c56a1e2ff23ba87c1d67
 **/
 include/odp/api/spec/schedule.h | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/include/odp/api/spec/schedule.h b/include/odp/api/spec/schedule.h
index e2abf990b..fe2300db0 100644
--- a/include/odp/api/spec/schedule.h
+++ b/include/odp/api/spec/schedule.h
@@ -371,6 +371,27 @@ void odp_schedule_order_lock(uint32_t lock_index);
 void odp_schedule_order_unlock(uint32_t lock_index);
 
 /**
+ * Release existing ordered context lock and acquire a new lock
+ *
+ * This call is valid only when holding an ordered synchronization context.
+ * Release a previously locked ordered context lock and acquire a new ordered
+ * context lock. The operation is equivalent to application calling first
+ * odp_schedule_order_unlock(unlock_index) and then
+ * odp_schedule_order_lock(lock_index). The same constraints apply with this
+ * call as with those two.
+ *
+ * @param unlock_index Index of the acquired ordered lock in the current
+ *                     context to be released.
+ * @param lock_index   Index of the ordered lock in the current context to be
+ *                     acquired. Must be in the range
+ *                     0...odp_queue_lock_count() - 1.
+ *
+ * @see odp_schedule_order_lock(), odp_schedule_order_unlock()
+ *
+ */
+void odp_schedule_order_unlock_lock(uint32_t unlock_index, uint32_t 
lock_index);
+
+/**
  * @}
  */
 

Reply via email to