gallium: add patch_vertices to draw info

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
gallium: add set_tess_state to configure default tessellation parameters

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
nvc0: preliminary tess support

Uncomment the various functionality that was already there and add in
obvious missing bits that parallel vp/gp/fp functionality.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
nvc0: TESSCOORD comes in as a sysval, not an input

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
nv50/ir: mark varyings as per-patch based on semantic name

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
nv50/ir: populate info structure based on new tess properties

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
nv50/ir: set perPatch flag on load/stores to per-patch varyings

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
nvc0: add handling for set_tess_state callback

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
nv50/ir: add support for reading outputs in tess control shaders

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
mesa/st: add initial support for tessellation programs

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
mesa/st: add conversion for tess shaders

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
mesa/st: handle constbufs/ubos for tessellation shaders
mesa/st: add texture updates for tessellation programs
mesa/st: query things for tess
make in/outs 2d for tess, let max vertices be specified for tcs
mesa/st: lower tess level
tgsi: allow scanning tess shaders
mesa/st: copy over more fields
mesa/st: add inner/outer tes inputs
mesa/st: add tcs/tes properties for real