struct rte_mbuf *mbuf;
};
+struct hns3_rx_basic_stats {
+ uint64_t packets;
+ uint64_t bytes;
+ uint64_t errors;
+};
+
struct hns3_rx_dfx_stats {
uint64_t l3_csum_errors;
uint64_t l4_csum_errors;
bool pvid_sw_discard_en;
bool enabled; /* indicate if Rx queue has been enabled */
+ struct hns3_rx_basic_stats basic_stats;
/* DFX statistics that driver does not need to discard packets */
struct hns3_rx_dfx_stats dfx_stats;
/* Error statistics that driver needs to discard packets */
struct rte_mbuf fake_mbuf; /* fake mbuf used with vector rx */
};
+struct hns3_tx_basic_stats {
+ uint64_t packets;
+ uint64_t bytes;
+};
+
/*
* The following items are used for the abnormal errors statistics in
* the Tx datapath. When upper level application calls the
bool pvid_sw_shift_en;
bool enabled; /* indicate if Tx queue has been enabled */
+ struct hns3_tx_basic_stats basic_stats;
struct hns3_tx_dfx_stats dfx_stats;
};
const uint32_t *hns3_dev_supported_ptypes_get(struct rte_eth_dev *dev);
void hns3_init_rx_ptype_tble(struct rte_eth_dev *dev);
void hns3_set_rxtx_function(struct rte_eth_dev *eth_dev);
+uint32_t hns3_get_tqp_intr_reg_offset(uint16_t tqp_intr_id);
void hns3_set_queue_intr_gl(struct hns3_hw *hw, uint16_t queue_id,
uint8_t gl_idx, uint16_t gl_value);
void hns3_set_queue_intr_rl(struct hns3_hw *hw, uint16_t queue_id,