summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRob Clark <robclark@freedesktop.org>2013-12-07 08:47:10 -0500
committerRob Clark <robclark@freedesktop.org>2013-12-07 09:37:24 -0500
commita1d808638de026d07d16161b432df25afefdd959 (patch)
treeeb7a24bc6ef07d255ee6bc6d7af5c9e842ae588d
parentd36ae204d5080a8dd83acf63575660d365d51dad (diff)
freedreno/a3xx: add adreno 330 support
Signed-off-by: Rob Clark <robclark@freedesktop.org>
-rw-r--r--src/gallium/drivers/freedreno/a3xx/fd3_emit.c10
-rw-r--r--src/gallium/drivers/freedreno/freedreno_screen.c1
2 files changed, 7 insertions, 4 deletions
diff --git a/src/gallium/drivers/freedreno/a3xx/fd3_emit.c b/src/gallium/drivers/freedreno/a3xx/fd3_emit.c
index b1c0e74a2ee..a8b2df758e3 100644
--- a/src/gallium/drivers/freedreno/a3xx/fd3_emit.c
+++ b/src/gallium/drivers/freedreno/a3xx/fd3_emit.c
@@ -488,16 +488,18 @@ void
fd3_emit_restore(struct fd_context *ctx)
{
struct fd3_context *fd3_ctx = fd3_context(ctx);
struct fd_ringbuffer *ring = ctx->ring;
int i;
- OUT_PKT3(ring, CP_REG_RMW, 3);
- OUT_RING(ring, REG_A3XX_RBBM_CLOCK_CTL);
- OUT_RING(ring, 0xfffcffff);
- OUT_RING(ring, 0x00000000);
+ if (ctx->screen->gpu_id == 320) {
+ OUT_PKT3(ring, CP_REG_RMW, 3);
+ OUT_RING(ring, REG_A3XX_RBBM_CLOCK_CTL);
+ OUT_RING(ring, 0xfffcffff);
+ OUT_RING(ring, 0x00000000);
+ }
OUT_PKT3(ring, CP_INVALIDATE_STATE, 1);
OUT_RING(ring, 0x00007fff);
OUT_PKT0(ring, REG_A3XX_SP_VS_PVT_MEM_CTRL_REG, 3);
OUT_RING(ring, 0x08000001); /* SP_VS_PVT_MEM_CTRL_REG */
diff --git a/src/gallium/drivers/freedreno/freedreno_screen.c b/src/gallium/drivers/freedreno/freedreno_screen.c
index 4031f556a32..d07cc0b323e 100644
--- a/src/gallium/drivers/freedreno/freedreno_screen.c
+++ b/src/gallium/drivers/freedreno/freedreno_screen.c
@@ -426,12 +426,13 @@ fd_screen_create(struct fd_device *dev)
*/
switch (screen->gpu_id) {
case 220:
fd2_screen_init(pscreen);
break;
case 320:
+ case 330:
fd3_screen_init(pscreen);
break;
default:
debug_printf("unsupported GPU: a%03d\n", screen->gpu_id);
goto fail;
}