From: Fiona Trahe Date: Wed, 13 Jun 2018 12:14:09 +0000 (+0200) Subject: crypto/qat: remove incorrect usage of bundle number X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=4c0d2ee23c393fa19282944d1e8a2ca18eff8c33;p=dpdk.git crypto/qat: remove incorrect usage of bundle number As bundle_num is included in qat_gen1_qps static array there shouldn't be a multiplier used in qat_qps_per_service() Then removed ADF_NUM_BUNDLES_PER_DEV as no longer used. Also renamed ADF_MAX_QPS_PER_BUNDLE to ADF_MAX_QPS_ON_ANY_SERVICE and reduced from 4 to 2 which is enough for all current devices. Signed-off-by: Fiona Trahe --- diff --git a/drivers/crypto/qat/qat_adf/adf_transport_access_macros.h b/drivers/crypto/qat/qat_adf/adf_transport_access_macros.h index 2136d54ab1..1eef5513fb 100644 --- a/drivers/crypto/qat/qat_adf/adf_transport_access_macros.h +++ b/drivers/crypto/qat/qat_adf/adf_transport_access_macros.h @@ -50,9 +50,8 @@ #define ADF_MAX_RING_SIZE ADF_RING_SIZE_4M #define ADF_DEFAULT_RING_SIZE ADF_RING_SIZE_16K -#define ADF_NUM_BUNDLES_PER_DEV 1 -/* Maximum number of qps for any service type */ -#define ADF_MAX_QPS_PER_BUNDLE 4 +/* Maximum number of qps on a device for any service type */ +#define ADF_MAX_QPS_ON_ANY_SERVICE 2 #define ADF_RING_DIR_TX 0 #define ADF_RING_DIR_RX 1 diff --git a/drivers/crypto/qat/qat_common.c b/drivers/crypto/qat/qat_common.c index f1759ea760..5d6779757d 100644 --- a/drivers/crypto/qat/qat_common.c +++ b/drivers/crypto/qat/qat_common.c @@ -67,7 +67,7 @@ void qat_stats_get(struct qat_pci_device *dev, } qp = dev->qps_in_use[service]; - for (i = 0; i < ADF_MAX_QPS_PER_BUNDLE; i++) { + for (i = 0; i < ADF_MAX_QPS_ON_ANY_SERVICE; i++) { if (qp[i] == NULL) { PMD_DRV_LOG(DEBUG, "Service %d Uninitialised qp %d", service, i); @@ -94,7 +94,7 @@ void qat_stats_reset(struct qat_pci_device *dev, } qp = dev->qps_in_use[service]; - for (i = 0; i < ADF_MAX_QPS_PER_BUNDLE; i++) { + for (i = 0; i < ADF_MAX_QPS_ON_ANY_SERVICE; i++) { if (qp[i] == NULL) { PMD_DRV_LOG(DEBUG, "Service %d Uninitialised qp %d", service, i); diff --git a/drivers/crypto/qat/qat_device.h b/drivers/crypto/qat/qat_device.h index fd1819354b..fd20a01477 100644 --- a/drivers/crypto/qat/qat_device.h +++ b/drivers/crypto/qat/qat_device.h @@ -44,7 +44,7 @@ struct qat_pci_device { uint8_t attached : 1; /**< Flag indicating the device is attached */ - struct qat_qp *qps_in_use[QAT_MAX_SERVICES][ADF_MAX_QPS_PER_BUNDLE]; + struct qat_qp *qps_in_use[QAT_MAX_SERVICES][ADF_MAX_QPS_ON_ANY_SERVICE]; /**< links to qps set up for each service, index same as on API */ /* Data relating to symmetric crypto service */ @@ -59,7 +59,7 @@ struct qat_pci_device { struct qat_gen_hw_data { enum qat_device_gen dev_gen; - const struct qat_qp_hw_data (*qp_hw_data)[ADF_MAX_QPS_PER_BUNDLE]; + const struct qat_qp_hw_data (*qp_hw_data)[ADF_MAX_QPS_ON_ANY_SERVICE]; }; extern struct qat_gen_hw_data qp_gen_config[]; diff --git a/drivers/crypto/qat/qat_qp.c b/drivers/crypto/qat/qat_qp.c index f26fd09006..9938c14932 100644 --- a/drivers/crypto/qat/qat_qp.c +++ b/drivers/crypto/qat/qat_qp.c @@ -29,7 +29,7 @@ __extension__ const struct qat_qp_hw_data qat_gen1_qps[QAT_MAX_SERVICES] - [ADF_MAX_QPS_PER_BUNDLE] = { + [ADF_MAX_QPS_ON_ANY_SERVICE] = { /* queue pairs which provide an asymmetric crypto service */ [QAT_SERVICE_ASYMMETRIC] = { { @@ -42,14 +42,11 @@ const struct qat_qp_hw_data qat_gen1_qps[QAT_MAX_SERVICES] }, { .service_type = QAT_SERVICE_ASYMMETRIC, + .hw_bundle_num = 0, .tx_ring_num = 1, .rx_ring_num = 9, .tx_msg_size = 64, .rx_msg_size = 32, - }, { - .service_type = QAT_SERVICE_INVALID, - }, { - .service_type = QAT_SERVICE_INVALID, } }, /* queue pairs which provide a symmetric crypto service */ @@ -69,10 +66,6 @@ const struct qat_qp_hw_data qat_gen1_qps[QAT_MAX_SERVICES] .rx_ring_num = 11, .tx_msg_size = 128, .rx_msg_size = 32, - }, { - .service_type = QAT_SERVICE_INVALID, - }, { - .service_type = QAT_SERVICE_INVALID, } }, /* queue pairs which provide a compression service */ @@ -91,10 +84,6 @@ const struct qat_qp_hw_data qat_gen1_qps[QAT_MAX_SERVICES] .rx_ring_num = 15, .tx_msg_size = 128, .rx_msg_size = 32, - }, { - .service_type = QAT_SERVICE_INVALID, - }, { - .service_type = QAT_SERVICE_INVALID, } } }; @@ -118,10 +107,10 @@ int qat_qps_per_service(const struct qat_qp_hw_data *qp_hw_data, { int i, count; - for (i = 0, count = 0; i < ADF_MAX_QPS_PER_BUNDLE; i++) + for (i = 0, count = 0; i < ADF_MAX_QPS_ON_ANY_SERVICE; i++) if (qp_hw_data[i].service_type == service) count++; - return count * ADF_NUM_BUNDLES_PER_DEV; + return count; } static const struct rte_memzone * diff --git a/drivers/crypto/qat/qat_qp.h b/drivers/crypto/qat/qat_qp.h index 73888b8054..6f07bd67c3 100644 --- a/drivers/crypto/qat/qat_qp.h +++ b/drivers/crypto/qat/qat_qp.h @@ -90,7 +90,7 @@ struct qat_qp { /**< qat device this qp is on */ } __rte_cache_aligned; -extern const struct qat_qp_hw_data qat_gen1_qps[][ADF_MAX_QPS_PER_BUNDLE]; +extern const struct qat_qp_hw_data qat_gen1_qps[][ADF_MAX_QPS_ON_ANY_SERVICE]; uint16_t qat_enqueue_op_burst(void *qp, void **ops, uint16_t nb_ops);