[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