The hardware interprets a value of 0 as the maximium number of rectangles
which is 256. Allow this in the command parser.

Signed-off-by: Lucas Stach <l.stach at pengutronix.de>
---
 drivers/staging/etnaviv/etnaviv_cmd_parser.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/staging/etnaviv/etnaviv_cmd_parser.c 
b/drivers/staging/etnaviv/etnaviv_cmd_parser.c
index 4cc6944e4a8f..61370d3ebf9d 100644
--- a/drivers/staging/etnaviv/etnaviv_cmd_parser.c
+++ b/drivers/staging/etnaviv/etnaviv_cmd_parser.c
@@ -68,6 +68,8 @@ bool etnaviv_cmd_validate_one(struct etnaviv_gpu *gpu,

                case FE_OPCODE_DRAW_2D:
                        n = EXTRACT(cmd, VIV_FE_DRAW_2D_HEADER_COUNT);
+                       if (n == 0)
+                               n = 256;
                        len = 2 + n * 2;
                        break;

-- 
2.1.4

Reply via email to