nv50: disable stream output before reconfiguring it
authorChristoph Bumiller <e0425955@student.tuwien.ac.at>
Thu, 14 Jun 2012 21:30:49 +0000 (23:30 +0200)
committerChristoph Bumiller <e0425955@student.tuwien.ac.at>
Thu, 14 Jun 2012 21:30:49 +0000 (23:30 +0200)
If we don't, the GPU will just throw an ILLEGAL_OPERATION error.

src/gallium/drivers/nv50/nv50_shader_state.c

index df6764b216f09fbd5faaad167a7c349df0803c2d..1ddcd3c67e79c3392c1968c39bae3686e75ffbf0 100644 (file)
@@ -552,9 +552,9 @@ nv50_stream_output_validate(struct nv50_context *nv50)
 
    so = nv50->gmtyprog ? nv50->gmtyprog->so : nv50->vertprog->so;
 
+   BEGIN_NV04(push, NV50_3D(STRMOUT_ENABLE), 1);
+   PUSH_DATA (push, 0);
    if (!so || !nv50->num_so_targets) {
-      BEGIN_NV04(push, NV50_3D(STRMOUT_ENABLE), 1);
-      PUSH_DATA (push, 0);
       if (nv50->screen->base.class_3d < NVA0_3D_CLASS) {
          BEGIN_NV04(push, NV50_3D(STRMOUT_PRIMITIVE_LIMIT), 1);
          PUSH_DATA (push, 0);