pass xcc mask to ras ta, ras ta will compare
the mask with the one from chiplet topology.

Changed from V1:
        Remove IP version checking.
        Set ras_cmd->ras_init_message.init_flags.xcc_mask
        directly due to xcc_mask is common structres to
        all the devices.

Signed-off-by: Stanley.Yang <stanley.y...@amd.com>
Reviewed-by: Tao Zhou <tao.zh...@amd.com>
Reviewed-by: Hawking Zhang <hawking.zh...@amd.com>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 2 ++
 drivers/gpu/drm/amd/amdgpu/ta_ras_if.h  | 1 +
 2 files changed, 3 insertions(+)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c 
b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
index 2175bfc89e7d..2ad3b93bf530 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
@@ -1662,6 +1662,8 @@ int psp_ras_initialize(struct psp_context *psp)
                ras_cmd->ras_in_message.init_flags.poison_mode_en = 1;
        if (!adev->gmc.xgmi.connected_to_cpu)
                ras_cmd->ras_in_message.init_flags.dgpu_mode = 1;
+       ras_cmd->ras_in_message.init_flags.xcc_mask =
+               adev->gfx.xcc_mask;
 
        ret = psp_ta_load(psp, &psp->ras_context.context);
 
diff --git a/drivers/gpu/drm/amd/amdgpu/ta_ras_if.h 
b/drivers/gpu/drm/amd/amdgpu/ta_ras_if.h
index 30d0482ac466..be2984ac00a5 100644
--- a/drivers/gpu/drm/amd/amdgpu/ta_ras_if.h
+++ b/drivers/gpu/drm/amd/amdgpu/ta_ras_if.h
@@ -129,6 +129,7 @@ struct ta_ras_trigger_error_input {
 struct ta_ras_init_flags {
        uint8_t poison_mode_en;
        uint8_t dgpu_mode;
+       uint16_t xcc_mask;
 };
 
 struct ta_ras_output_flags {
-- 
2.17.1

Reply via email to