[Mesa-dev] [PATCH 09/10] r600g: Return NO_MIXED_... to VARYINGS_PACKING_CONSTRAINTS query

Vincent Lejeune vljn at ovi.com
Thu Feb 23 12:12:30 PST 2012


---
 src/gallium/drivers/r600/r600_pipe.c |   13 +++++++++++++
 1 files changed, 13 insertions(+), 0 deletions(-)

diff --git a/src/gallium/drivers/r600/r600_pipe.c b/src/gallium/drivers/r600/r600_pipe.c
index 3d35ed2..9ccb318 100644
--- a/src/gallium/drivers/r600/r600_pipe.c
+++ b/src/gallium/drivers/r600/r600_pipe.c
@@ -49,6 +49,17 @@
 #include "r600_pipe.h"
 #include "r600_hw_context_priv.h"
 
+#ifndef MTYPES_H
+// Where to put this ?
+enum packing_constraint
+{
+   NONE, /** no limitation (scalar architecture : swrast, nouveau) */
+   SMOOTH_NOPERSPECTIVE_MIXED, /** Smooth and noperspective varying can be mixed but not with flat (i965) */
+   NO_MIXED_INTERPOLATION, /** Dont mix different interpolation (r300 and r600) */
+   AVOID_PACKING, /** Disable packing */
+};
+#endif
+
 /*
  * pipe_context
  */
@@ -527,6 +538,8 @@ static int r600_get_shader_param(struct pipe_screen* pscreen, unsigned shader, e
 		return 16;
 	case PIPE_SHADER_CAP_OUTPUT_READ:
 		return 1;
+	case PIPE_SHADER_CAP_VARYINGS_PACKING_CONSTRAINTS:
+		return NO_MIXED_INTERPOLATION;
 	}
 	return 0;
 }
-- 
1.7.7



More information about the mesa-dev mailing list