net/mlx5: support connection tracking between two ports
[dpdk.git] / drivers / event / cnxk / cn9k_worker.h
index 85be742..38fca08 100644 (file)
@@ -246,4 +246,52 @@ cn9k_sso_hws_get_work_empty(struct cn9k_sso_hws_state *ws, struct rte_event *ev)
        return !!gw.u64[1];
 }
 
+/* CN9K Fastpath functions. */
+uint16_t __rte_hot cn9k_sso_hws_enq(void *port, const struct rte_event *ev);
+uint16_t __rte_hot cn9k_sso_hws_enq_burst(void *port,
+                                         const struct rte_event ev[],
+                                         uint16_t nb_events);
+uint16_t __rte_hot cn9k_sso_hws_enq_new_burst(void *port,
+                                             const struct rte_event ev[],
+                                             uint16_t nb_events);
+uint16_t __rte_hot cn9k_sso_hws_enq_fwd_burst(void *port,
+                                             const struct rte_event ev[],
+                                             uint16_t nb_events);
+
+uint16_t __rte_hot cn9k_sso_hws_dual_enq(void *port,
+                                        const struct rte_event *ev);
+uint16_t __rte_hot cn9k_sso_hws_dual_enq_burst(void *port,
+                                              const struct rte_event ev[],
+                                              uint16_t nb_events);
+uint16_t __rte_hot cn9k_sso_hws_dual_enq_new_burst(void *port,
+                                                  const struct rte_event ev[],
+                                                  uint16_t nb_events);
+uint16_t __rte_hot cn9k_sso_hws_dual_enq_fwd_burst(void *port,
+                                                  const struct rte_event ev[],
+                                                  uint16_t nb_events);
+
+uint16_t __rte_hot cn9k_sso_hws_deq(void *port, struct rte_event *ev,
+                                   uint64_t timeout_ticks);
+uint16_t __rte_hot cn9k_sso_hws_deq_burst(void *port, struct rte_event ev[],
+                                         uint16_t nb_events,
+                                         uint64_t timeout_ticks);
+uint16_t __rte_hot cn9k_sso_hws_tmo_deq(void *port, struct rte_event *ev,
+                                       uint64_t timeout_ticks);
+uint16_t __rte_hot cn9k_sso_hws_tmo_deq_burst(void *port, struct rte_event ev[],
+                                             uint16_t nb_events,
+                                             uint64_t timeout_ticks);
+
+uint16_t __rte_hot cn9k_sso_hws_dual_deq(void *port, struct rte_event *ev,
+                                        uint64_t timeout_ticks);
+uint16_t __rte_hot cn9k_sso_hws_dual_deq_burst(void *port,
+                                              struct rte_event ev[],
+                                              uint16_t nb_events,
+                                              uint64_t timeout_ticks);
+uint16_t __rte_hot cn9k_sso_hws_dual_tmo_deq(void *port, struct rte_event *ev,
+                                            uint64_t timeout_ticks);
+uint16_t __rte_hot cn9k_sso_hws_dual_tmo_deq_burst(void *port,
+                                                  struct rte_event ev[],
+                                                  uint16_t nb_events,
+                                                  uint64_t timeout_ticks);
+
 #endif