drivers/staging/greybus/audio_apbridgea.h

Source file repositories/reference/linux-study-clean/drivers/staging/greybus/audio_apbridgea.h

File Facts

System
Linux kernel
Corpus path
drivers/staging/greybus/audio_apbridgea.h
Extension
.h
Size
4165 bytes
Lines
133
Domain
Driver Families
Bucket
drivers/staging
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 audio_apbridgea_hdr {
	__u8	type;
	__le16	i2s_port;
} __packed;

struct audio_apbridgea_set_config_request {
	struct audio_apbridgea_hdr	hdr;
	__le32				format;	/* AUDIO_APBRIDGEA_PCM_FMT_* */
	__le32				rate;	/* AUDIO_APBRIDGEA_PCM_RATE_* */
	__le32				mclk_freq; /* XXX Remove? */
} __packed;

struct audio_apbridgea_register_cport_request {
	struct audio_apbridgea_hdr	hdr;
	__le16				cport;
	__u8				direction;
} __packed;

struct audio_apbridgea_unregister_cport_request {
	struct audio_apbridgea_hdr	hdr;
	__le16				cport;
	__u8				direction;
} __packed;

struct audio_apbridgea_set_tx_data_size_request {
	struct audio_apbridgea_hdr	hdr;
	__le16				size;
} __packed;

struct audio_apbridgea_prepare_tx_request {
	struct audio_apbridgea_hdr	hdr;
} __packed;

struct audio_apbridgea_start_tx_request {
	struct audio_apbridgea_hdr	hdr;
	__le64				timestamp;
} __packed;

struct audio_apbridgea_stop_tx_request {
	struct audio_apbridgea_hdr	hdr;
} __packed;

struct audio_apbridgea_shutdown_tx_request {
	struct audio_apbridgea_hdr	hdr;
} __packed;

struct audio_apbridgea_set_rx_data_size_request {
	struct audio_apbridgea_hdr	hdr;
	__le16				size;
} __packed;

struct audio_apbridgea_prepare_rx_request {
	struct audio_apbridgea_hdr	hdr;
} __packed;

struct audio_apbridgea_start_rx_request {
	struct audio_apbridgea_hdr	hdr;
} __packed;

struct audio_apbridgea_stop_rx_request {
	struct audio_apbridgea_hdr	hdr;
} __packed;

struct audio_apbridgea_shutdown_rx_request {
	struct audio_apbridgea_hdr	hdr;
} __packed;

#endif /*__AUDIO_APBRIDGEA_H */

Annotation

Implementation Notes