- MTU update
- Scatter-Gather IO support
- Vector Poll mode driver
+- Debug utilities - Context dump and error interrupt support
- Support Rx interrupt
Prerequisites
Extended stats = Y
FW version = Y
Module EEPROM dump = Y
+Registers dump = Y
Linux = Y
ARMv8 = Y
Usage doc = Y
Extended stats = Y
FW version = Y
Module EEPROM dump = Y
+Registers dump = Y
Linux = Y
ARMv8 = Y
Usage doc = Y
Extended stats = Y
FW version = Y
Module EEPROM dump = Y
+Registers dump = Y
Linux = Y
ARMv8 = Y
Usage doc = Y
.txq_info_get = cnxk_nix_txq_info_get,
.tx_done_cleanup = cnxk_nix_tx_done_cleanup,
.flow_ops_get = cnxk_nix_flow_ops_get,
+ .get_reg = cnxk_nix_dev_get_reg,
};
static int
int cnxk_ethdev_parse_devargs(struct rte_devargs *devargs,
struct cnxk_eth_dev *dev);
+/* Debug */
+int cnxk_nix_dev_get_reg(struct rte_eth_dev *eth_dev,
+ struct rte_dev_reg_info *regs);
+
/* Inlines */
static __rte_always_inline uint64_t
cnxk_pktmbuf_detach(struct rte_mbuf *m)
return 0;
}
+
+int
+cnxk_nix_dev_get_reg(struct rte_eth_dev *eth_dev, struct rte_dev_reg_info *regs)
+{
+ struct cnxk_eth_dev *dev = cnxk_eth_pmd_priv(eth_dev);
+ struct roc_nix *nix = &dev->nix;
+ uint64_t *data = regs->data;
+ int rc = -ENOTSUP;
+
+ if (data == NULL) {
+ rc = roc_nix_lf_get_reg_count(nix);
+ if (rc > 0) {
+ regs->length = rc;
+ regs->width = 8;
+ rc = 0;
+ }
+ return rc;
+ }
+
+ if (!regs->length ||
+ regs->length == (uint32_t)roc_nix_lf_get_reg_count(nix))
+ return roc_nix_lf_reg_dump(nix, data);
+
+ return rc;
+}