projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
e81f749
)
drm/amd/powerplay: fix request smc_sk firmware case
author
Huang Rui
<
[email protected]
>
Mon, 19 Dec 2016 07:15:35 +0000
(15:15 +0800)
committer
Alex Deucher
<
[email protected]
>
Fri, 27 Jan 2017 16:12:41 +0000
(11:12 -0500)
This patch fixes firmware request error on polaris protection mode.
Because we need load smc_sk instead of smc under security protection
mode.
Signed-off-by: Huang Rui <
[email protected]
>
Tested-by: Evan Quan <
[email protected]
>
Reviewed-by: Alex Deucher <
[email protected]
>
Signed-off-by: Alex Deucher <
[email protected]
>
drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
patch
|
blob
|
history
diff --git
a/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
b/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
index af65c24cefe39cd2796981787e38c17dc1f0b777..d0e87102e1b913e6f44bbf811f42832030acf9bb 100644
(file)
--- a/
drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
+++ b/
drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
@@
-713,6
+713,7
@@
static int amdgpu_cgs_rel_firmware(struct cgs_device *cgs_device, enum cgs_ucode
CGS_FUNC_ADEV;
if ((CGS_UCODE_ID_SMU == type) || (CGS_UCODE_ID_SMU_SK == type)) {
release_firmware(adev->pm.fw);
+ adev->pm.fw = NULL;
return 0;
}
/* cannot release other firmware because they are not created by cgs */
@@
-808,6
+809,9
@@
static int amdgpu_cgs_get_firmware_info(struct cgs_device *cgs_device,
const uint8_t *src;
const struct smc_firmware_header_v1_0 *hdr;
+ if (CGS_UCODE_ID_SMU_SK == type)
+ amdgpu_cgs_rel_firmware(cgs_device, CGS_UCODE_ID_SMU);
+
if (!adev->pm.fw) {
switch (adev->asic_type) {
case CHIP_TOPAZ: