[PATCH v2 0/7] Add support for dynamic NPS switch
Xu, Feifei
feifxu at amd.com
Fri Sep 27 07:37:57 UTC 2024
Series is Reviewed-by: Feifei Xu <Feifei.Xu at amd.com>
On 9/27/2024 12:52 PM, Lijo Lazar wrote:
> This series adds supports for dynamic NPS switch on GC v9.4.3/9.4.4 SOC
> variants.
>
> In order to do dynamic NPS switch a sysfs interface is provided to request a new
> NPS mode. If the device is part of a hive, all hive devices are required to be
> in the same NPS mode. Hence a hive device request is saved in a hive variable.
> For individual device, it's saved in a gmc block variable.
>
> In order to do a NPS mode switch, the workflow is -
>
> 1) User places a requests through sysfs node.
> 2) User unloads the driver
> 3) During unload, driver checks for any pending NPS switch request. If any
> request is pending, it places the request to PSP FW.
> 4) For a hive, request is placed in one-go for all devices in the hive. If
> one of the requests fails, a request is placed again to revert to current NPS
> mode on the successful devices.
> 5) User reloads the driver.
> 6) On reload, driver checks if NPS switch is pending and initiates a mode-1
> reset.
> 7) During resume after a reset, NPS ranges are read again from discovery table.
> 8) Driver detects the new NPS mode and makes a compatible compute partition mode
> switch if required.
>
> v2:
> Move NPS request check ahead of TOS reload requirement check (Feifei)
>
> Lijo Lazar (7):
> drm/amdgpu: Add option to refresh NPS data
> drm/amdgpu: Add PSP interface for NPS switch
> drm/amdgpu: Add gmc interface to request NPS mode
> drm/amdgpu: Add sysfs interfaces for NPS mode
> drm/amdgpu: Place NPS mode request on unload
> drm/amdgpu: Check gmc requirement for reset on init
> drm/amdgpu: Add NPS switch support for GC 9.4.3
>
> drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c | 68 +++++--
> drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.h | 2 +-
> drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 1 +
> drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c | 190 ++++++++++++++++--
> drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.h | 19 ++
> drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.h | 1 +
> drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 25 +++
> drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h | 1 +
> drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c | 39 ++++
> drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.h | 5 +
> drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c | 44 ++++
> drivers/gpu/drm/amd/amdgpu/nbio_v7_9.c | 12 ++
> drivers/gpu/drm/amd/amdgpu/psp_gfx_if.h | 14 +-
> drivers/gpu/drm/amd/amdgpu/soc15.c | 2 +
> 14 files changed, 387 insertions(+), 36 deletions(-)
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/amd-gfx/attachments/20240927/89d6810d/attachment.htm>
More information about the amd-gfx
mailing list