[Mesa-dev] [PATCH] nvc0: fix blitting red to srgb8_alpha

Ilia Mirkin imirkin at alum.mit.edu
Tue Oct 9 14:07:37 UTC 2018


What other single component formats are there that aren't covered by the
earlier ifs?

On Tue, Oct 9, 2018, 07:49 Karol Herbst <kherbst at redhat.com> wrote:

> just asking, because your commit message more or less hinted towards
> that being about r -> srgb conversions, but it makes sense that any
> single component blits wouldn't work.
>
> Reviewed-by: Karol Herbst <kherbst at redhat.com>
>
> On Tue, Oct 9, 2018 at 1:03 PM Ilia Mirkin <imirkin at alum.mit.edu> wrote:
> >
> > Ones that blit to srgb, yes. Couldn't get those to work with the 2d
> engine.
> >
> > On Tue, Oct 9, 2018, 04:46 Karol Herbst <kherbst at redhat.com> wrote:
> >>
> >> but this movs all single color blits to the 3d blitter, right?
> >> On Sun, Oct 7, 2018 at 11:50 PM Ilia Mirkin <imirkin at alum.mit.edu>
> wrote:
> >> >
> >> > For some reason the 2d engine can't handle this. Red formats get
> special
> >> > treatment there, so perhaps related.
> >> >
> >> > Fixes dEQP-GLES3 tests of the form:
> >> >
> >> >
>  dEQP-GLES3.functional.fbo.blit.conversion.r{8,16f,32f}_to_srgb8_alpha8
> >> >
> >> > Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
> >> > Cc: mesa-stable at lists.freedesktop.org
> >> > ---
> >> >  src/gallium/drivers/nouveau/nvc0/nvc0_surface.c | 4 ++++
> >> >  1 file changed, 4 insertions(+)
> >> >
> >> > diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_surface.c
> b/src/gallium/drivers/nouveau/nvc0/nvc0_surface.c
> >> > index 120f9fe6ab9..03881c62785 100644
> >> > --- a/src/gallium/drivers/nouveau/nvc0/nvc0_surface.c
> >> > +++ b/src/gallium/drivers/nouveau/nvc0/nvc0_surface.c
> >> > @@ -1617,6 +1617,10 @@ nvc0_blit(struct pipe_context *pipe, const
> struct pipe_blit_info *info)
> >> >              else
> >> >              if (util_format_is_alpha(info->src.format))
> >> >                 eng3d = info->src.format != PIPE_FORMAT_A8_UNORM;
> >> > +            else
> >> > +            if (util_format_is_srgb(info->dst.format) &&
> >> > +                util_format_get_nr_components(info->src.format) == 1)
> >> > +               eng3d = true;
> >> >              else
> >> >                 eng3d = !nv50_2d_format_supported(info->src.format);
> >> >           }
> >> > --
> >> > 2.16.4
> >> >
> >> > _______________________________________________
> >> > mesa-dev mailing list
> >> > mesa-dev at lists.freedesktop.org
> >> > https://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20181009/077c4d77/attachment-0001.html>


More information about the mesa-dev mailing list