PSP runtime boot_cfg_bitmask carries various psp bl
feature bit mask that can be used by driver. Cache
it in sw_init for further usage.

Signed-off-by: Hawking Zhang <hawking.zh...@amd.com>
Reviewed-by: John Clements <john.cleme...@amd.com>
Reviewed-by: Lijo Lazar <lijo.la...@amd.com>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 7 +++++++
 drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h | 2 ++
 2 files changed, 9 insertions(+)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c 
b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
index dc786c91ec9d..28f95c5cd373 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
@@ -237,6 +237,7 @@ static int psp_sw_init(void *handle)
        struct amdgpu_device *adev = (struct amdgpu_device *)handle;
        struct psp_context *psp = &adev->psp;
        int ret;
+       struct psp_runtime_boot_cfg_entry boot_cfg_entry;
 
        if (!amdgpu_sriov_vf(adev)) {
                ret = psp_init_microcode(psp);
@@ -246,6 +247,12 @@ static int psp_sw_init(void *handle)
                }
        }
 
+       memset(&boot_cfg_entry, 0, sizeof(boot_cfg_entry));
+       if (psp_get_runtime_db_entry(adev,
+                               PSP_RUNTIME_ENTRY_TYPE_BOOT_CONFIG,
+                               &boot_cfg_entry))
+               psp->boot_cfg_bitmask = boot_cfg_entry.boot_cfg_bitmask;
+
        ret = psp_memory_training_init(psp);
        if (ret) {
                DRM_ERROR("Failed to initialize memory training!\n");
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h 
b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h
index 4dad9b539f06..2bd85b505f2c 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h
@@ -378,6 +378,8 @@ struct psp_context
        struct psp_securedisplay_context        securedisplay_context;
        struct mutex                    mutex;
        struct psp_memory_training_context mem_train_ctx;
+
+       uint32_t                        boot_cfg_bitmask;
 };
 
 struct amdgpu_psp_funcs {
-- 
2.17.1

_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

Reply via email to