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.
- 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.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
media/v4l2-ctrls.hiris_buffer.hiris_core.hiris_utils.h
Detected Declarations
struct iris_hfi_session_opsstruct iris_instenum iris_fmt_type_outenum iris_fmt_type_cap
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
- Immediate include surface: `media/v4l2-ctrls.h`, `iris_buffer.h`, `iris_core.h`, `iris_utils.h`.
- Detected declarations: `struct iris_hfi_session_ops`, `struct iris_inst`, `enum iris_fmt_type_out`, `enum iris_fmt_type_cap`.
- Atlas domain: Driver Families / drivers/media.
- Implementation status: source implementation candidate.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.