Commit 390d59be authored by Likun Gao's avatar Likun Gao Committed by Alex Deucher

drm/amdgpu/psp: add structure to support PSP SPL

Add support for PSP SPL (Security patch level) table to support
anti-rollback of FW loaded by Trusted OS.
Signed-off-by: default avatarLikun Gao <Likun.Gao@amd.com>
Reviewed-by: default avatarHawking Zhang <Hawking.Zhang@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent ba818620
...@@ -222,10 +222,12 @@ struct psp_context ...@@ -222,10 +222,12 @@ struct psp_context
uint32_t sos_bin_size; uint32_t sos_bin_size;
uint32_t toc_bin_size; uint32_t toc_bin_size;
uint32_t kdb_bin_size; uint32_t kdb_bin_size;
uint32_t spl_bin_size;
uint8_t *sys_start_addr; uint8_t *sys_start_addr;
uint8_t *sos_start_addr; uint8_t *sos_start_addr;
uint8_t *toc_start_addr; uint8_t *toc_start_addr;
uint8_t *kdb_start_addr; uint8_t *kdb_start_addr;
uint8_t *spl_start_addr;
/* tmr buffer */ /* tmr buffer */
struct amdgpu_bo *tmr_bo; struct amdgpu_bo *tmr_bo;
......
...@@ -99,6 +99,14 @@ struct psp_firmware_header_v1_2 { ...@@ -99,6 +99,14 @@ struct psp_firmware_header_v1_2 {
uint32_t kdb_size_bytes; uint32_t kdb_size_bytes;
}; };
/* version_major=1, version_minor=3 */
struct psp_firmware_header_v1_3 {
struct psp_firmware_header_v1_1 v1_1;
uint32_t spl_header_version;
uint32_t spl_offset_bytes;
uint32_t spl_size_bytes;
};
/* version_major=1, version_minor=0 */ /* version_major=1, version_minor=0 */
struct ta_firmware_header_v1_0 { struct ta_firmware_header_v1_0 {
struct common_firmware_header header; struct common_firmware_header header;
...@@ -266,6 +274,7 @@ union amdgpu_firmware_header { ...@@ -266,6 +274,7 @@ union amdgpu_firmware_header {
struct smc_firmware_header_v2_0 smc_v2_0; struct smc_firmware_header_v2_0 smc_v2_0;
struct psp_firmware_header_v1_0 psp; struct psp_firmware_header_v1_0 psp;
struct psp_firmware_header_v1_1 psp_v1_1; struct psp_firmware_header_v1_1 psp_v1_1;
struct psp_firmware_header_v1_3 psp_v1_3;
struct ta_firmware_header_v1_0 ta; struct ta_firmware_header_v1_0 ta;
struct gfx_firmware_header_v1_0 gfx; struct gfx_firmware_header_v1_0 gfx;
struct rlc_firmware_header_v1_0 rlc; struct rlc_firmware_header_v1_0 rlc;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment