drivers/crypto/intel/qat/qat_common/adf_cfg_services.h

Source file repositories/reference/linux-study-clean/drivers/crypto/intel/qat/qat_common/adf_cfg_services.h

File Facts

System
Linux kernel
Corpus path
drivers/crypto/intel/qat/qat_common/adf_cfg_services.h
Extension
.h
Size
1017 bytes
Lines
45
Domain
Driver Families
Bucket
drivers/crypto
Inferred role
Driver Families: implementation source
Status
source implementation candidate

Why This File Exists

Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.

Dependency Surface

Detected Declarations

Annotated Snippet

#ifndef _ADF_CFG_SERVICES_H_
#define _ADF_CFG_SERVICES_H_

#include "adf_cfg_strings.h"

struct adf_accel_dev;

enum adf_base_services {
	SVC_ASYM = 0,
	SVC_SYM,
	SVC_DC,
	SVC_DECOMP,
	SVC_BASE_COUNT
};

enum adf_extended_services {
	SVC_DCC = SVC_BASE_COUNT,
	SVC_COUNT
};

enum adf_composed_services {
	SVC_SYM_ASYM = SVC_COUNT,
	SVC_SYM_DC,
	SVC_ASYM_DC,
};

enum {
	ADF_ONE_SERVICE = 1,
	ADF_TWO_SERVICES,
	ADF_THREE_SERVICES,
};

#define MAX_NUM_CONCURR_SVC	ADF_THREE_SERVICES

int adf_parse_service_string(struct adf_accel_dev *accel_dev, const char *in,
			     size_t in_len, char *out, size_t out_len);
int adf_get_service_enabled(struct adf_accel_dev *accel_dev);
int adf_get_service_mask(struct adf_accel_dev *accel_dev, unsigned long *mask);
enum adf_cfg_service_type adf_srv_to_cfg_svc_type(enum adf_base_services svc);
bool adf_is_service_enabled(struct adf_accel_dev *accel_dev, enum adf_base_services svc);

#endif

Annotation

Implementation Notes