Commit b2aa382a authored by John Clements's avatar John Clements Committed by Alex Deucher
Browse files

drm/amdgpu: added register list driver ctx (v2)



updated psp bin parsing and load register list

v2: update to latest interface (Alex)

Reviewed-by: default avatarHawking Zhang <Hawking.Zhang@amd.com>
Signed-off-by: default avatarJohn Clements <john.clements@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent d74decc4
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -2756,6 +2756,9 @@ int psp_init_sos_microcode(struct psp_context *psp,
			adev->psp.spl_bin_size = le32_to_cpu(sos_hdr_v1_3->spl_size_bytes);
			adev->psp.spl_start_addr = (uint8_t *)adev->psp.sys_start_addr +
				le32_to_cpu(sos_hdr_v1_3->spl_offset_bytes);
			adev->psp.rl_bin_size = le32_to_cpu(sos_hdr_v1_3->rl_size_bytes);
			adev->psp.rl_start_addr = (uint8_t *)adev->psp.sys_start_addr +
				le32_to_cpu(sos_hdr_v1_3->rl_offset_bytes);
		}
		break;
	default:
+2 −0
Original line number Diff line number Diff line
@@ -248,11 +248,13 @@ struct psp_context
	uint32_t			toc_bin_size;
	uint32_t			kdb_bin_size;
	uint32_t			spl_bin_size;
	uint32_t			rl_bin_size;
	uint8_t				*sys_start_addr;
	uint8_t				*sos_start_addr;
	uint8_t				*toc_start_addr;
	uint8_t				*kdb_start_addr;
	uint8_t				*spl_start_addr;
	uint8_t				*rl_start_addr;

	/* tmr buffer */
	struct amdgpu_bo		*tmr_bo;
+3 −0
Original line number Diff line number Diff line
@@ -105,6 +105,9 @@ struct psp_firmware_header_v1_3 {
	uint32_t spl_header_version;
	uint32_t spl_offset_bytes;
	uint32_t spl_size_bytes;
	uint32_t rl_header_version;
	uint32_t rl_offset_bytes;
	uint32_t rl_size_bytes;
};

/* version_major=1, version_minor=0 */