File tree Expand file tree Collapse file tree 1 file changed +10
-3
lines changed
drivers/gpu/drm/amd/amdgpu Expand file tree Collapse file tree 1 file changed +10
-3
lines changed Original file line number Diff line number Diff line change @@ -59,6 +59,7 @@ MODULE_FIRMWARE("amdgpu/tonga_mc.bin");
59
59
MODULE_FIRMWARE ("amdgpu/polaris11_mc.bin" );
60
60
MODULE_FIRMWARE ("amdgpu/polaris10_mc.bin" );
61
61
MODULE_FIRMWARE ("amdgpu/polaris12_mc.bin" );
62
+ MODULE_FIRMWARE ("amdgpu/polaris12_32_mc.bin" );
62
63
MODULE_FIRMWARE ("amdgpu/polaris11_k_mc.bin" );
63
64
MODULE_FIRMWARE ("amdgpu/polaris10_k_mc.bin" );
64
65
MODULE_FIRMWARE ("amdgpu/polaris12_k_mc.bin" );
@@ -243,10 +244,16 @@ static int gmc_v8_0_init_microcode(struct amdgpu_device *adev)
243
244
chip_name = "polaris10" ;
244
245
break ;
245
246
case CHIP_POLARIS12 :
246
- if (ASICID_IS_P23 (adev -> pdev -> device , adev -> pdev -> revision ))
247
+ if (ASICID_IS_P23 (adev -> pdev -> device , adev -> pdev -> revision )) {
247
248
chip_name = "polaris12_k" ;
248
- else
249
- chip_name = "polaris12" ;
249
+ } else {
250
+ WREG32 (mmMC_SEQ_IO_DEBUG_INDEX , ixMC_IO_DEBUG_UP_159 );
251
+ /* Polaris12 32bit ASIC needs a special MC firmware */
252
+ if (RREG32 (mmMC_SEQ_IO_DEBUG_DATA ) == 0x05b4dc40 )
253
+ chip_name = "polaris12_32" ;
254
+ else
255
+ chip_name = "polaris12" ;
256
+ }
250
257
break ;
251
258
case CHIP_FIJI :
252
259
case CHIP_CARRIZO :
You can’t perform that action at this time.
0 commit comments