drivers/staging/media/atomisp/pci/runtime/queue/src/queue_access.h

Source file repositories/reference/linux-study-clean/drivers/staging/media/atomisp/pci/runtime/queue/src/queue_access.h

File Facts

System
Linux kernel
Corpus path
drivers/staging/media/atomisp/pci/runtime/queue/src/queue_access.h
Extension
.h
Size
1948 bytes
Lines
79
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 ia_css_queue {
	u8 type;        /* Specify remote/local type of access */
	u8 location;    /* Cell location for queue */
	u8 proc_id;     /* Processor id for queue access */
	union {
		ia_css_circbuf_t cb_local;
		struct {
			u32 cb_desc_addr; /*Circbuf desc address for remote queues*/
			u32 cb_elems_addr; /*Circbuf elements addr for remote queue*/
		}	remote;
	} desc;
};

int ia_css_queue_load(
    struct ia_css_queue *rdesc,
    ia_css_circbuf_desc_t *cb_desc,
    uint32_t ignore_desc_flags);

int ia_css_queue_store(
    struct ia_css_queue *rdesc,
    ia_css_circbuf_desc_t *cb_desc,
    uint32_t ignore_desc_flags);

int ia_css_queue_item_load(
    struct ia_css_queue *rdesc,
    u8 position,
    ia_css_circbuf_elem_t *item);

int ia_css_queue_item_store(
    struct ia_css_queue *rdesc,
    u8 position,
    ia_css_circbuf_elem_t *item);

#endif /* __QUEUE_ACCESS_H */

Annotation

Implementation Notes