nv50,nvc0: add 11f_11f_10f vertex support

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
diff --git a/docs/GL3.txt b/docs/GL3.txt
index 432a056..9758dcc 100644
--- a/docs/GL3.txt
+++ b/docs/GL3.txt
@@ -177,7 +177,7 @@
   GL_ARB_query_buffer_object                           not started
   GL_ARB_texture_mirror_clamp_to_edge                  DONE (i965, nv30, nv50, nvc0, r300, r600, radeonsi, swrast)
   GL_ARB_texture_stencil8                              not started
-  GL_ARB_vertex_type_10f_11f_11f_rev                   DONE (i965, r600)
+  GL_ARB_vertex_type_10f_11f_11f_rev                   DONE (i965, nv50, nvc0, r600)
 
 
 More info about these features and the work involved can be found at
diff --git a/src/gallium/drivers/nouveau/nv50/nv50_3d.xml.h b/src/gallium/drivers/nouveau/nv50/nv50_3d.xml.h
index 9dff8b2..cc3a382 100644
--- a/src/gallium/drivers/nouveau/nv50/nv50_3d.xml.h
+++ b/src/gallium/drivers/nouveau/nv50/nv50_3d.xml.h
@@ -1962,6 +1962,7 @@
 #define NV50_3D_VERTEX_ARRAY_ATTRIB_FORMAT_16			0x00d80000
 #define NV50_3D_VERTEX_ARRAY_ATTRIB_FORMAT_8			0x00e80000
 #define NV50_3D_VERTEX_ARRAY_ATTRIB_FORMAT_10_10_10_2		0x01800000
+#define NV50_3D_VERTEX_ARRAY_ATTRIB_FORMAT_11_11_10		0x01880000
 #define NV50_3D_VERTEX_ARRAY_ATTRIB_TYPE__MASK			0x7e000000
 #define NV50_3D_VERTEX_ARRAY_ATTRIB_TYPE__SHIFT			25
 #define NV50_3D_VERTEX_ARRAY_ATTRIB_TYPE_FLOAT			0x7e000000
diff --git a/src/gallium/drivers/nouveau/nv50/nv50_formats.c b/src/gallium/drivers/nouveau/nv50/nv50_formats.c
index c7c5975..fa93ce8 100644
--- a/src/gallium/drivers/nouveau/nv50/nv50_formats.c
+++ b/src/gallium/drivers/nouveau/nv50/nv50_formats.c
@@ -204,7 +204,7 @@
    C4A(R10G10B10A2_UINT, RGB10_A2_UINT, C0, C1, C2, C3, UINT, 10_10_10_2, TRV, 0),
    C4A(B10G10R10A2_UINT, RGB10_A2_UINT, C2, C1, C0, C3, UINT, 10_10_10_2, TV, 0),
 
-   F3B(R11G11B10_FLOAT, R11G11B10_FLOAT, C0, C1, C2, xx, FLOAT, 11_11_10, IB),
+   F3A(R11G11B10_FLOAT, R11G11B10_FLOAT, C0, C1, C2, xx, FLOAT, 11_11_10, IBV),
 
    F3B(L8_UNORM, R8_UNORM, C0, C0, C0, xx, UNORM, 8, TB),
    F3B(L8_SRGB, R8_UNORM, C0, C0, C0, xx, UNORM, 8, TB),
diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_3d.xml.h b/src/gallium/drivers/nouveau/nvc0/nvc0_3d.xml.h
index d3f719d..9e3c56b 100644
--- a/src/gallium/drivers/nouveau/nvc0/nvc0_3d.xml.h
+++ b/src/gallium/drivers/nouveau/nvc0/nvc0_3d.xml.h
@@ -467,6 +467,7 @@
 #define NVC0_3D_VERTEX_ATTRIB_FORMAT_SIZE_16			0x03600000
 #define NVC0_3D_VERTEX_ATTRIB_FORMAT_SIZE_8			0x03a00000
 #define NVC0_3D_VERTEX_ATTRIB_FORMAT_SIZE_10_10_10_2		0x06000000
+#define NVC0_3D_VERTEX_ATTRIB_FORMAT_SIZE_11_11_10		0x06200000
 #define NVC0_3D_VERTEX_ATTRIB_FORMAT_TYPE__MASK			0x38000000
 #define NVC0_3D_VERTEX_ATTRIB_FORMAT_TYPE__SHIFT		27
 #define NVC0_3D_VERTEX_ATTRIB_FORMAT_TYPE_SNORM			0x08000000