[PATCH] drm/amdgpu: fix vm pte pde flags to 640bit for sdma of CI/SI

Christian König deathsimple at vodafone.de
Thu Mar 30 08:37:04 UTC 2017


Am 30.03.2017 um 04:11 schrieb Junwei Zhang:
> Missing the flags fixing for CI/SI
>
> Signed-off-by: Junwei Zhang <Jerry.Zhang at amd.com>

Reviewed-by: Christian König <christian.koenig at amd.com>

> ---
>   drivers/gpu/drm/amd/amdgpu/cik_sdma.c | 4 ++--
>   drivers/gpu/drm/amd/amdgpu/si_dma.c   | 4 ++--
>   2 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/cik_sdma.c b/drivers/gpu/drm/amd/amdgpu/cik_sdma.c
> index 6fce52f..5f90a81 100644
> --- a/drivers/gpu/drm/amd/amdgpu/cik_sdma.c
> +++ b/drivers/gpu/drm/amd/amdgpu/cik_sdma.c
> @@ -755,8 +755,8 @@ static void cik_sdma_vm_set_pte_pde(struct amdgpu_ib *ib, uint64_t pe,
>   	ib->ptr[ib->length_dw++] = SDMA_PACKET(SDMA_OPCODE_GENERATE_PTE_PDE, 0, 0);
>   	ib->ptr[ib->length_dw++] = lower_32_bits(pe); /* dst addr */
>   	ib->ptr[ib->length_dw++] = upper_32_bits(pe);
> -	ib->ptr[ib->length_dw++] = flags; /* mask */
> -	ib->ptr[ib->length_dw++] = 0;
> +	ib->ptr[ib->length_dw++] = lower_32_bits(flags); /* mask */
> +	ib->ptr[ib->length_dw++] = upper_32_bits(flags);
>   	ib->ptr[ib->length_dw++] = lower_32_bits(addr); /* value */
>   	ib->ptr[ib->length_dw++] = upper_32_bits(addr);
>   	ib->ptr[ib->length_dw++] = incr; /* increment size */
> diff --git a/drivers/gpu/drm/amd/amdgpu/si_dma.c b/drivers/gpu/drm/amd/amdgpu/si_dma.c
> index 8715de2..c570e96 100644
> --- a/drivers/gpu/drm/amd/amdgpu/si_dma.c
> +++ b/drivers/gpu/drm/amd/amdgpu/si_dma.c
> @@ -417,8 +417,8 @@ static void si_dma_vm_set_pte_pde(struct amdgpu_ib *ib,
>   		ib->ptr[ib->length_dw++] = DMA_PTE_PDE_PACKET(ndw);
>   		ib->ptr[ib->length_dw++] = pe; /* dst addr */
>   		ib->ptr[ib->length_dw++] = upper_32_bits(pe) & 0xff;
> -		ib->ptr[ib->length_dw++] = flags; /* mask */
> -		ib->ptr[ib->length_dw++] = 0;
> +		ib->ptr[ib->length_dw++] = lower_32_bits(flags); /* mask */
> +		ib->ptr[ib->length_dw++] = upper_32_bits(flags);
>   		ib->ptr[ib->length_dw++] = value; /* value */
>   		ib->ptr[ib->length_dw++] = upper_32_bits(value);
>   		ib->ptr[ib->length_dw++] = incr; /* increment size */




More information about the amd-gfx mailing list