On 2020-09-25 4:09 p.m., Alex Deucher wrote: > From: Huang Rui <ray.huang@xxxxxxx> > > The interrupts are not stable while uses guest physical address (GPA) > for interrupt packet write space even on direct loading case. > > Signed-off-by: Huang Rui <ray.huang@xxxxxxx> > Acked-by: Alex Deucher <alexander.deucher@xxxxxxx> > Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx> > --- > drivers/gpu/drm/amd/amdgpu/navi10_ih.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/amd/amdgpu/navi10_ih.c b/drivers/gpu/drm/amd/amdgpu/navi10_ih.c > index ce4a974ab777..b66414998c90 100644 > --- a/drivers/gpu/drm/amd/amdgpu/navi10_ih.c > +++ b/drivers/gpu/drm/amd/amdgpu/navi10_ih.c > @@ -661,7 +661,10 @@ static int navi10_ih_sw_init(void *handle) > /* use gpu virtual address for ih ring > * until ih_checken is programmed to allow > * use bus address for ih ring by psp bl */ > - use_bus_addr = > + if (adev->flags & AMD_IS_APU) > + use_bus_addr = false; > + else > + use_bus_addr = > (adev->firmware.load_type == AMDGPU_FW_LOAD_PSP) ? false : true; Previously to this patch, as a one-liner, it made sense to use a ternary expression, but adding the if-conditional, perhaps a more readable way would be: if (adev->flags & AMD_IS_APU || adev->firmware.load_type == AMDGPU_FW_LOAD_PSP) use_bus_addr = false; else use_bus_addr = true; Regards, Luben > r = amdgpu_ih_ring_init(adev, &adev->irq.ih, 256 * 1024, use_bus_addr); > if (r) > _______________________________________________ amd-gfx mailing list amd-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/amd-gfx