drivers/media/platform/st/sti/delta/delta-mjpeg-fw.h

Source file repositories/reference/linux-study-clean/drivers/media/platform/st/sti/delta/delta-mjpeg-fw.h

File Facts

System
Linux kernel
Corpus path
drivers/media/platform/st/sti/delta/delta-mjpeg-fw.h
Extension
.h
Size
7207 bytes
Lines
226
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 jpeg_decoded_buffer_address_t {
	u32 luma_p;
	u32 chroma_p;
};

/*
 * struct jpeg_display_buffer_address_t
 *
 * defines the addresses (used by the Display Reconstruction block)
 * where the pictures to be displayed will be stored
 *
 * @struct_size:		size of the structure in bytes
 * @display_luma_p:		address of the luma buffer
 * @display_chroma_p:		address of the chroma buffer
 * @display_decimated_luma_p:	address of the decimated luma buffer
 * @display_decimated_chroma_p:	address of the decimated chroma buffer
 */
struct jpeg_display_buffer_address_t {
	u32 struct_size;
	u32 display_luma_p;
	u32 display_chroma_p;
	u32 display_decimated_luma_p;
	u32 display_decimated_chroma_p;
};

/*
 * used for enabling main/aux outputs for both display &
 * reference reconstruction blocks
 */
enum jpeg_rcn_ref_disp_enable_t {
	/* enable decimated (for display) reconstruction */
	JPEG_DISP_AUX_EN = 0x00000010,
	/* enable main (for display) reconstruction */
	JPEG_DISP_MAIN_EN = 0x00000020,
	/* enable both main & decimated (for display) reconstruction */
	JPEG_DISP_AUX_MAIN_EN = 0x00000030,
	/* enable only reference output(ex. for trick modes) */
	JPEG_REF_MAIN_EN = 0x00000100,
	/*
	 * enable reference output with decimated
	 * (for display) reconstruction
	 */
	JPEG_REF_MAIN_DISP_AUX_EN = 0x00000110,
	/*
	 * enable reference output with main
	 * (for display) reconstruction
	 */
	JPEG_REF_MAIN_DISP_MAIN_EN = 0x00000120,
	/*
	 * enable reference output with main & decimated
	 * (for display) reconstruction
	 */
	JPEG_REF_MAIN_DISP_MAIN_AUX_EN = 0x00000130
};

/* identifies the horizontal decimation factor */
enum jpeg_horizontal_deci_factor_t {
	/* no resize */
	JPEG_HDEC_1 = 0x00000000,
	/* Advanced H/2 resize using improved 8-tap filters */
	JPEG_HDEC_ADVANCED_2 = 0x00000101,
	/* Advanced H/4 resize using improved 8-tap filters */
	JPEG_HDEC_ADVANCED_4 = 0x00000102
};

/* identifies the vertical decimation factor */
enum jpeg_vertical_deci_factor_t {
	/* no resize */
	JPEG_VDEC_1 = 0x00000000,
	/* V/2 , progressive resize */
	JPEG_VDEC_ADVANCED_2_PROG = 0x00000204,
	/* V/2 , interlaced resize */
	JPEG_VDEC_ADVANCED_2_INT = 0x000000208
};

/* status of the decoding process */
enum jpeg_decoding_error_t {
	JPEG_DECODER_NO_ERROR = 0,
	JPEG_DECODER_UNDEFINED_HUFF_TABLE = 1,
	JPEG_DECODER_UNSUPPORTED_MARKER = 2,
	JPEG_DECODER_UNABLE_ALLOCATE_MEMORY = 3,
	JPEG_DECODER_NON_SUPPORTED_SAMP_FACTORS = 4,
	JPEG_DECODER_BAD_PARAMETER = 5,
	JPEG_DECODER_DECODE_ERROR = 6,
	JPEG_DECODER_BAD_RESTART_MARKER = 7,
	JPEG_DECODER_UNSUPPORTED_COLORSPACE = 8,
	JPEG_DECODER_BAD_SOS_SPECTRAL = 9,
	JPEG_DECODER_BAD_SOS_SUCCESSIVE = 10,
	JPEG_DECODER_BAD_HEADER_LENGTH = 11,
	JPEG_DECODER_BAD_COUNT_VALUE = 12,

Annotation

Implementation Notes