From: Dmitry Eremin-Solenikov <dmitry.ereminsoleni...@linaro.org>

Provide function mapping from odp_cos_t to internal cos_t type.

Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsoleni...@linaro.org>
---
/** Email created from pull request 243 (lumag:ipsec-packet-impl-3)
 ** https://github.com/Linaro/odp/pull/243
 ** Patch: https://github.com/Linaro/odp/pull/243.patch
 ** Base sha: 825f75ed8644ef57c5648961e7982daf13cd9375
 ** Merge commit sha: 42beb7e73df5f59ecb1d29f3adb5d8669c61bca7
 **/
 .../include/odp_classification_datamodel.h         |  4 +++
 platform/linux-generic/odp_classification.c        | 33 +++++++++++-----------
 2 files changed, 20 insertions(+), 17 deletions(-)

diff --git a/platform/linux-generic/include/odp_classification_datamodel.h 
b/platform/linux-generic/include/odp_classification_datamodel.h
index 29b39f9c3..a40541986 100644
--- a/platform/linux-generic/include/odp_classification_datamodel.h
+++ b/platform/linux-generic/include/odp_classification_datamodel.h
@@ -123,6 +123,10 @@ typedef union cos_u {
        uint8_t pad[ROUNDUP_CACHE_LINE(sizeof(struct cos_s))];
 } cos_t;
 
