History log of /linux-6.15/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.h (Results 1 – 25 of 150)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: v6.15, v6.15-rc7, v6.15-rc6, v6.15-rc5, v6.15-rc4, v6.15-rc3, v6.15-rc2, v6.15-rc1, v6.14
# a67f0094 19-Mar-2025 Kenneth Feng <[email protected]>

drm/amd/amdgpu: Revert "drm/amd/amdgpu: shorten the gfx idle worker timeout"

This reverts commit 55ff973fe1c053de143969cfc8b34baff084084a.

Reason for revert: this causes some tests fail with call t

drm/amd/amdgpu: Revert "drm/amd/amdgpu: shorten the gfx idle worker timeout"

This reverts commit 55ff973fe1c053de143969cfc8b34baff084084a.

Reason for revert: this causes some tests fail with call trace.

Signed-off-by: Kenneth Feng <[email protected]>
Acked-by: Yang Wang <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>

show more ...


Revision tags: v6.14-rc7
# 553673a3 12-Mar-2025 Alex Deucher <[email protected]>

drm/amdgpu/gfx: fix ref counting for ring based profile handling

We need to make sure the workload profile ref counts are
balanced. This isn't currently the case because we can
increment the count

drm/amdgpu/gfx: fix ref counting for ring based profile handling

We need to make sure the workload profile ref counts are
balanced. This isn't currently the case because we can
increment the count on submissions, but the decrement may
be delayed as work comes in. Track when we enable the
workload profile so the references are balanced.

v2: switch to a mutex and active flag
v3: fix mutex init

Fixes: 8fdb3958e396 ("drm/amdgpu/gfx: add ring helpers for setting workload profile")
Cc: Yang Wang <[email protected]>
Cc: Kenneth Feng <[email protected]>
Tested-by: Kenneth Feng <[email protected]>
Reviewed-by: Kenneth Feng <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>

show more ...


# 55ff973f 11-Mar-2025 Kenneth Feng <[email protected]>

drm/amd/amdgpu: shorten the gfx idle worker timeout

Shorten the gfx idle worker timeout. This is to sync with
DAL when there is no activity on the screen. Original 1
second can not sync with DAL, so

drm/amd/amdgpu: shorten the gfx idle worker timeout

Shorten the gfx idle worker timeout. This is to sync with
DAL when there is no activity on the screen. Original 1
second can not sync with DAL, so DAL can not apply MALL
when the workload type is not bootup default.

Signed-off-by: Kenneth Feng <[email protected]>
Reviewed-by: Yang Wang <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>

show more ...


Revision tags: v6.14-rc6, v6.14-rc5, v6.14-rc4, v6.14-rc3, v6.14-rc2, v6.14-rc1
# 250d9769 31-Jan-2025 Alex Deucher <[email protected]>

drm/amdgpu/gfx: add amdgpu_gfx_off_ctrl_immediate()

Same as amdgpu_gfx_off_ctrl(), but without the delay
for gfxoff disallow.

Reviewed-by: Lijo Lazar <[email protected]>
Suggested-by: Błażej Szczy

drm/amdgpu/gfx: add amdgpu_gfx_off_ctrl_immediate()

Same as amdgpu_gfx_off_ctrl(), but without the delay
for gfxoff disallow.

Reviewed-by: Lijo Lazar <[email protected]>
Suggested-by: Błażej Szczygieł <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>

show more ...


Revision tags: v6.13, v6.13-rc7
# 8fdb3958 08-Jan-2025 Alex Deucher <[email protected]>

drm/amdgpu/gfx: add ring helpers for setting workload profile

Add helpers to switch the workload profile dynamically when
commands are submitted. This allows us to switch to
the FULLSCREEN3D or COM

drm/amdgpu/gfx: add ring helpers for setting workload profile

Add helpers to switch the workload profile dynamically when
commands are submitted. This allows us to switch to
the FULLSCREEN3D or COMPUTE profile when work is submitted.
Add a delayed work handler to delay switching out of the
selected profile if additional work comes in. This works
the same as the VIDEO profile for VCN. This lets dynamically
enable workload profiles on the fly and then move back
to the default when there is no work.

Reviewed-by: Lijo Lazar <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>

show more ...


Revision tags: v6.13-rc6, v6.13-rc5, v6.13-rc4, v6.13-rc3, v6.13-rc2, v6.13-rc1, v6.12, v6.12-rc7
# 6c8d1f4b 05-Nov-2024 [email protected] <[email protected]>

drm/amdgpu: Add sysfs interface for gc reset mask

Add two sysfs interfaces for gfx and compute:
gfx_reset_mask
compute_reset_mask

These interfaces are read-only and show the resets supported by the

drm/amdgpu: Add sysfs interface for gc reset mask

Add two sysfs interfaces for gfx and compute:
gfx_reset_mask
compute_reset_mask

These interfaces are read-only and show the resets supported by the IP.
For example, full adapter reset (mode1/mode2/BACO/etc),
soft reset, queue reset, and pipe reset.

V2: the sysfs node returns a text string instead of some flags (Christian)
v3: add a generic helper which takes the ring as parameter
and print the strings in the order they are applied (Christian)

check amdgpu_gpu_recovery before creating sysfs file itself,
and initialize supported_reset_types in IP version files (Lijo)
v4: Fixing uninitialized variables (Tim)

Signed-off-by: Jesse Zhang <[email protected]>
Suggested-by: Alex Deucher <[email protected]>
Reviewed-by: Tim Huang <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>

show more ...


Revision tags: v6.12-rc6
# 047767dd 29-Oct-2024 Lijo Lazar <[email protected]>

drm/amdgpu: Group gfx sysfs functions

Make amdgpu_gfx_sysfs_init/fini functions as common entry points for all
gfx related sysfs nodes.

Signed-off-by: Lijo Lazar <[email protected]>
Reviewed-by: A

drm/amdgpu: Group gfx sysfs functions

Make amdgpu_gfx_sysfs_init/fini functions as common entry points for all
gfx related sysfs nodes.

Signed-off-by: Lijo Lazar <[email protected]>
Reviewed-by: Alex Deucher <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>

show more ...


# c5c63d9c 29-Oct-2024 Jesse Zhang <[email protected]>

drm/amdgpu: add amdgpu_gfx_sched_mask and amdgpu_compute_sched_mask debugfs

compute/gfx may have multiple rings on some hardware.
In some cases, userspace wants to run jobs on a specific ring for va

drm/amdgpu: add amdgpu_gfx_sched_mask and amdgpu_compute_sched_mask debugfs

compute/gfx may have multiple rings on some hardware.
In some cases, userspace wants to run jobs on a specific ring for validation purposes.
This debugfs entry helps to disable or enable submitting jobs to a specific ring.
This entry is populated only if there are at least two or more cores in the gfx/compute ip.

Signed-off-by: Jesse Zhang <[email protected]>
Suggested-by: Alex Deucher <[email protected]>
Reviewed-by: Tim Huang <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>

show more ...


Revision tags: v6.12-rc5, v6.12-rc4
# efe6a877 14-Oct-2024 Alex Deucher <[email protected]>

drm/amdgpu: fix fairness in enforce isolation handling

Make sure KFD gets a turn when serializing access to
the GC IP. Currently non-KFD jobs can starve KFD if they
submit often enough. This patch

drm/amdgpu: fix fairness in enforce isolation handling

Make sure KFD gets a turn when serializing access to
the GC IP. Currently non-KFD jobs can starve KFD if they
submit often enough. This patch prevents that by stalling
non-KFD if its time period has elapsed.

v2: fix units
v3: check enablement properly

Acked-by: Srinivasan Shanmugam <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>

show more ...


