Am 13.09.2013 01:09, schrieb Ilia Mirkin: > Hello, > > I sent a patch earlier to add a new PIPE_CAP about disallowing mixed > fb cbuf/zsbuf sizes, which would be used to disable ARB_fbo. I think > people were generally in favor, but I didn't see any actual > Reviewed-By's, I'll resend it with updated nouveau directories (I > guess everything got moved for some reason) and help text that more > accurately describes the situation. > > However, as it turns out, that doesn't go quite far enough. The bpp of > cbuf/zsbuf has to match up as well your hardware sucks :-).
> , which apparently can happen even > without ARB_fbo. Currently st_validate_framebuffer has special logic > to deal with PIPE_CAP_MIXED_COLORBUFFER_FORMATS and return > FRAMEBUFFER_UNSUPPORTED as necessary. I was thinking this could be > handled by adding a pipe_screen->validate_fb() hook, and folding the > MIXED_COLORBUFFER_FORMATS stuff into it (as well as implementing the > nv30-specific logic as well). I could alternatively add another > PIPE_CAP, but I think it's getting to be too much. > > Thoughts? Alternate proposals? > > Thanks for any feedback, > Theoretically this sounds like the right approach, since currently with the PIPE_CAP_MIXED_COLORBUFFER_FORMATS this just enforces that color formats are all the same - but this may not really be what the hw limitation is (even wrt just color buffers), I could imagine some hw only not supporting some but not all possible combinations. The framebuffer_unsupported stuff is all entirely implementation dependent after all (though I guess in the EXT_fbo version the only possibility to hit that is indeed with non-matching color/zs combinations since different color formats are explicitly prohibited). I'm not sure though it's worth having this in the pipe interface since it only seems to affect some fairly arcane hw, but I could live with it. Roland _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev