diff options
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3192-drm-amdgpu-wire-up-emit_wreg-for-SI-DMA.patch')
-rw-r--r-- | meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3192-drm-amdgpu-wire-up-emit_wreg-for-SI-DMA.patch | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3192-drm-amdgpu-wire-up-emit_wreg-for-SI-DMA.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3192-drm-amdgpu-wire-up-emit_wreg-for-SI-DMA.patch new file mode 100644 index 00000000..4170bbed --- /dev/null +++ b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3192-drm-amdgpu-wire-up-emit_wreg-for-SI-DMA.patch @@ -0,0 +1,46 @@ +From 4ed753a67c49bfbe88b2ba7cc20587fd0a78f4b6 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Christian=20K=C3=B6nig?= <christian.koenig@amd.com> +Date: Fri, 12 Jan 2018 16:33:03 +0100 +Subject: [PATCH 3192/4131] drm/amdgpu: wire up emit_wreg for SI DMA +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Needed for vm_flush unification. + +Signed-off-by: Christian König <christian.koenig@amd.com> +Acked-by: Chunming Zhou <david1.zhou@amd.com> +--- + drivers/gpu/drm/amd/amdgpu/si_dma.c | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/drivers/gpu/drm/amd/amdgpu/si_dma.c b/drivers/gpu/drm/amd/amdgpu/si_dma.c +index 697475a..c70e1d3 100644 +--- a/drivers/gpu/drm/amd/amdgpu/si_dma.c ++++ b/drivers/gpu/drm/amd/amdgpu/si_dma.c +@@ -497,6 +497,14 @@ static void si_dma_ring_emit_vm_flush(struct amdgpu_ring *ring, + amdgpu_ring_write(ring, (0 << 28) | 0x20); /* func(always) | poll interval */ + } + ++static void si_dma_ring_emit_wreg(struct amdgpu_ring *ring, ++ uint32_t reg, uint32_t val) ++{ ++ amdgpu_ring_write(ring, DMA_PACKET(DMA_PACKET_SRBM_WRITE, 0, 0, 0, 0)); ++ amdgpu_ring_write(ring, (0xf << 16) | reg); ++ amdgpu_ring_write(ring, val); ++} ++ + static int si_dma_early_init(void *handle) + { + struct amdgpu_device *adev = (struct amdgpu_device *)handle; +@@ -789,6 +797,7 @@ static const struct amdgpu_ring_funcs si_dma_ring_funcs = { + .test_ib = si_dma_ring_test_ib, + .insert_nop = amdgpu_ring_insert_nop, + .pad_ib = si_dma_ring_pad_ib, ++ .emit_wreg = si_dma_ring_emit_wreg, + }; + + static void si_dma_set_ring_funcs(struct amdgpu_device *adev) +-- +2.7.4 + |