drivers/media/platform/qcom/iris/iris_hfi_gen1_defines.h
Source file repositories/reference/linux-study-clean/drivers/media/platform/qcom/iris/iris_hfi_gen1_defines.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/media/platform/qcom/iris/iris_hfi_gen1_defines.h- Extension
.h- Size
- 13241 bytes
- Lines
- 601
- 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
linux/types.h
Detected Declarations
struct hfi_pkt_hdrstruct hfi_session_hdr_pktstruct hfi_session_open_pktstruct hfi_session_pktstruct hfi_sys_init_pktstruct hfi_sys_set_property_pktstruct hfi_sys_get_property_pktstruct hfi_session_set_property_pktstruct hfi_sys_pc_prep_pktstruct hfi_session_set_buffers_pktstruct hfi_session_empty_buffer_compressed_pktstruct hfi_session_empty_buffer_uncompressed_pktstruct hfi_session_fill_buffer_pktstruct hfi_session_flush_pktstruct hfi_session_release_buffer_pktstruct hfi_buffer_infostruct hfi_msg_event_notify_pktstruct hfi_msg_sys_init_done_pktstruct hfi_msg_session_hdr_pktstruct hfi_msg_session_init_done_pktstruct hfi_msg_sys_property_info_pktstruct hfi_msg_session_flush_done_pktstruct hfi_enablestruct hfi_profile_levelstruct hfi_framesizestruct hfi_videocores_usage_typestruct hfi_video_work_modestruct hfi_video_work_routestruct hfi_bit_depthstruct hfi_pic_structstruct hfi_colour_spacestruct hfi_extradata_input_cropstruct hfi_dpb_countsstruct hfi_uncompressed_format_selectstruct hfi_uncompressed_plane_constraintsstruct hfi_uncompressed_plane_actual_constraints_infostruct hfi_uncompressed_plane_actualstruct hfi_uncompressed_plane_actual_infostruct hfi_buffer_count_actualstruct hfi_buffer_size_actualstruct hfi_multi_streamstruct hfi_buffer_requirementsstruct hfi_bitratestruct hfi_h264_entropy_controlstruct hfi_quantization_v2struct hfi_quantization_range_v2struct hfi_frameratestruct hfi_intra_refresh
Annotated Snippet
struct hfi_pkt_hdr {
u32 size;
u32 pkt_type;
};
struct hfi_session_hdr_pkt {
struct hfi_pkt_hdr hdr;
u32 session_id;
};
struct hfi_session_open_pkt {
struct hfi_session_hdr_pkt shdr;
u32 session_domain;
u32 session_codec;
};
struct hfi_session_pkt {
struct hfi_session_hdr_pkt shdr;
};
struct hfi_sys_init_pkt {
struct hfi_pkt_hdr hdr;
u32 arch_type;
};
struct hfi_sys_set_property_pkt {
struct hfi_pkt_hdr hdr;
u32 num_properties;
u32 data[];
};
struct hfi_sys_get_property_pkt {
struct hfi_pkt_hdr hdr;
u32 num_properties;
u32 data;
};
struct hfi_session_set_property_pkt {
struct hfi_session_hdr_pkt shdr;
u32 num_properties;
u32 data[];
};
struct hfi_sys_pc_prep_pkt {
struct hfi_pkt_hdr hdr;
};
struct hfi_session_set_buffers_pkt {
struct hfi_session_hdr_pkt shdr;
u32 buffer_type;
u32 buffer_size;
u32 extradata_size;
u32 min_buffer_size;
u32 num_buffers;
u32 buffer_info[];
};
struct hfi_session_empty_buffer_compressed_pkt {
struct hfi_session_hdr_pkt shdr;
u32 time_stamp_hi;
u32 time_stamp_lo;
u32 flags;
u32 mark_target;
u32 mark_data;
u32 offset;
u32 alloc_len;
u32 filled_len;
u32 input_tag;
u32 packet_buffer;
u32 extradata_buffer;
u32 data;
};
struct hfi_session_empty_buffer_uncompressed_pkt {
struct hfi_session_hdr_pkt shdr;
u32 view_id;
u32 time_stamp_hi;
u32 time_stamp_lo;
u32 flags;
u32 mark_target;
u32 mark_data;
u32 alloc_len;
u32 filled_len;
u32 offset;
u32 input_tag;
u32 packet_buffer;
u32 extradata_buffer;
u32 data;
};
Annotation
- Immediate include surface: `linux/types.h`.
- Detected declarations: `struct hfi_pkt_hdr`, `struct hfi_session_hdr_pkt`, `struct hfi_session_open_pkt`, `struct hfi_session_pkt`, `struct hfi_sys_init_pkt`, `struct hfi_sys_set_property_pkt`, `struct hfi_sys_get_property_pkt`, `struct hfi_session_set_property_pkt`, `struct hfi_sys_pc_prep_pkt`, `struct hfi_session_set_buffers_pkt`.
- 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.