diff mbox

[RFC,091/111] staging: etnaviv: properly flush all TLBs on MMUv1

Message ID 1427988653-754-92-git-send-email-l.stach@pengutronix.de (mailing list archive)
State New, archived
Headers show

Commit Message

Lucas Stach April 2, 2015, 3:30 p.m. UTC
Avoids memory corruptions seen due to stale TLB entries.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
---
 drivers/staging/etnaviv/etnaviv_buffer.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
diff mbox

Patch

diff --git a/drivers/staging/etnaviv/etnaviv_buffer.c b/drivers/staging/etnaviv/etnaviv_buffer.c
index 391b2afc7f59..05e0da28cc97 100644
--- a/drivers/staging/etnaviv/etnaviv_buffer.c
+++ b/drivers/staging/etnaviv/etnaviv_buffer.c
@@ -256,7 +256,10 @@  void etnaviv_buffer_queue(struct etnaviv_gpu *gpu, unsigned int event,
 		/* Add the MMU flush */
 		CMD_LOAD_STATE(buffer, VIVS_GL_FLUSH_MMU,
 			       VIVS_GL_FLUSH_MMU_FLUSH_FEMMU |
-			       VIVS_GL_FLUSH_MMU_FLUSH_PEMMU);
+			       VIVS_GL_FLUSH_MMU_FLUSH_UNK1 |
+			       VIVS_GL_FLUSH_MMU_FLUSH_UNK2 |
+			       VIVS_GL_FLUSH_MMU_FLUSH_PEMMU |
+			       VIVS_GL_FLUSH_MMU_FLUSH_UNK4);
 
 		/* And the link to the first buffer */
 		CMD_LINK(buffer, link_size, link_target);