drivers/gpu/drm/amd/amdgpu/amdgpu_hdp.h

Source file repositories/reference/linux-study-clean/drivers/gpu/drm/amd/amdgpu/amdgpu_hdp.h

File Facts

System
Linux kernel
Corpus path
drivers/gpu/drm/amd/amdgpu/amdgpu_hdp.h
Extension
.h
Size
2152 bytes
Lines
54
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 amdgpu_hdp_ras {
	struct amdgpu_ras_block_object ras_block;
};

struct amdgpu_hdp_funcs {
	void (*flush_hdp)(struct amdgpu_device *adev, struct amdgpu_ring *ring);
	void (*invalidate_hdp)(struct amdgpu_device *adev,
			       struct amdgpu_ring *ring);
	void (*update_clock_gating)(struct amdgpu_device *adev, bool enable);
	void (*get_clock_gating_state)(struct amdgpu_device *adev, u64 *flags);
	void (*init_registers)(struct amdgpu_device *adev);
};

struct amdgpu_hdp {
	struct ras_common_if			*ras_if;
	const struct amdgpu_hdp_funcs		*funcs;
	struct amdgpu_hdp_ras	*ras;
};

int amdgpu_hdp_ras_sw_init(struct amdgpu_device *adev);
void amdgpu_hdp_generic_flush(struct amdgpu_device *adev,
			      struct amdgpu_ring *ring);
void amdgpu_hdp_invalidate(struct amdgpu_device *adev,
			   struct amdgpu_ring *ring);
void amdgpu_hdp_flush(struct amdgpu_device *adev,
		      struct amdgpu_ring *ring);
#endif /* __AMDGPU_HDP_H__ */

Annotation

Implementation Notes