diff options
author | Niranjana Vishwanathapura <[email protected]> | 2024-05-31 09:12:30 -0700 |
---|---|---|
committer | Rodrigo Vivi <[email protected]> | 2024-05-31 15:59:23 -0400 |
commit | 877517f2dcba58867b64e3e0c616f26c62d4a8db (patch) | |
tree | 94346b59e5b1d07ee7d79a6bd1a5ec16175b9ac3 | |
parent | f2bf9e95989c0163650dbeaede658d0fcf929063 (diff) |
drm/xe: Add kernel-doc to some xe_lrc interfaces
Add kernel-doc to xe_lrc_create/destroy and xe_lrc_get/put
interfaces.
v2: Fix kernel-doc for xe_lrc_create(), drop Fixes tag.
(Matt Brost, Michal Wajdeczko)
Signed-off-by: Niranjana Vishwanathapura <[email protected]>
Reviewed-by: Matthew Brost <[email protected]>
Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
Signed-off-by: Rodrigo Vivi <[email protected]>
-rw-r--r-- | drivers/gpu/drm/xe/xe_lrc.c | 18 | ||||
-rw-r--r-- | drivers/gpu/drm/xe/xe_lrc.h | 13 |
2 files changed, 31 insertions, 0 deletions
diff --git a/drivers/gpu/drm/xe/xe_lrc.c b/drivers/gpu/drm/xe/xe_lrc.c index 26922e1bac82..c1bb85d2e243 100644 --- a/drivers/gpu/drm/xe/xe_lrc.c +++ b/drivers/gpu/drm/xe/xe_lrc.c @@ -945,6 +945,17 @@ err_lrc_finish: return err; } +/** + * xe_lrc_create - Create a LRC + * @hwe: Hardware Engine + * @vm: The VM (address space) + * @ring_size: LRC ring size + * + * Allocate and initialize the Logical Ring Context (LRC). + * + * Return pointer to created LRC upon success and an error pointer + * upon failure. + */ struct xe_lrc *xe_lrc_create(struct xe_hw_engine *hwe, struct xe_vm *vm, u32 ring_size) { @@ -964,6 +975,13 @@ struct xe_lrc *xe_lrc_create(struct xe_hw_engine *hwe, struct xe_vm *vm, return lrc; } +/** + * xe_lrc_destroy - Destroy the LRC + * @ref: reference to LRC + * + * Called when ref == 0, release resources held by the Logical Ring Context + * (LRC) and free the LRC memory. + */ void xe_lrc_destroy(struct kref *ref) { struct xe_lrc *lrc = container_of(ref, struct xe_lrc, refcount); diff --git a/drivers/gpu/drm/xe/xe_lrc.h b/drivers/gpu/drm/xe/xe_lrc.h index ebe0e362e434..882c3437ba5c 100644 --- a/drivers/gpu/drm/xe/xe_lrc.h +++ b/drivers/gpu/drm/xe/xe_lrc.h @@ -26,12 +26,25 @@ struct xe_lrc *xe_lrc_create(struct xe_hw_engine *hwe, struct xe_vm *vm, u32 ring_size); void xe_lrc_destroy(struct kref *ref); +/** + * xe_lrc_get - Get reference to the LRC + * @lrc: Logical Ring Context + * + * Increment reference count of @lrc + */ static inline struct xe_lrc *xe_lrc_get(struct xe_lrc *lrc) { kref_get(&lrc->refcount); return lrc; } +/** + * xe_lrc_put - Put reference of the LRC + * @lrc: Logical Ring Context + * + * Decrement reference count of @lrc, call xe_lrc_destroy when + * reference count reaches 0. + */ static inline void xe_lrc_put(struct xe_lrc *lrc) { kref_put(&lrc->refcount, xe_lrc_destroy); |