9859413bf4
On Gen11 and above, the 3DPRIMITIVE command takes an optional additional three DWORDs of data as "extended parameters". These extended parameters only exist in the packet if "Extended Parameters Present" is set. Because our packing code doesn't handle variable-length commands well, this commit adds a second version of the command which isn't real but is just a copy of 3DPRIMITIVE with the additional dwords where the "Extended Parameters Present" defaults to true and "DWord Length" is adjusted by 3 as needed. The 3DPRIMITIVE command is then the gen4-9 version which still works fine but doesn't have the new parameters. Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20295>