drivers/media/platform/qcom/iris/iris_instance.h

Source file repositories/reference/linux-study-clean/drivers/media/platform/qcom/iris/iris_instance.h

File Facts

System
Linux kernel
Corpus path
drivers/media/platform/qcom/iris/iris_instance.h
Extension
.h
Size
4275 bytes
Lines
131
Domain
Driver Families
Bucket
drivers/media
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 iris_inst {
	struct list_head		list;
	struct iris_core		*core;
	u32				session_id;
	const struct iris_hfi_session_ops	*hfi_session_ops;
	struct mutex			ctx_q_lock;/* lock to serialize queues related ioctls */
	struct mutex			lock; /* lock to serialize forward and reverse threads */
	struct v4l2_fh			fh;
	struct v4l2_format		*fmt_src;
	struct v4l2_format		*fmt_dst;
	struct v4l2_ctrl_handler	ctrl_handler;
	enum domain_type		domain;
	struct iris_hfi_rect_desc	crop;
	struct iris_hfi_rect_desc	compose;
	struct completion		completion;
	struct completion		flush_completion;
	u32				flush_responses_pending;
	struct platform_inst_fw_cap	fw_caps[INST_FW_CAP_MAX];
	struct iris_buffers		buffers[BUF_TYPE_MAX];
	u32				fw_min_count;
	enum iris_inst_state		state;
	enum iris_inst_sub_state	sub_state;
	bool				once_per_session_set;
	size_t				max_input_data_size;
	struct iris_inst_power		power;
	struct icc_vote_data		icc_data;
	struct v4l2_m2m_dev		*m2m_dev;
	struct v4l2_m2m_ctx		*m2m_ctx;
	u32				sequence_cap;
	u32				sequence_out;
	struct iris_ts_metadata		tss[VIDEO_MAX_FRAME];
	u32				metadata_idx;
	u32				codec;
	bool				last_buffer_dequeued;
	u64				last_buf_ns;
	u32				frame_counter;
	u32				frame_rate;
	u32				operating_rate;
	u32				hfi_rc_type;
	u32				enc_raw_width;
	u32				enc_raw_height;
	u32				enc_scale_width;
	u32				enc_scale_height;
	u32				hfi_layer_type;
	u32				hfi_layer_count;
};

#endif

Annotation

Implementation Notes