compress/qat: add info retrieval function
authorFiona Trahe <fiona.trahe@intel.com>
Fri, 13 Jul 2018 02:28:19 +0000 (03:28 +0100)
committerPablo de Lara <pablo.de.lara.guarch@intel.com>
Mon, 23 Jul 2018 23:48:10 +0000 (01:48 +0200)
Add capabilities pointer to internal qat comp device
and function to return this and other info.

Signed-off-by: Fiona Trahe <fiona.trahe@intel.com>
Signed-off-by: Tomasz Jozwiak <tomaszx.jozwiak@intel.com>
drivers/compress/qat/qat_comp_pmd.c
drivers/compress/qat/qat_comp_pmd.h

index beab6e3..482ebd1 100644 (file)
@@ -194,3 +194,22 @@ qat_comp_dev_close(struct rte_compressdev *dev)
 
        return ret;
 }
+
+
+void
+qat_comp_dev_info_get(struct rte_compressdev *dev,
+                       struct rte_compressdev_info *info)
+{
+       struct qat_comp_dev_private *comp_dev = dev->data->dev_private;
+       const struct qat_qp_hw_data *comp_hw_qps =
+               qat_gen_config[comp_dev->qat_dev->qat_dev_gen]
+                             .qp_hw_data[QAT_SERVICE_COMPRESSION];
+
+       if (info != NULL) {
+               info->max_nb_queue_pairs =
+                       qat_qps_per_service(comp_hw_qps,
+                                           QAT_SERVICE_COMPRESSION);
+               info->feature_flags = dev->feature_flags;
+               info->capabilities = comp_dev->qat_dev_capabilities;
+       }
+}
index b10a66f..22576f4 100644 (file)
@@ -21,6 +21,8 @@ struct qat_comp_dev_private {
        /**< The qat pci device hosting the service */
        struct rte_compressdev *compressdev;
        /**< The pointer to this compression device structure */
+       const struct rte_compressdev_capabilities *qat_dev_capabilities;
+       /* QAT device compression capabilities */
        const struct rte_memzone *interm_buff_mz;
        /**< The device's memory for intermediate buffers */
        struct rte_mempool *xformpool;
@@ -48,5 +50,9 @@ qat_comp_dev_config(struct rte_compressdev *dev,
 int
 qat_comp_dev_close(struct rte_compressdev *dev);
 
+void
+qat_comp_dev_info_get(struct rte_compressdev *dev,
+                       struct rte_compressdev_info *info);
+
 #endif
 #endif /* _QAT_COMP_PMD_H_ */