crypto/mlx5: add keytag configuration
[dpdk.git] / drivers / raw / ioat / ioat_private.h
index 53f00a9..f032d5f 100644 (file)
@@ -21,7 +21,7 @@
 extern int ioat_pmd_logtype;
 
 #define IOAT_PMD_LOG(level, fmt, args...) rte_log(RTE_LOG_ ## level, \
-               ioat_pmd_logtype, "%s(): " fmt "\n", __func__, ##args)
+               ioat_pmd_logtype, "IOAT: %s(): " fmt "\n", __func__, ##args)
 
 #define IOAT_PMD_DEBUG(fmt, args...)  IOAT_PMD_LOG(DEBUG, fmt, ## args)
 #define IOAT_PMD_INFO(fmt, args...)   IOAT_PMD_LOG(INFO, fmt, ## args)
@@ -30,8 +30,10 @@ extern int ioat_pmd_logtype;
 
 struct idxd_pci_common {
        rte_spinlock_t lk;
+
+       uint8_t wq_cfg_sz;
        volatile struct rte_idxd_bar0 *regs;
-       volatile struct rte_idxd_wqcfg *wq_regs;
+       volatile uint32_t *wq_regs_base;
        volatile struct rte_idxd_grpcfg *grp_regs;
        volatile void *portals;
 };
@@ -45,16 +47,38 @@ struct idxd_rawdev {
        uint16_t max_batches;
 
        union {
+               struct {
+                       unsigned int dsa_id;
+               } vdev;
+
                struct idxd_pci_common *pci;
        } u;
 };
 
+int ioat_xstats_get(const struct rte_rawdev *dev, const unsigned int ids[],
+               uint64_t values[], unsigned int n);
+
+int ioat_xstats_get_names(const struct rte_rawdev *dev,
+               struct rte_rawdev_xstats_name *names,
+               unsigned int size);
+
+int ioat_xstats_reset(struct rte_rawdev *dev, const uint32_t *ids,
+               uint32_t nb_ids);
+
+extern int ioat_rawdev_test(uint16_t dev_id);
+
 extern int idxd_rawdev_create(const char *name, struct rte_device *dev,
                       const struct idxd_rawdev *idxd,
                       const struct rte_rawdev_ops *ops);
 
 extern int idxd_rawdev_close(struct rte_rawdev *dev);
 
-extern int idxd_rawdev_test(uint16_t dev_id);
+extern int idxd_dev_configure(const struct rte_rawdev *dev,
+               rte_rawdev_obj_t config, size_t config_size);
+
+extern int idxd_dev_info_get(struct rte_rawdev *dev, rte_rawdev_obj_t dev_info,
+               size_t info_size);
+
+extern int idxd_dev_dump(struct rte_rawdev *dev, FILE *f);
 
 #endif /* _IOAT_PRIVATE_H_ */