Torsten Duwe 1febd0
From c3878a786be09d3f7df17936c922be430cdd4e8e Mon Sep 17 00:00:00 2001
Torsten Duwe 1febd0
From: Giovanni Cabiddu <giovanni.cabiddu@intel.com>
Torsten Duwe 1febd0
Date: Tue, 28 Sep 2021 12:44:34 +0100
Torsten Duwe 1febd0
Subject: [PATCH] crypto: qat - use hweight for bit counting
Torsten Duwe 1febd0
Git-commit: c3878a786be09d3f7df17936c922be430cdd4e8e
Torsten Duwe 1febd0
Patch-mainline: v5.16-rc1
Torsten Duwe 1febd0
References: jsc#PED-1073
Torsten Duwe 1febd0
Torsten Duwe 1febd0
Replace homegrown bit counting logic in adf_gen2_get_num_accels() and
Torsten Duwe 1febd0
adf_gen2_get_num_aes() with the functions hweight16() and hweight32(),
Torsten Duwe 1febd0
respectively.
Torsten Duwe 1febd0
Torsten Duwe 1febd0
Signed-off-by: Giovanni Cabiddu <giovanni.cabiddu@intel.com>
Torsten Duwe 1febd0
Reviewed-by: Marco Chiappero <marco.chiappero@intel.com>
Torsten Duwe 1febd0
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Torsten Duwe 1febd0
Signed-off-by: Torsten Duwe <duwe@suse.de>
Torsten Duwe 1febd0
Torsten Duwe 1febd0
---
Torsten Duwe 1febd0
 drivers/crypto/qat/qat_common/adf_gen2_hw_data.c | 16 ++--------------
Torsten Duwe 1febd0
 1 file changed, 2 insertions(+), 14 deletions(-)
Torsten Duwe 1febd0
Torsten Duwe 1febd0
diff --git a/drivers/crypto/qat/qat_common/adf_gen2_hw_data.c b/drivers/crypto/qat/qat_common/adf_gen2_hw_data.c
Torsten Duwe 1febd0
index 1deeeaed9a8cb..262bdc05dab4e 100644
Torsten Duwe 1febd0
--- a/drivers/crypto/qat/qat_common/adf_gen2_hw_data.c
Torsten Duwe 1febd0
+++ b/drivers/crypto/qat/qat_common/adf_gen2_hw_data.c
Torsten Duwe 1febd0
@@ -54,31 +54,19 @@ EXPORT_SYMBOL_GPL(adf_gen2_disable_vf2pf_interrupts);
Torsten Duwe 1febd0
 
Torsten Duwe 1febd0
 u32 adf_gen2_get_num_accels(struct adf_hw_device_data *self)
Torsten Duwe 1febd0
 {
Torsten Duwe 1febd0
-	u32 i, ctr = 0;
Torsten Duwe 1febd0
-
Torsten Duwe 1febd0
 	if (!self || !self->accel_mask)
Torsten Duwe 1febd0
 		return 0;
Torsten Duwe 1febd0
 
Torsten Duwe 1febd0
-	for (i = 0; i < self->num_accel; i++)
Torsten Duwe 1febd0
-		if (self->accel_mask & (1 << i))
Torsten Duwe 1febd0
-			ctr++;
Torsten Duwe 1febd0
-
Torsten Duwe 1febd0
-	return ctr;
Torsten Duwe 1febd0
+	return hweight16(self->accel_mask);
Torsten Duwe 1febd0
 }
Torsten Duwe 1febd0
 EXPORT_SYMBOL_GPL(adf_gen2_get_num_accels);
Torsten Duwe 1febd0
 
Torsten Duwe 1febd0
 u32 adf_gen2_get_num_aes(struct adf_hw_device_data *self)
Torsten Duwe 1febd0
 {
Torsten Duwe 1febd0
-	u32 i, ctr = 0;
Torsten Duwe 1febd0
-
Torsten Duwe 1febd0
 	if (!self || !self->ae_mask)
Torsten Duwe 1febd0
 		return 0;
Torsten Duwe 1febd0
 
Torsten Duwe 1febd0
-	for (i = 0; i < self->num_engines; i++)
Torsten Duwe 1febd0
-		if (self->ae_mask & (1 << i))
Torsten Duwe 1febd0
-			ctr++;
Torsten Duwe 1febd0
-
Torsten Duwe 1febd0
-	return ctr;
Torsten Duwe 1febd0
+	return hweight32(self->ae_mask);
Torsten Duwe 1febd0
 }
Torsten Duwe 1febd0
 EXPORT_SYMBOL_GPL(adf_gen2_get_num_aes);
Torsten Duwe 1febd0
 
Torsten Duwe 1febd0
-- 
Torsten Duwe 1febd0
2.35.3
Torsten Duwe 1febd0