Revision tags: v6.12-rc3, v6.12-rc2, v6.12-rc1
# 9d7a8bdb 23-Sep-2024 Dr. David Alan Gilbert <[email protected]>

drm/amdgpu: Remove unused amdgpu_gfx_bit_to_me_queue

amdgpu_gfx_bit_to_me_queue has been unused since it was added in
commit 7470bfcf2014 ("drm/amdgpu: add helper function for gfx queue/bitmap
trans

drm/amdgpu: Remove unused amdgpu_gfx_bit_to_me_queue

amdgpu_gfx_bit_to_me_queue has been unused since it was added in
commit 7470bfcf2014 ("drm/amdgpu: add helper function for gfx queue/bitmap
transition")

Remove it.

Signed-off-by: Dr. David Alan Gilbert <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>

show more ...


Revision tags: v6.11, v6.11-rc7, v6.11-rc6, v6.11-rc5
# 6d5064c3 22-Aug-2024 Likun Gao <[email protected]>

drm/amdgpu: support for gc_info table v1.3

Add gc_info table v1.3 for IP discovery.

Signed-off-by: Likun Gao <[email protected]>
Reviewed-by: Hawking Zhang <[email protected]>
Signed-off-by: Al

drm/amdgpu: support for gc_info table v1.3

Add gc_info table v1.3 for IP discovery.

Signed-off-by: Likun Gao <[email protected]>
Reviewed-by: Hawking Zhang <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>
(cherry picked from commit 875ff9a7ee8824200885384effa7743892a34ed6)

show more ...


# 875ff9a7 22-Aug-2024 Likun Gao <[email protected]>

drm/amdgpu: support for gc_info table v1.3

Add gc_info table v1.3 for IP discovery.

Signed-off-by: Likun Gao <[email protected]>
Reviewed-by: Hawking Zhang <[email protected]>
Signed-off-by: Al

drm/amdgpu: support for gc_info table v1.3

Add gc_info table v1.3 for IP discovery.

Signed-off-by: Likun Gao <[email protected]>
Reviewed-by: Hawking Zhang <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>

show more ...


Revision tags: v6.11-rc4, v6.11-rc3, v6.11-rc2, v6.11-rc1, v6.10, v6.10-rc7, v6.10-rc6, v6.10-rc5, v6.10-rc4, v6.10-rc3
# afefd6f2 06-Jun-2024 Srinivasan Shanmugam <[email protected]>

drm/amdgpu: Implement Enforce Isolation Handler for KGD/KFD serialization

This commit introduces the Enforce Isolation Handler designed to enforce
shader isolation on AMD GPUs, which helps to preven

drm/amdgpu: Implement Enforce Isolation Handler for KGD/KFD serialization

This commit introduces the Enforce Isolation Handler designed to enforce
shader isolation on AMD GPUs, which helps to prevent data leakage
between different processes.

The handler counts the number of emitted fences for each GFX and compute
ring. If there are any fences, it schedules the `enforce_isolation_work`
to be run after a delay of `GFX_SLICE_PERIOD`. If there are no fences,
it signals the Kernel Fusion Driver (KFD) to resume the runqueue.

The function is synchronized using the `enforce_isolation_mutex`.

This commit also introduces a reference count mechanism
(kfd_sch_req_count) to keep track of the number of requests to enable
the KFD scheduler. When a request to enable the KFD scheduler is made,
the reference count is decremented. When the reference count reaches
zero, a delayed work is scheduled to enforce isolation after a delay of
GFX_SLICE_PERIOD.

When a request to disable the KFD scheduler is made, the function first
checks if the reference count is zero. If it is, it cancels the delayed
work for enforcing isolation and checks if the KFD scheduler is active.
If the KFD scheduler is active, it sends a request to stop the KFD
scheduler and sets the KFD scheduler state to inactive. Then, it
increments the reference count.

The function is synchronized using the kfd_sch_mutex to ensure that the
KFD scheduler state and reference count are updated atomically.

Cc: Christian König <[email protected]>
Cc: Alex Deucher <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>
Signed-off-by: Srinivasan Shanmugam <[email protected]>
Suggested-by: Christian König <[email protected]>
Suggested-by: Alex Deucher <[email protected]>

show more ...


Revision tags: v6.10-rc2
# e189be9b 27-May-2024 Srinivasan Shanmugam <[email protected]>

drm/amdgpu: Add enforce_isolation sysfs attribute

This commit adds a new sysfs attribute 'enforce_isolation' to control
the 'enforce_isolation' setting per GPU. The attribute can be read and
written

drm/amdgpu: Add enforce_isolation sysfs attribute

This commit adds a new sysfs attribute 'enforce_isolation' to control
the 'enforce_isolation' setting per GPU. The attribute can be read and
written, and accepts values 0 (disabled) and 1 (enabled).

When 'enforce_isolation' is enabled, reserved VMIDs are allocated for
each ring. When it's disabled, the reserved VMIDs are freed.

The set function locks a mutex before changing the 'enforce_isolation'
flag and the VMIDs, and unlocks it afterwards. This ensures that these
operations are atomic and prevents race conditions and other concurrency
issues.

Cc: Christian König <[email protected]>
Cc: Alex Deucher <[email protected]>
Signed-off-by: Srinivasan Shanmugam <[email protected]>
Suggested-by: Alex Deucher <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>

show more ...


# aec773a1 06-Jun-2024 Srinivasan Shanmugam <[email protected]>

drm/amdgpu: Add infrastructure for Cleaner Shader feature

The cleaner shader is used by the CP firmware to clean LDS and GPRs
between processes on the CUs.

This adds an internal API for GFX IP code

drm/amdgpu: Add infrastructure for Cleaner Shader feature

The cleaner shader is used by the CP firmware to clean LDS and GPRs
between processes on the CUs.

This adds an internal API for GFX IP code to allocate and initialize the
cleaner shader.

Cc: Christian König <[email protected]>
Cc: Alex Deucher <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>
Signed-off-by: Srinivasan Shanmugam <[email protected]>
Suggested-by: Christian König <[email protected]>

show more ...


# 76acba7b 12-Jul-2024 Alex Deucher <[email protected]>

drm/amdgpu/gfx11: add a mutex for the gfx semaphore

This will be used in more places in the future so
add a mutex.

Acked-by: Vitaly Prosyak <[email protected]>
Signed-off-by: Alex Deucher <ale

drm/amdgpu/gfx11: add a mutex for the gfx semaphore

This will be used in more places in the future so
add a mutex.

Acked-by: Vitaly Prosyak <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>

show more ...


# 186020c1 04-Jul-2024 Jiadong Zhu <[email protected]>

drm/amdgpu/gfx: add a new kiq_pm4_funcs callback for reset_hw_queue

Add reset_hw_queue in kiq_pm4_funcs callbacks.

Acked-by: Vitaly Prosyak <[email protected]>
Signed-off-by: Jiadong Zhu <Jiad

drm/amdgpu/gfx: add a new kiq_pm4_funcs callback for reset_hw_queue

Add reset_hw_queue in kiq_pm4_funcs callbacks.

Acked-by: Vitaly Prosyak <[email protected]>
Signed-off-by: Jiadong Zhu <[email protected]>
Reviewed-by: Alex Deucher <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>

show more ...


# acddd5cf 12-Jul-2024 Alex Deucher <[email protected]>

drm/amdgpu/gfx: add bad opcode interrupt

Add the irq source for bad opcodes.

Acked-by: Felix Kuehling <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>


# d02ddefc 03-Jul-2024 Lijo Lazar <[email protected]>

drm/amdgpu: Initialize VF partition mode

For SOCs with GFX v9.4.3, a VF may have multiple compute partitions.
Fetch the partition information during init and initialize partition
nodes. There is no

drm/amdgpu: Initialize VF partition mode

For SOCs with GFX v9.4.3, a VF may have multiple compute partitions.
Fetch the partition information during init and initialize partition
nodes. There is no support to switch partition mode in VF mode, hence
disable the same.

Signed-off-by: Lijo Lazar <[email protected]>
Reviewed-by: Hawking Zhang <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>

show more ...


# 33837d62 31-May-2024 Sunil Khatri <[email protected]>

drm/amdgpu: rename ip_dump_cp_queues to compute queues

Rename the variable ip_dump_cp_queues to ip_dump_compute_queue
as it represent compute queues.

Reviewed-by: Alex Deucher <alexander.deucher@am

drm/amdgpu: rename ip_dump_cp_queues to compute queues

Rename the variable ip_dump_cp_queues to ip_dump_compute_queue
as it represent compute queues.

Reviewed-by: Alex Deucher <[email protected]>
Signed-off-by: Sunil Khatri <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>

show more ...


Revision tags: v6.10-rc1
# 8444453d 22-May-2024 Sunil Khatri <[email protected]>

drm/amdgpu: add gfx queue support of gfx10 in ipdump

Add gfx queue register for all instances in devcoredump
for gfx10.

Reviewed-by: Alex Deucher <[email protected]>
Signed-off-by: Sunil Kh

drm/amdgpu: add gfx queue support of gfx10 in ipdump

Add gfx queue register for all instances in devcoredump
for gfx10.

Reviewed-by: Alex Deucher <[email protected]>
Signed-off-by: Sunil Khatri <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>

show more ...


# 0f83227b 22-May-2024 Sunil Khatri <[email protected]>

drm/amdgpu: Add cp queues support fro gfx10 in ipdump

Add support to dump registers of all instances of
cp queue registers of gfx10 to devcoredump.

Reviewed-by: Alex Deucher <alexander.deucher@amd.

drm/amdgpu: Add cp queues support fro gfx10 in ipdump

Add support to dump registers of all instances of
cp queue registers of gfx10 to devcoredump.

Reviewed-by: Alex Deucher <[email protected]>
Signed-off-by: Sunil Khatri <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>

show more ...


Revision tags: v6.9
# 74feef56 07-May-2024 Sunil Khatri <[email protected]>

drm/amdgpu: rename the ip_dump to ip_dump_core

Rename the memory pointer from ip_dump to ip_dump_core
to make it specific to core registers and rest other
registers to be dumped in their respective

drm/amdgpu: rename the ip_dump to ip_dump_core

Rename the memory pointer from ip_dump to ip_dump_core
to make it specific to core registers and rest other
registers to be dumped in their respective memories.

Reviewed-by: Alex Deucher <[email protected]>
Signed-off-by: Sunil Khatri <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>

show more ...


# 68de5d31 08-May-2024 Jesse Zhang <[email protected]>

drm/amdgpu: remove structurally dead code

This code cannot be reached: return "UNKNOWN";.

Signed-off-by: Jesse Zhang <[email protected]>
Reviewed-by: Tim Huang <[email protected]>
Signed-off-by:

drm/amdgpu: remove structurally dead code

This code cannot be reached: return "UNKNOWN";.

Signed-off-by: Jesse Zhang <[email protected]>
Reviewed-by: Tim Huang <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>

show more ...


Revision tags: v6.9-rc7
# b0923d5d 02-May-2024 Sunil Khatri <[email protected]>

drm/amdgpu: remove ip dump reg_count variable

reg_count is not used and the register count is
directly derived from the array size and hence
removed.

Signed-off-by: Sunil Khatri <[email protected]

drm/amdgpu: remove ip dump reg_count variable

reg_count is not used and the register count is
directly derived from the array size and hence
removed.

Signed-off-by: Sunil Khatri <[email protected]>
Acked-by: Christian König <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>

show more ...


123456