drivers/media/platform/amphion/vpu_defs.h

Source file repositories/reference/linux-study-clean/drivers/media/platform/amphion/vpu_defs.h

File Facts

System
Linux kernel
Corpus path
drivers/media/platform/amphion/vpu_defs.h
Extension
.h
Size
3645 bytes
Lines
202
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 vpu_pkt_mem_req_data {
	u32 enc_frame_size;
	u32 enc_frame_num;
	u32 ref_frame_size;
	u32 ref_frame_num;
	u32 act_buf_size;
	u32 act_buf_num;
};

struct vpu_enc_pic_info {
	u32 frame_id;
	u32 pic_type;
	u32 skipped_frame;
	u32 error_flag;
	u32 psnr;
	u32 frame_size;
	u32 wptr;
	u32 crc;
	s64 timestamp;
	u32 average_qp;
};

struct vpu_dec_codec_info {
	u32 pixfmt;
	u32 num_ref_frms;
	u32 num_dpb_frms;
	u32 num_dfe_area;
	u32 color_primaries;
	u32 transfer_chars;
	u32 matrix_coeffs;
	u32 full_range;
	u32 vui_present;
	u32 progressive;
	u32 width;
	u32 height;
	u32 decoded_width;
	u32 decoded_height;
	struct v4l2_fract frame_rate;
	u32 dsp_asp_ratio;
	u32 profile_idc;
	u32 level_idc;
	u32 bit_depth_luma;
	u32 bit_depth_chroma;
	u32 chroma_fmt;
	u32 mvc_num_views;
	u32 offset_x;
	u32 offset_y;
	u32 tag;
	u32 sizeimage[VIDEO_MAX_PLANES];
	u32 bytesperline[VIDEO_MAX_PLANES];
	u32 mbi_size;
	u32 dcp_size;
	u32 stride;
	union {
		struct {
			u32 constraint_set5_flag : 1;
			u32 constraint_set4_flag : 1;
			u32 constraint_set3_flag : 1;
			u32 constraint_set2_flag : 1;
			u32 constraint_set1_flag : 1;
			u32 constraint_set0_flag : 1;
		};
		u32 constraint_set_flags;
	};
};

struct vpu_dec_pic_info {
	u32 id;
	u32 luma;
	u32 start;
	u32 end;
	u32 pic_size;
	u32 stride;
	u32 skipped;
	s64 timestamp;
	u32 consumed_count;
};

struct vpu_fs_info {
	u32 id;
	u32 type;
	u32 tag;
	u32 luma_addr;
	u32 luma_size;
	u32 chroma_addr;
	u32 chromau_size;
	u32 chromav_addr;
	u32 chromav_size;
	u32 bytesperline;
	u32 not_displayed;

Annotation

Implementation Notes