diff options
author | Rex Zhu <Rex.Zhu@amd.com> | 2016-11-24 00:33:47 -0500 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2016-11-28 18:22:37 -0500 |
commit | b64268d8a3f623c9b88676ad3dfacc95cfcfc62f (patch) | |
tree | b76b3ad1a73e5b609ce55cb872e64c76781bf9f6 /drivers | |
parent | 9704668e4b7105ede483f38da7f29d71b5bc0165 (diff) |
drm/amd/powerplay: initialize the soft_regs offset in struct smu7_hwmgr
This could lead to mclk dpm problems on some boards.
Signed-off-by: Rex Zhu <Rex.Zhu@amd.com>
Ack-by: Tom St Denis <tom.stdenis@amd.com>
Reviewed-by: Huang Rui <ray.huang@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/gpu/drm/amd/powerplay/smumgr/polaris10_smc.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/gpu/drm/amd/powerplay/smumgr/polaris10_smc.c b/drivers/gpu/drm/amd/powerplay/smumgr/polaris10_smc.c index 4ccc0b72324d..71bb2f8dc157 100644 --- a/drivers/gpu/drm/amd/powerplay/smumgr/polaris10_smc.c +++ b/drivers/gpu/drm/amd/powerplay/smumgr/polaris10_smc.c | |||
@@ -2214,6 +2214,7 @@ uint32_t polaris10_get_mac_definition(uint32_t value) | |||
2214 | int polaris10_process_firmware_header(struct pp_hwmgr *hwmgr) | 2214 | int polaris10_process_firmware_header(struct pp_hwmgr *hwmgr) |
2215 | { | 2215 | { |
2216 | struct polaris10_smumgr *smu_data = (struct polaris10_smumgr *)(hwmgr->smumgr->backend); | 2216 | struct polaris10_smumgr *smu_data = (struct polaris10_smumgr *)(hwmgr->smumgr->backend); |
2217 | struct smu7_hwmgr *data = (struct smu7_hwmgr *)(hwmgr->backend); | ||
2217 | uint32_t tmp; | 2218 | uint32_t tmp; |
2218 | int result; | 2219 | int result; |
2219 | bool error = false; | 2220 | bool error = false; |
@@ -2233,8 +2234,10 @@ int polaris10_process_firmware_header(struct pp_hwmgr *hwmgr) | |||
2233 | offsetof(SMU74_Firmware_Header, SoftRegisters), | 2234 | offsetof(SMU74_Firmware_Header, SoftRegisters), |
2234 | &tmp, SMC_RAM_END); | 2235 | &tmp, SMC_RAM_END); |
2235 | 2236 | ||
2236 | if (!result) | 2237 | if (!result) { |
2238 | data->soft_regs_start = tmp; | ||
2237 | smu_data->smu7_data.soft_regs_start = tmp; | 2239 | smu_data->smu7_data.soft_regs_start = tmp; |
2240 | } | ||
2238 | 2241 | ||
2239 | error |= (0 != result); | 2242 | error |= (0 != result); |
2240 | 2243 | ||