[PATCH 09/45] drm/amdgpu: use gpu virtual address for interrupt packet write space for vangogh
Luben Tuikov
luben.tuikov at amd.com
Mon Sep 28 20:57:04 UTC 2020
On 2020-09-25 4:09 p.m., Alex Deucher wrote:
> From: Huang Rui <ray.huang at amd.com>
>
> 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 at amd.com>
> Acked-by: Alex Deucher <alexander.deucher at amd.com>
> Signed-off-by: Alex Deucher <alexander.deucher at amd.com>
> ---
> 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)
>
More information about the amd-gfx
mailing list