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

Configure Feed

Select the types of activity you want to include in your feed.

drm/amdgpu: Add PSP public function to load a list of FWs

v1: Adds a function to load a list of FWs as passed by the caller. This is
needed as only a select need to loaded for some use cases.

v2: Omit unrelated change, remove info log, fix return value when count is 0

Signed-off-by: Lijo Lazar <lijo.lazar@amd.com>
Reviewed-by: Feifei Xu <Feifei.Xu@amd.com>
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>

authored by

Lijo Lazar and committed by
Alex Deucher
a2052839 04442bf7

+19
+16
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
··· 2227 2227 return false; 2228 2228 } 2229 2229 2230 + int psp_load_fw_list(struct psp_context *psp, 2231 + struct amdgpu_firmware_info **ucode_list, int ucode_count) 2232 + { 2233 + int ret = 0, i; 2234 + struct amdgpu_firmware_info *ucode; 2235 + 2236 + for (i = 0; i < ucode_count; ++i) { 2237 + ucode = ucode_list[i]; 2238 + psp_print_fw_hdr(psp, ucode); 2239 + ret = psp_execute_np_fw_load(psp, ucode); 2240 + if (ret) 2241 + return ret; 2242 + } 2243 + return ret; 2244 + } 2245 + 2230 2246 static int psp_np_fw_load(struct psp_context *psp) 2231 2247 { 2232 2248 int i, ret;
+3
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h
··· 420 420 const char *chip_name); 421 421 int psp_get_fw_attestation_records_addr(struct psp_context *psp, 422 422 uint64_t *output_ptr); 423 + 424 + int psp_load_fw_list(struct psp_context *psp, 425 + struct amdgpu_firmware_info **ucode_list, int ucode_count); 423 426 #endif