RE: [PATCH] drm/amdgpu: Use SPX as default in partition config

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



[AMD Official Use Only - AMD Internal Distribution Only]

Reviewed-by: Asad Kamal <asad.kamal@xxxxxxx>

Thanks & Regards
Asad

-----Original Message-----
From: Lazar, Lijo <Lijo.Lazar@xxxxxxx>
Sent: Monday, October 14, 2024 2:49 PM
To: amd-gfx@xxxxxxxxxxxxxxxxxxxxx; Kamal, Asad <Asad.Kamal@xxxxxxx>
Cc: Zhang, Hawking <Hawking.Zhang@xxxxxxx>; Deucher, Alexander <Alexander.Deucher@xxxxxxx>; Zhou, Hao (Claire) <Hao.Zhou@xxxxxxx>
Subject: [PATCH] drm/amdgpu: Use SPX as default in partition config

In certain cases - ex: when a reset is required on initialization - XCP manager won't have a valid partition mode. In such cases, use SPX as the default selected mode for which partition configuration details are populated.

Signed-off-by: Lijo Lazar <lijo.lazar@xxxxxxx>
Reported-by: Hao Zhou <hao.zhou@xxxxxxx>

Fixes: c7de57033d9b ("drm/amdgpu: Add sysfs nodes to get xcp details")
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_xcp.c | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_xcp.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_xcp.c
index 111bf897e72e..83a16918ea76 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_xcp.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_xcp.c
@@ -606,7 +606,7 @@ void amdgpu_xcp_cfg_sysfs_init(struct amdgpu_device *adev)  {
        struct amdgpu_xcp_res_details *xcp_res;
        struct amdgpu_xcp_cfg *xcp_cfg;
-       int i, r, j, rid;
+       int i, r, j, rid, mode;

        if (!adev->xcp_mgr)
                return;
@@ -625,11 +625,15 @@ void amdgpu_xcp_cfg_sysfs_init(struct amdgpu_device *adev)
        if (r)
                goto err1;

-       r = amdgpu_xcp_get_res_info(xcp_cfg->xcp_mgr, xcp_cfg->xcp_mgr->mode, xcp_cfg);
+       mode = (xcp_cfg->xcp_mgr->mode ==
+               AMDGPU_UNKNOWN_COMPUTE_PARTITION_MODE) ?
+                      AMDGPU_SPX_PARTITION_MODE :
+                      xcp_cfg->xcp_mgr->mode;
+       r = amdgpu_xcp_get_res_info(xcp_cfg->xcp_mgr, mode, xcp_cfg);
        if (r)
                goto err1;

-       xcp_cfg->mode = xcp_cfg->xcp_mgr->mode;
+       xcp_cfg->mode = mode;
        for (i = 0; i < xcp_cfg->num_res; i++) {
                xcp_res = &xcp_cfg->xcp_res[i];
                rid = xcp_res->id;
--
2.25.1





[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux