drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.h

Source file repositories/reference/linux-study-clean/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.h

File Facts

System
Linux kernel
Corpus path
drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.h
Extension
.h
Size
23452 bytes
Lines
802
Domain
Driver Families
Bucket
drivers/gpu
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 dpu_scaler_blk {
	char name[DPU_HW_BLK_NAME_LEN];
	u32 base;
	u32 len;
	u32 version;
};

struct dpu_csc_blk {
	char name[DPU_HW_BLK_NAME_LEN];
	u32 base;
	u32 len;
};

/**
 * struct dpu_pp_blk : Pixel processing sub-blk information
 * @name: string name for debug purposes
 * @base: offset of this sub-block relative to the block offset
 * @len: register block length of this sub-block
 * @version: HW Algorithm version
 */
struct dpu_pp_blk {
	char name[DPU_HW_BLK_NAME_LEN];
	u32 base;
	u32 len;
	u32 version;
};

/**
 * struct dpu_dsc_blk - DSC Encoder sub-blk information
 * @name: string name for debug purposes
 * @base: offset of this sub-block relative to the block offset
 * @len: register block length of this sub-block
 */
struct dpu_dsc_blk {
	char name[DPU_HW_BLK_NAME_LEN];
	u32 base;
	u32 len;
};

/**
 * struct dpu_sspp_v13_rec_blk - SSPP REC sub-blk information
 * @name: string name for debug purposes
 * @base: offset of this sub-block relative to the block offset
 * @len: register block length of this sub-block
 */
struct dpu_sspp_v13_rec_blk {
	char name[DPU_HW_BLK_NAME_LEN];
	u32 base;
	u32 len;
};

/**
 * enum dpu_qos_lut_usage - define QoS LUT use cases
 */
enum dpu_qos_lut_usage {
	DPU_QOS_LUT_USAGE_LINEAR,
	DPU_QOS_LUT_USAGE_MACROTILE,
	DPU_QOS_LUT_USAGE_NRT,
	DPU_QOS_LUT_USAGE_MAX,
};

/**
 * struct dpu_qos_lut_entry - define QoS LUT table entry
 * @fl: fill level, or zero on last entry to indicate default lut
 * @lut: lut to use if equal to or less than fill level
 */
struct dpu_qos_lut_entry {
	u32 fl;
	u64 lut;
};

/**
 * struct dpu_qos_lut_tbl - define QoS LUT table
 * @nentry: number of entry in this table
 * @entries: Pointer to table entries
 */
struct dpu_qos_lut_tbl {
	u32 nentry;
	const struct dpu_qos_lut_entry *entries;
};

/**
 * struct dpu_rotation_cfg - define inline rotation config
 * @rot_maxheight: max pre rotated height allowed for rotation
 * @rot_num_formats: number of elements in @rot_format_list
 * @rot_format_list: list of supported rotator formats
 */
struct dpu_rotation_cfg {
	u32 rot_maxheight;
	size_t rot_num_formats;

Annotation

Implementation Notes