drivers/gpu/drm/xe/xe_mmio_types.h

Source file repositories/reference/linux-study-clean/drivers/gpu/drm/xe/xe_mmio_types.h

File Facts

System
Linux kernel
Corpus path
drivers/gpu/drm/xe/xe_mmio_types.h
Extension
.h
Size
1516 bytes
Lines
65
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 xe_mmio {
	/** @tile: Backpointer to tile, used for tracing */
	struct xe_tile *tile;

	/** @regs: Map used to access registers. */
	void __iomem *regs;

	/**
	 * @sriov_vf_gt: Backpointer to GT.
	 *
	 * This pointer is only set for GT MMIO regions and only when running
	 * as an SRIOV VF structure
	 */
	struct xe_gt *sriov_vf_gt;

	/**
	 * @regs_size: Length of the register region within the map.
	 *
	 * The size of the iomap set in *regs is generally larger than the
	 * register mmio space since it includes unused regions and/or
	 * non-register regions such as the GGTT PTEs.
	 */
	size_t regs_size;

	/** @adj_limit: adjust MMIO address if address is below this value */
	u32 adj_limit;

	/** @adj_offset: offset to add to MMIO address when adjusting */
	u32 adj_offset;
};

/**
 * struct xe_mmio_range - register range structure
 *
 * @start: first register offset in the range.
 * @end: last register offset in the range.
 */
struct xe_mmio_range {
	u32 start;
	u32 end;
};

#endif

Annotation

Implementation Notes