drivers: remove octeontx2 drivers
[dpdk.git] / drivers / event / cnxk / cn9k_worker.c
index 538bc4b..a981bc9 100644 (file)
@@ -5,6 +5,7 @@
 #include "roc_api.h"
 
 #include "cn9k_worker.h"
+#include "cn9k_cryptodev_ops.h"
 
 uint16_t __rte_hot
 cn9k_sso_hws_enq(void *port, const struct rte_event *ev)
@@ -18,7 +19,8 @@ cn9k_sso_hws_enq(void *port, const struct rte_event *ev)
                cn9k_sso_hws_forward_event(ws, ev);
                break;
        case RTE_EVENT_OP_RELEASE:
-               cnxk_sso_hws_swtag_flush(ws->tag_op, ws->swtag_flush_op);
+               cnxk_sso_hws_swtag_flush(ws->base + SSOW_LF_GWS_TAG,
+                                        ws->base + SSOW_LF_GWS_OP_SWTAG_FLUSH);
                break;
        default:
                return 0;
@@ -66,17 +68,18 @@ uint16_t __rte_hot
 cn9k_sso_hws_dual_enq(void *port, const struct rte_event *ev)
 {
        struct cn9k_sso_hws_dual *dws = port;
-       struct cn9k_sso_hws_state *vws;
+       uint64_t base;
 
-       vws = &dws->ws_state[!dws->vws];
+       base = dws->base[!dws->vws];
        switch (ev->op) {
        case RTE_EVENT_OP_NEW:
                return cn9k_sso_hws_dual_new_event(dws, ev);
        case RTE_EVENT_OP_FORWARD:
-               cn9k_sso_hws_dual_forward_event(dws, vws, ev);
+               cn9k_sso_hws_dual_forward_event(dws, base, ev);
                break;
        case RTE_EVENT_OP_RELEASE:
-               cnxk_sso_hws_swtag_flush(vws->tag_op, vws->swtag_flush_op);
+               cnxk_sso_hws_swtag_flush(base + SSOW_LF_GWS_TAG,
+                                        base + SSOW_LF_GWS_OP_SWTAG_FLUSH);
                break;
        default:
                return 0;
@@ -113,7 +116,29 @@ cn9k_sso_hws_dual_enq_fwd_burst(void *port, const struct rte_event ev[],
        struct cn9k_sso_hws_dual *dws = port;
 
        RTE_SET_USED(nb_events);
-       cn9k_sso_hws_dual_forward_event(dws, &dws->ws_state[!dws->vws], ev);
+       cn9k_sso_hws_dual_forward_event(dws, dws->base[!dws->vws], ev);
 
        return 1;
 }
+
+uint16_t __rte_hot
+cn9k_sso_hws_ca_enq(void *port, struct rte_event ev[], uint16_t nb_events)
+{
+       struct cn9k_sso_hws *ws = port;
+
+       RTE_SET_USED(nb_events);
+
+       return cn9k_cpt_crypto_adapter_enqueue(ws->base + SSOW_LF_GWS_TAG,
+                                              ev->event_ptr);
+}
+
+uint16_t __rte_hot
+cn9k_sso_hws_dual_ca_enq(void *port, struct rte_event ev[], uint16_t nb_events)
+{
+       struct cn9k_sso_hws_dual *dws = port;
+
+       RTE_SET_USED(nb_events);
+
+       return cn9k_cpt_crypto_adapter_enqueue(
+               dws->base[!dws->vws] + SSOW_LF_GWS_TAG, ev->event_ptr);
+}