Commit 4db87a5f authored by Jie Wang's avatar Jie Wang Committed by Herbert Xu

crypto: qat - relocate and rename get_service_enabled()

Move the function get_service_enabled() from adf_4xxx_hw_data.c to
adf_cfg_services.c and rename it as adf_get_service_enabled().
This function is not specific to the 4xxx and will be used by
other QAT drivers.

This does not introduce any functional change.
Signed-off-by: default avatarJie Wang <jie.wang@intel.com>
Reviewed-by: default avatarGiovanni Cabiddu <giovanni.cabiddu@intel.com>
Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
parent dd61d373
...@@ -120,29 +120,6 @@ static struct adf_hw_device_class adf_4xxx_class = { ...@@ -120,29 +120,6 @@ static struct adf_hw_device_class adf_4xxx_class = {
.instances = 0, .instances = 0,
}; };
static int get_service_enabled(struct adf_accel_dev *accel_dev)
{
char services[ADF_CFG_MAX_VAL_LEN_IN_BYTES] = {0};
int ret;
ret = adf_cfg_get_param_value(accel_dev, ADF_GENERAL_SEC,
ADF_SERVICES_ENABLED, services);
if (ret) {
dev_err(&GET_DEV(accel_dev),
ADF_SERVICES_ENABLED " param not found\n");
return ret;
}
ret = match_string(adf_cfg_services, ARRAY_SIZE(adf_cfg_services),
services);
if (ret < 0)
dev_err(&GET_DEV(accel_dev),
"Invalid value of " ADF_SERVICES_ENABLED " param: %s\n",
services);
return ret;
}
static u32 get_accel_mask(struct adf_hw_device_data *self) static u32 get_accel_mask(struct adf_hw_device_data *self)
{ {
return ADF_4XXX_ACCELERATORS_MASK; return ADF_4XXX_ACCELERATORS_MASK;
...@@ -275,7 +252,7 @@ static u32 get_accel_cap(struct adf_accel_dev *accel_dev) ...@@ -275,7 +252,7 @@ static u32 get_accel_cap(struct adf_accel_dev *accel_dev)
capabilities_dc &= ~ICP_ACCEL_CAPABILITIES_CNV_INTEGRITY64; capabilities_dc &= ~ICP_ACCEL_CAPABILITIES_CNV_INTEGRITY64;
} }
switch (get_service_enabled(accel_dev)) { switch (adf_get_service_enabled(accel_dev)) {
case SVC_CY: case SVC_CY:
case SVC_CY2: case SVC_CY2:
return capabilities_sym | capabilities_asym; return capabilities_sym | capabilities_asym;
...@@ -311,7 +288,7 @@ static enum dev_sku_info get_sku(struct adf_hw_device_data *self) ...@@ -311,7 +288,7 @@ static enum dev_sku_info get_sku(struct adf_hw_device_data *self)
static const u32 *adf_get_arbiter_mapping(struct adf_accel_dev *accel_dev) static const u32 *adf_get_arbiter_mapping(struct adf_accel_dev *accel_dev)
{ {
switch (get_service_enabled(accel_dev)) { switch (adf_get_service_enabled(accel_dev)) {
case SVC_DC: case SVC_DC:
return thrd_to_arb_map_dc; return thrd_to_arb_map_dc;
case SVC_DCC: case SVC_DCC:
...@@ -420,7 +397,7 @@ static u32 uof_get_num_objs(void) ...@@ -420,7 +397,7 @@ static u32 uof_get_num_objs(void)
static const struct adf_fw_config *get_fw_config(struct adf_accel_dev *accel_dev) static const struct adf_fw_config *get_fw_config(struct adf_accel_dev *accel_dev)
{ {
switch (get_service_enabled(accel_dev)) { switch (adf_get_service_enabled(accel_dev)) {
case SVC_CY: case SVC_CY:
case SVC_CY2: case SVC_CY2:
return adf_fw_cy_config; return adf_fw_cy_config;
......
...@@ -2,6 +2,9 @@ ...@@ -2,6 +2,9 @@
/* Copyright(c) 2023 Intel Corporation */ /* Copyright(c) 2023 Intel Corporation */
#include <linux/export.h> #include <linux/export.h>
#include <linux/pci.h>
#include <linux/string.h>
#include "adf_cfg.h"
#include "adf_cfg_services.h" #include "adf_cfg_services.h"
#include "adf_cfg_strings.h" #include "adf_cfg_strings.h"
...@@ -18,3 +21,27 @@ const char *const adf_cfg_services[] = { ...@@ -18,3 +21,27 @@ const char *const adf_cfg_services[] = {
[SVC_SYM_DC] = ADF_CFG_SYM_DC, [SVC_SYM_DC] = ADF_CFG_SYM_DC,
}; };
EXPORT_SYMBOL_GPL(adf_cfg_services); EXPORT_SYMBOL_GPL(adf_cfg_services);
int adf_get_service_enabled(struct adf_accel_dev *accel_dev)
{
char services[ADF_CFG_MAX_VAL_LEN_IN_BYTES] = {0};
int ret;
ret = adf_cfg_get_param_value(accel_dev, ADF_GENERAL_SEC,
ADF_SERVICES_ENABLED, services);
if (ret) {
dev_err(&GET_DEV(accel_dev),
ADF_SERVICES_ENABLED " param not found\n");
return ret;
}
ret = match_string(adf_cfg_services, ARRAY_SIZE(adf_cfg_services),
services);
if (ret < 0)
dev_err(&GET_DEV(accel_dev),
"Invalid value of " ADF_SERVICES_ENABLED " param: %s\n",
services);
return ret;
}
EXPORT_SYMBOL_GPL(adf_get_service_enabled);
...@@ -5,6 +5,8 @@ ...@@ -5,6 +5,8 @@
#include "adf_cfg_strings.h" #include "adf_cfg_strings.h"
struct adf_accel_dev;
enum adf_services { enum adf_services {
SVC_CY = 0, SVC_CY = 0,
SVC_CY2, SVC_CY2,
...@@ -21,4 +23,6 @@ enum adf_services { ...@@ -21,4 +23,6 @@ enum adf_services {
extern const char *const adf_cfg_services[SVC_COUNT]; extern const char *const adf_cfg_services[SVC_COUNT];
int adf_get_service_enabled(struct adf_accel_dev *accel_dev);
#endif #endif
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment