libdrm/U_radeon-pad-CS-to-8-DW.patch
Stefan Dirsch cf6c462360 Accepting request 199427 from home:sumski:branches:X11:XOrg
Added U_radeon-pad-CS-to-8-DW.patch from upstream -- aligns the IB to 8 DWs. r6xx also require at least 4 DW alignment to avoid a hw bug.

OBS-URL: https://build.opensuse.org/request/show/199427
OBS-URL: https://build.opensuse.org/package/show/X11:XOrg/libdrm?expand=0&rev=145
2013-09-18 07:39:29 +00:00

32 lines
853 B
Diff

From 58d008883165ba35c83041fa9ed84937163d5f76 Mon Sep 17 00:00:00 2001
From: Alex Deucher <alexander.deucher@amd.com>
Date: Fri, 6 Sep 2013 15:58:56 -0400
Subject: [PATCH 1/1] radeon: pad CS to 8 DW
Aligns the IB to 8 DWs. The aligns the IB to the
CP fetch size. r6xx also require at least 4 DW
alignment to avoid a hw bug.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
---
radeon/radeon_cs_gem.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/radeon/radeon_cs_gem.c b/radeon/radeon_cs_gem.c
index b963140..b87c6b1 100644
--- a/radeon/radeon_cs_gem.c
+++ b/radeon/radeon_cs_gem.c
@@ -425,6 +425,9 @@ static int cs_gem_emit(struct radeon_cs_int *cs)
unsigned i;
int r;
+ while (cs->cdw & 7)
+ radeon_cs_write_dword((struct radeon_cs *)cs, 0x80000000);
+
#if CS_BOF_DUMP
cs_gem_dump_bof(cs);
#endif
--
1.8.4