Commit 550bb28e authored by Likun Gao's avatar Likun Gao Committed by Alex Deucher

drm/amdgpu: support rlc v2_3 ucode struct

Add support for rlc v2_3 to support RLCV and RLCP fw load.
Signed-off-by: default avatarLikun Gao <Likun.Gao@amd.com>
Reviewed-by: default avatarKenneth Feng <kenneth.feng@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 641f053e
...@@ -179,6 +179,8 @@ struct amdgpu_rlc { ...@@ -179,6 +179,8 @@ struct amdgpu_rlc {
u32 save_restore_list_srm_size_bytes; u32 save_restore_list_srm_size_bytes;
u32 rlc_iram_ucode_size_bytes; u32 rlc_iram_ucode_size_bytes;
u32 rlc_dram_ucode_size_bytes; u32 rlc_dram_ucode_size_bytes;
u32 rlcp_ucode_size_bytes;
u32 rlcv_ucode_size_bytes;
u32 *register_list_format; u32 *register_list_format;
u32 *register_restore; u32 *register_restore;
...@@ -187,6 +189,8 @@ struct amdgpu_rlc { ...@@ -187,6 +189,8 @@ struct amdgpu_rlc {
u8 *save_restore_list_srm; u8 *save_restore_list_srm;
u8 *rlc_iram_ucode; u8 *rlc_iram_ucode;
u8 *rlc_dram_ucode; u8 *rlc_dram_ucode;
u8 *rlcp_ucode;
u8 *rlcv_ucode;
bool is_rlc_v2_1; bool is_rlc_v2_1;
......
...@@ -248,7 +248,7 @@ struct rlc_firmware_header_v2_1 { ...@@ -248,7 +248,7 @@ struct rlc_firmware_header_v2_1 {
uint32_t save_restore_list_srm_offset_bytes; uint32_t save_restore_list_srm_offset_bytes;
}; };
/* version_major=2, version_minor=1 */ /* version_major=2, version_minor=2 */
struct rlc_firmware_header_v2_2 { struct rlc_firmware_header_v2_2 {
struct rlc_firmware_header_v2_1 v2_1; struct rlc_firmware_header_v2_1 v2_1;
uint32_t rlc_iram_ucode_size_bytes; uint32_t rlc_iram_ucode_size_bytes;
...@@ -257,6 +257,15 @@ struct rlc_firmware_header_v2_2 { ...@@ -257,6 +257,15 @@ struct rlc_firmware_header_v2_2 {
uint32_t rlc_dram_ucode_offset_bytes; uint32_t rlc_dram_ucode_offset_bytes;
}; };
/* version_major=2, version_minor=3 */
struct rlc_firmware_header_v2_3 {
struct rlc_firmware_header_v2_2 v2_2;
uint32_t rlcp_ucode_size_bytes;
uint32_t rlcp_ucode_offset_bytes;
uint32_t rlcv_ucode_size_bytes;
uint32_t rlcv_ucode_offset_bytes;
};
/* version_major=1, version_minor=0 */ /* version_major=1, version_minor=0 */
struct sdma_firmware_header_v1_0 { struct sdma_firmware_header_v1_0 {
struct common_firmware_header header; struct common_firmware_header header;
...@@ -342,6 +351,8 @@ union amdgpu_firmware_header { ...@@ -342,6 +351,8 @@ union amdgpu_firmware_header {
struct rlc_firmware_header_v1_0 rlc; struct rlc_firmware_header_v1_0 rlc;
struct rlc_firmware_header_v2_0 rlc_v2_0; struct rlc_firmware_header_v2_0 rlc_v2_0;
struct rlc_firmware_header_v2_1 rlc_v2_1; struct rlc_firmware_header_v2_1 rlc_v2_1;
struct rlc_firmware_header_v2_2 rlc_v2_2;
struct rlc_firmware_header_v2_3 rlc_v2_3;
struct sdma_firmware_header_v1_0 sdma; struct sdma_firmware_header_v1_0 sdma;
struct sdma_firmware_header_v1_1 sdma_v1_1; struct sdma_firmware_header_v1_1 sdma_v1_1;
struct gpu_info_firmware_header_v1_0 gpu_info; struct gpu_info_firmware_header_v1_0 gpu_info;
......
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