+/**
+ * Get classification entry basing on the id
+ */
+cos_t *_odp_cos_get_entry(odp_cos_t cos_id);
 
 /**
 Packet Matching Rule
diff --git a/platform/linux-generic/odp_classification.c 
b/platform/linux-generic/odp_classification.c
index a5cba56a4..6ece74fca 100644
--- a/platform/linux-generic/odp_classification.c
+++ b/platform/linux-generic/odp_classification.c
@@ -302,8 +302,7 @@ odp_pmr_t alloc_pmr(pmr_t **pmr)
        return ODP_PMR_INVAL;
 }
 
-static
-cos_t *get_cos_entry(odp_cos_t cos_id)
+cos_t *_odp_cos_get_entry(odp_cos_t cos_id)
 {
        if (_odp_typeval(cos_id) >= CLS_COS_MAX_ENTRY ||
            cos_id == ODP_COS_INVALID)
@@ -326,7 +325,7 @@ pmr_t *get_pmr_entry(odp_pmr_t pmr_id)
 
 int odp_cos_destroy(odp_cos_t cos_id)
 {
-       cos_t *cos = get_cos_entry(cos_id);
+       cos_t *cos = _odp_cos_get_entry(cos_id);
 
        if (NULL == cos) {
                ODP_ERR("Invalid odp_cos_t handle");
@@ -339,7 +338,7 @@ int odp_cos_destroy(odp_cos_t cos_id)
 
 int odp_cos_queue_set(odp_cos_t cos_id, odp_queue_t queue_id)
 {
-       cos_t *cos = get_cos_entry(cos_id);
+       cos_t *cos = _odp_cos_get_entry(cos_id);
 
        if (cos == NULL) {
                ODP_ERR("Invalid odp_cos_t handle");
@@ -353,7 +352,7 @@ int odp_cos_queue_set(odp_cos_t cos_id, odp_queue_t 
queue_id)
 
 odp_queue_t odp_cos_queue(odp_cos_t cos_id)
 {
-       cos_t *cos = get_cos_entry(cos_id);
+       cos_t *cos = _odp_cos_get_entry(cos_id);
 
        if (!cos) {
                ODP_ERR("Invalid odp_cos_t handle");
@@ -365,7 +364,7 @@ odp_queue_t odp_cos_queue(odp_cos_t cos_id)
 
 uint32_t odp_cls_cos_num_queue(odp_cos_t cos_id)
 {
-       cos_t *cos = get_cos_entry(cos_id);
+       cos_t *cos = _odp_cos_get_entry(cos_id);
 
        if (!cos) {
                ODP_ERR("Invalid odp_cos_t handle");
@@ -383,7 +382,7 @@ uint32_t odp_cls_cos_queues(odp_cos_t cos_id, odp_queue_t 
queue[],
        uint32_t tbl_index;
        uint32_t i;
 
-       cos  = get_cos_entry(cos_id);
+       cos  = _odp_cos_get_entry(cos_id);
        if (!cos) {
                ODP_ERR("Invalid odp_cos_t handle");
                return 0;
@@ -403,7 +402,7 @@ uint32_t odp_cls_cos_queues(odp_cos_t cos_id, odp_queue_t 
queue[],
 
 int odp_cos_drop_set(odp_cos_t cos_id, odp_cls_drop_t drop_policy)
 {
-       cos_t *cos = get_cos_entry(cos_id);
+       cos_t *cos = _odp_cos_get_entry(cos_id);
 
        if (!cos) {
                ODP_ERR("Invalid odp_cos_t handle");
@@ -417,7 +416,7 @@ int odp_cos_drop_set(odp_cos_t cos_id, odp_cls_drop_t 
drop_policy)
 
 odp_cls_drop_t odp_cos_drop(odp_cos_t cos_id)
 {
-       cos_t *cos = get_cos_entry(cos_id);
+       cos_t *cos = _odp_cos_get_entry(cos_id);
 
        if (!cos) {
                ODP_ERR("Invalid odp_cos_t handle");
@@ -437,7 +436,7 @@ int odp_pktio_default_cos_set(odp_pktio_t pktio_in, 
odp_cos_t default_cos)
                ODP_ERR("Invalid odp_pktio_t handle");
                return -1;
        }
-       cos = get_cos_entry(default_cos);
+       cos = _odp_cos_get_entry(default_cos);
        if (cos == NULL) {
                ODP_ERR("Invalid odp_cos_t handle");
                return -1;
@@ -458,7 +457,7 @@ int odp_pktio_error_cos_set(odp_pktio_t pktio_in, odp_cos_t 
error_cos)
                return -1;
        }
 
-       cos = get_cos_entry(error_cos);
+       cos = _odp_cos_get_entry(error_cos);
        if (cos == NULL) {
                ODP_ERR("Invalid odp_cos_t handle");
                return -1;
@@ -512,7 +511,7 @@ int odp_cos_with_l2_priority(odp_pktio_t pktio_in,
        LOCK(&l2_cos->lock);
        /* Update the L2 QoS table*/
        for (i = 0; i < num_qos; i++) {
-               cos = get_cos_entry(cos_table[i]);
+               cos = _odp_cos_get_entry(cos_table[i]);
                if (cos != NULL) {
                        if (CLS_COS_MAX_L2_QOS > qos_table[i])
                                l2_cos->cos[qos_table[i]] = cos;
@@ -544,7 +543,7 @@ int odp_cos_with_l3_qos(odp_pktio_t pktio_in,
        LOCK(&l3_cos->lock);
        /* Update the L3 QoS table*/
        for (i = 0; i < num_qos; i++) {
-               cos = get_cos_entry(cos_table[i]);
+               cos = _odp_cos_get_entry(cos_table[i]);
                if (cos != NULL) {
                        if (CLS_COS_MAX_L3_QOS > qos_table[i])
                                l3_cos->cos[qos_table[i]] = cos;
@@ -643,8 +642,8 @@ odp_pmr_t odp_cls_pmr_create(const odp_pmr_param_t *terms, 
int num_terms,
        odp_pmr_t id;
        int val_sz;
        uint32_t loc;
-       cos_t *cos_src = get_cos_entry(src_cos);
-       cos_t *cos_dst = get_cos_entry(dst_cos);
+       cos_t *cos_src = _odp_cos_get_entry(src_cos);
+       cos_t *cos_dst = _odp_cos_get_entry(dst_cos);
 
        if (NULL == cos_src || NULL == cos_dst) {
                ODP_ERR("Invalid input handle");
@@ -691,7 +690,7 @@ int odp_cls_cos_pool_set(odp_cos_t cos_id, odp_pool_t pool)
 {
        cos_t *cos;
 
-       cos = get_cos_entry(cos_id);
+       cos = _odp_cos_get_entry(cos_id);
        if (cos == NULL) {
                ODP_ERR("Invalid odp_cos_t handle");
                return -1;
@@ -706,7 +705,7 @@ odp_pool_t odp_cls_cos_pool(odp_cos_t cos_id)
 {
        cos_t *cos;
 
-       cos = get_cos_entry(cos_id);
+       cos = _odp_cos_get_entry(cos_id);
        if (cos == NULL) {
                ODP_ERR("Invalid odp_cos_t handle");
                return ODP_POOL_INVALID;

Reply via email to