Hi Lucas,
I think I found an issue in etnaviv kernel driver regarding VIV_FE_DRAW_2D_HEADER_DATA_COUNT
In your old test https://github.com/etnaviv/etna_viv/blob/master/attic/test2d/bitblt2d_from_stream.c you append streamed data at the end of draw command buffer, but driver gives an error :
etnaviv_cmd_validate_one: op 21 not permitted at offset 50
After looking closer, I think that FE_OPCODE_DRAW_2D check in etnaviv_cmd_parser.c#etnaviv_cmd_validate_one should take account of these extra data :
case FE_OPCODE_DRAW_2D:
n = EXTRACT(cmd, VIV_FE_DRAW_2D_HEADER_COUNT) * 2 + EXTRACT(cmd, VIV_FE_DRAW_2D_HEADER_DATA_COUNT);
if (n == 0)
n = 256;
len = 2 + n;
break;
n = EXTRACT(cmd, VIV_FE_DRAW_2D_HEADER_COUNT) * 2 + EXTRACT(cmd, VIV_FE_DRAW_2D_HEADER_DATA_COUNT);
if (n == 0)
n = 256;
len = 2 + n;
break;
Regards
--
Julien Boulnois
_______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel