1 /* SPDX-License-Identifier: GPL-2.0-only */
2 /* Copyright(c) 2023 Intel Corporation */
3 #ifndef _ADF_CFG_SERVICES_H_
4 #define _ADF_CFG_SERVICES_H_
5 
6 #include "adf_cfg_strings.h"
7 
8 struct adf_accel_dev;
9 
10 enum adf_services {
11 	SVC_ASYM = 0,
12 	SVC_SYM,
13 	SVC_DC,
14 	SVC_DCC,
15 	SVC_BASE_COUNT
16 };
17 
18 enum adf_composed_services {
19 	SVC_SYM_ASYM = SVC_BASE_COUNT,
20 	SVC_SYM_DC,
21 	SVC_ASYM_DC,
22 };
23 
24 enum {
25 	ADF_ONE_SERVICE = 1,
26 	ADF_TWO_SERVICES,
27 	ADF_THREE_SERVICES,
28 };
29 
30 #define MAX_NUM_CONCURR_SVC	ADF_THREE_SERVICES
31 
32 int adf_parse_service_string(struct adf_accel_dev *accel_dev, const char *in,
33 			     size_t in_len, char *out, size_t out_len);
34 int adf_get_service_enabled(struct adf_accel_dev *accel_dev);
35 
36 #endif
37