Mesa (master): nv50,nvc0: fix multisample format hack

Christoph Bumiller chrisbmr at kemper.freedesktop.org
Tue Aug 30 15:07:01 PDT 2011


Module: Mesa
Branch: master
Commit: 66e8d223b61dc034fb941e7d704a85ee44d7bbcc
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=66e8d223b61dc034fb941e7d704a85ee44d7bbcc

Author: Christoph Bumiller <e0425955 at student.tuwien.ac.at>
Date:   Tue Aug 30 23:44:27 2011 +0200

nv50,nvc0: fix multisample format hack

Advertising different format support based on sample count was a
bad idea, it made resolve to window work, but resolve to anything
else would fail.

See 9f4998639c3c47f0b7ee3e2a29b7f3609d3f7796.

---

 src/gallium/drivers/nv50/nv50_screen.c |    2 +-
 src/gallium/drivers/nvc0/nvc0_screen.c |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/gallium/drivers/nv50/nv50_screen.c b/src/gallium/drivers/nv50/nv50_screen.c
index b1d0b1c..235cd82 100644
--- a/src/gallium/drivers/nv50/nv50_screen.c
+++ b/src/gallium/drivers/nv50/nv50_screen.c
@@ -59,7 +59,7 @@ nv50_screen_is_format_supported(struct pipe_screen *pscreen,
    case PIPE_FORMAT_R8G8B8A8_UNORM:
    case PIPE_FORMAT_R8G8B8X8_UNORM:
       /* HACK: GL requires equal formats for MS resolve and window is BGRA */
-      if (sample_count > 1)
+      if (bindings & PIPE_BIND_RENDER_TARGET)
          return FALSE;
    default:
       break;
diff --git a/src/gallium/drivers/nvc0/nvc0_screen.c b/src/gallium/drivers/nvc0/nvc0_screen.c
index 204887d..d3027de 100644
--- a/src/gallium/drivers/nvc0/nvc0_screen.c
+++ b/src/gallium/drivers/nvc0/nvc0_screen.c
@@ -50,7 +50,7 @@ nvc0_screen_is_format_supported(struct pipe_screen *pscreen,
    case PIPE_FORMAT_R8G8B8A8_UNORM:
    case PIPE_FORMAT_R8G8B8X8_UNORM:
       /* HACK: GL requires equal formats for MS resolve and window is BGRA */
-      if (sample_count > 1)
+      if (bindings & PIPE_BIND_RENDER_TARGET)
          return FALSE;
    default:
       break;



More information about the mesa-commit mailing list