Fix kernel-doc member tags that do not match the actual struct member
names, which would cause warnings with scripts/kernel-doc or produce
incorrect documentation:
- xe_bo_types.h: @atomic_access -> @attr.atomic_access
- xe_device_types.h: @mem.sys_mgr -> @mem.shrinker,
@pinned.external -> @pinned.late.external,
@vram_usefault.list -> @mem_access.vram_userfault.list,
@usm.asid -> @usm.asid_to_vm,
@usm.pagemap_shrinker -> @usm.dpagemap_shrinker,
@vm.xe -> @vm.xa
- xe_exec_queue_types.h: @last_fence -> @tlb_inval.last_fence
- xe_gt_sriov_pf_types.h: Remove stale @migration doc for non-existent
member
- xe_gt_types.h: @info->engine_mask -> @info.engine_mask,
@multi_queue_engine_class_mask -> @info.multi_queue_engine_class_mask
- xe_guc_ct_types.h: @ctbs.send -> @ctbs.h2g,
@ctbs.recv -> @ctbs.g2h
- xe_guc_submit_types.h: @valid -> @multi_queue.valid
- xe_hw_engine_types.h: @sched_props.set_job_timeout ->
@sched_props.job_timeout_ms
- xe_oa_types.h: duplicate @format -> @bo
- xe_vm_types.h: @read_only -> @invalidate_on_bind,
add missing @vma_flags doc
Assisted-by: GitHub Copilot:claude-sonnet-4.6
Reviewed-by: Brian Nguyen <brian3.nguyen@intel.com>
Link: https://patch.msgid.link/20260414225457.3687449-2-shuicheng.lin@intel.com
Signed-off-by: Shuicheng Lin <shuicheng.lin@intel.com>
/** @attr: User controlled attributes for bo */
struct {
/**
- * @atomic_access: type of atomic access bo needs
+ * @attr.atomic_access: type of atomic access bo needs
* protected by bo dma-resv lock
*/
u32 atomic_access;
struct xe_vram_region *vram;
/** @mem.sys_mgr: system TTM manager */
struct ttm_resource_manager sys_mgr;
- /** @mem.sys_mgr: system memory shrinker. */
+ /** @mem.shrinker: system memory shrinker. */
struct xe_shrinker *shrinker;
} mem;
/** @usm: unified memory state */
struct {
- /** @usm.asid: convert a ASID to VM */
+ /** @usm.asid_to_vm: convert an ASID to VM */
struct xarray asid_to_vm;
/** @usm.next_asid: next ASID, used to cyclical alloc asids */
u32 next_asid;
/** @usm.pf_queue: Page fault queues */
struct xe_pagefault_queue pf_queue[XE_PAGEFAULT_QUEUE_COUNT];
#if IS_ENABLED(CONFIG_DRM_XE_PAGEMAP)
- /** @usm.pagemap_shrinker: Shrinker for unused pagemaps */
+ /** @usm.dpagemap_shrinker: Shrinker for unused pagemaps */
struct drm_pagemap_shrinker *dpagemap_shrinker;
#endif
} usm;
struct list_head kernel_bo_present;
/** @pinned.late.evicted: pinned BO that have been evicted */
struct list_head evicted;
- /** @pinned.external: pinned external and dma-buf. */
+ /** @pinned.late.external: pinned external and dma-buf. */
struct list_head external;
} late;
} pinned;
struct {
/**
* @mem_access.vram_userfault.lock: Protects access to
- * @vram_usefault.list Using mutex instead of spinlock
+ * @mem_access.vram_userfault.list Using mutex instead of spinlock
* as lock is applied to entire list operation which
* may sleep
*/
/** @vm: VM state for file */
struct {
- /** @vm.xe: xarray to store VMs */
+ /** @vm.xa: xarray to store VMs */
struct xarray xa;
/**
* @vm.lock: Protects VM lookup + reference and removal from
*/
struct xe_dep_scheduler *dep_scheduler;
/**
- * @last_fence: last fence for tlb invalidation, protected by
+ * @tlb_inval.last_fence: last fence for tlb invalidation, protected by
* vm->lock in write mode
*/
struct dma_fence *last_fence;
* @service: service data.
* @control: control data.
* @policy: policy data.
- * @migration: migration data.
* @spare: PF-only provisioning configuration.
* @vfs: metadata for all VFs.
*/
/** @info.gmdid: raw GMD_ID value from hardware */
u32 gmdid;
/**
- * @multi_queue_engine_class_mask: Bitmask of engine classes with
+ * @info.multi_queue_engine_class_mask: Bitmask of engine classes with
* multi queue support enabled.
*/
u16 multi_queue_engine_class_mask;
/** @user_engines: engines present in GT and available to userspace */
struct {
/**
- * @user_engines.mask: like @info->engine_mask, but take in
+ * @user_engines.mask: like @info.engine_mask, but take in
* consideration only engines available to userspace
*/
u64 mask;
spinlock_t fast_lock;
/** @ctbs: buffers for sending and receiving commands */
struct {
- /** @ctbs.send: Host to GuC (H2G, send) channel */
+ /** @ctbs.h2g: Host to GuC (H2G, send) channel */
struct guc_ctb h2g;
- /** @ctbs.recv: GuC to Host (G2H, receive) channel */
+ /** @ctbs.g2h: GuC to Host (G2H, receive) channel */
struct guc_ctb g2h;
} ctbs;
/** @g2h_outstanding: number of outstanding G2H */
u32 primary;
/** @multi_queue.pos: Position of the exec queue within the multi queue group */
u8 pos;
- /** @valid: The exec queue is part of a multi queue group */
+ /** @multi_queue.valid: The exec queue is part of a multi queue group */
bool valid;
} multi_queue;
};
* @defaults: default scheduling properties
*/
struct {
- /** @sched_props.set_job_timeout: Set job timeout in ms for engine */
+ /** @sched_props.job_timeout_ms: Set job timeout in ms for engine */
u32 job_timeout_ms;
/** @sched_props.job_timeout_min: Min job timeout in ms for engine */
u32 job_timeout_min;
/** @format: data format */
const struct xe_oa_format *format;
- /** @format: xe_bo backing the OA buffer */
+ /** @bo: xe_bo backing the OA buffer */
struct xe_bo *bo;
/** @vaddr: mapped vaddr of the OA buffer */
struct xe_vma_op_map {
/** @vma: VMA to map */
struct xe_vma *vma;
+ /** @vma_flags: VMA flags for this operation */
unsigned int vma_flags;
/** @immediate: Immediate bind */
bool immediate;
- /** @read_only: Read only */
+ /** @invalidate_on_bind: Invalidate on bind */
bool invalidate_on_bind;
/** @request_decompress: schedule decompression for GPU map */
bool request_decompress;