Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/amdgpu: updated ta ucode header

added definition for ta_firmware_header_v2_0

Reviewed-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com>
Signed-off-by: John Clements <john.clements@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>

authored by

John Clements and committed by
Alex Deucher
f893d74f 90937420

+26
+26
drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.h
··· 124 124 uint32_t ta_dtm_size_bytes; 125 125 }; 126 126 127 + enum ta_fw_type { 128 + TA_FW_TYPE_UNKOWN, 129 + TA_FW_TYPE_PSP_ASD, 130 + TA_FW_TYPE_PSP_XGMI, 131 + TA_FW_TYPE_PSP_RAS, 132 + TA_FW_TYPE_PSP_HDCP, 133 + TA_FW_TYPE_PSP_DTM, 134 + }; 135 + 136 + struct ta_fw_bin_desc { 137 + uint32_t fw_type; 138 + uint32_t fw_version; 139 + uint32_t offset_bytes; 140 + uint32_t size_bytes; 141 + }; 142 + 143 + /* version_major=2, version_minor=0 */ 144 + struct ta_firmware_header_v2_0 { 145 + struct common_firmware_header header; 146 + uint32_t ta_fw_bin_count; 147 + struct ta_fw_bin_desc ta_fw_bin[]; 148 + }; 149 + 127 150 /* version_major=1, version_minor=0 */ 128 151 struct gfx_firmware_header_v1_0 { 129 152 struct common_firmware_header header; ··· 299 276 struct psp_firmware_header_v1_1 psp_v1_1; 300 277 struct psp_firmware_header_v1_3 psp_v1_3; 301 278 struct ta_firmware_header_v1_0 ta; 279 + struct ta_firmware_header_v2_0 ta_v2_0; 302 280 struct gfx_firmware_header_v1_0 gfx; 303 281 struct rlc_firmware_header_v1_0 rlc; 304 282 struct rlc_firmware_header_v2_0 rlc_v2_0; ··· 311 287 struct dmcub_firmware_header_v1_0 dmcub; 312 288 uint8_t raw[0x100]; 313 289 }; 290 + 291 + #define UCODE_MAX_TA_PACKAGING ((sizeof(union amdgpu_firmware_header) - sizeof(struct common_firmware_header) - 4) / sizeof(struct ta_fw_bin_desc)) 314 292 315 293 /* 316 294 * fw loading support