mirror of https://gitee.com/openkylin/linux.git
drm/amdgpu: fix no interrupt issue for renoir emu
In renoir's ih model, there's a change in mmIH_CHICKEN register, that limits IH to use physical address directly. Those chicken bits need to be programmed first. Acked-by: Huang Rui <ray.huang@amd.com> Signed-off-by: Aaron Liu <aaron.liu@amd.com> Reviewed-by: Huang Rui <ray.huang@amd.com> Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com> Acked-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
61bdb39c91
commit
0126abd4d1
|
@ -247,7 +247,7 @@ static int vega10_ih_irq_init(struct amdgpu_device *adev)
|
||||||
WREG32_SOC15(OSSSYS, 0, mmIH_RB_CNTL, ih_rb_cntl);
|
WREG32_SOC15(OSSSYS, 0, mmIH_RB_CNTL, ih_rb_cntl);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (adev->asic_type == CHIP_ARCTURUS &&
|
if ((adev->asic_type == CHIP_ARCTURUS || adev->asic_type == CHIP_RENOIR) &&
|
||||||
adev->firmware.load_type == AMDGPU_FW_LOAD_DIRECT) {
|
adev->firmware.load_type == AMDGPU_FW_LOAD_DIRECT) {
|
||||||
if (adev->irq.ih.use_bus_addr) {
|
if (adev->irq.ih.use_bus_addr) {
|
||||||
ih_chicken = RREG32_SOC15(OSSSYS, 0, mmIH_CHICKEN);
|
ih_chicken = RREG32_SOC15(OSSSYS, 0, mmIH_CHICKEN);
|
||||||
|
|
Loading…
Reference in New Issue