sound/soc/codecs/aw88395/aw88395_data_type.h

Source file repositories/reference/linux-study-clean/sound/soc/codecs/aw88395/aw88395_data_type.h

File Facts

System
Linux kernel
Corpus path
sound/soc/codecs/aw88395/aw88395_data_type.h
Extension
.h
Size
2696 bytes
Lines
143
Domain
Driver Families
Bucket
sound/soc
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

struct aw_cfg_hdr {
	u32 id;
	char project[PROJECT_NAME_MAX];
	char custom[CUSTOMER_NAME_MAX];
	char version[CFG_VERSION_MAX];
	u32 author_id;
	u32 ddt_size;
	u32 ddt_num;
	u32 hdr_offset;
	u32 hdr_version;
	u32 reserved[3];
};

struct aw_cfg_dde {
	u32 type;
	char dev_name[DEV_NAME_MAX];
	u16 dev_index;
	u16 dev_bus;
	u16 dev_addr;
	u16 dev_profile;
	u32 data_type;
	u32 data_size;
	u32 data_offset;
	u32 data_crc;
	u32 reserved[5];
};

struct aw_cfg_dde_v1 {
	u32 type;
	char dev_name[DEV_NAME_MAX];
	u16 dev_index;
	u16 dev_bus;
	u16 dev_addr;
	u16 dev_profile;
	u32 data_type;
	u32 data_size;
	u32 data_offset;
	u32 data_crc;
	char dev_profile_str[PROFILE_STR_MAX];
	u32 chip_id;
	u32 reserved[4];
};

struct aw_sec_data_desc {
	u32 len;
	u8 *data;
};

struct aw_prof_desc {
	u32 id;
	u32 prof_st;
	char *prf_str;
	u32 fw_ver;
	struct aw_sec_data_desc sec_desc[AW88395_DATA_TYPE_MAX];
};

struct aw_all_prof_info {
	struct aw_prof_desc prof_desc[AW88395_PROFILE_MAX];
};

struct aw_prof_info {
	int count;
	int prof_type;
	char **prof_name_list;
	struct aw_prof_desc *prof_desc;
};

#endif

Annotation

Implementation Notes