examples/vdpa: add statistics show command
[dpdk.git] / examples / l2fwd-event / l2fwd_event.h
index fe7857c..78f22e5 100644 (file)
@@ -17,6 +17,8 @@ typedef uint32_t (*event_device_setup_cb)(struct l2fwd_resources *rsrc);
 typedef void (*event_port_setup_cb)(struct l2fwd_resources *rsrc);
 typedef void (*event_queue_setup_cb)(struct l2fwd_resources *rsrc,
                                     uint32_t event_queue_cfg);
+typedef void (*adapter_setup_cb)(struct l2fwd_resources *rsrc);
+typedef void (*event_loop_cb)(struct l2fwd_resources *rsrc);
 
 struct event_queues {
        uint8_t *event_q_id;
@@ -29,10 +31,24 @@ struct event_ports {
        rte_spinlock_t lock;
 };
 
+struct event_rx_adptr {
+       uint32_t service_id;
+       uint8_t nb_rx_adptr;
+       uint8_t *rx_adptr;
+};
+
+struct event_tx_adptr {
+       uint32_t service_id;
+       uint8_t nb_tx_adptr;
+       uint8_t *tx_adptr;
+};
+
 struct event_setup_ops {
        event_device_setup_cb event_device_setup;
        event_queue_setup_cb event_queue_setup;
        event_port_setup_cb event_port_setup;
+       adapter_setup_cb adapter_setup;
+       event_loop_cb l2fwd_event_loop;
 };
 
 struct l2fwd_event_resources {
@@ -44,11 +60,14 @@ struct l2fwd_event_resources {
        struct event_ports evp;
        struct event_queues evq;
        struct event_setup_ops ops;
+       struct event_rx_adptr rx_adptr;
+       struct event_tx_adptr tx_adptr;
        struct rte_event_port_conf def_p_conf;
 };
 
 void l2fwd_event_resource_setup(struct l2fwd_resources *rsrc);
 void l2fwd_event_set_generic_ops(struct event_setup_ops *ops);
 void l2fwd_event_set_internal_port_ops(struct event_setup_ops *ops);
+void l2fwd_event_service_setup(struct l2fwd_resources *rsrc);
 
 #endif /* __L2FWD_EVENT_H__ */