[OE-core] [PATCH v2] libsdl2: Fix left rotated display for RaspPi/VC4/GLES2

richard.purdie at linuxfoundation.org richard.purdie at linuxfoundation.org
Thu Aug 30 09:44:12 UTC 2018


On Wed, 2018-08-29 at 19:22 +0200, Andreas Müller wrote:
> On Wed, Aug 29, 2018 at 4:16 PM, Richard Purdie
> <richard.purdie at linuxfoundation.org> wrote:
> > On Wed, 2018-08-29 at 00:19 +0200, Andreas Müller wrote:
> > > The patch should increase performance for libsdl2 on GLES2 too.
> > > 
> > > Signed-off-by: Andreas Müller <schnitzeltony at gmail.com>
> > > ---
> > >  ...01-GLES2-Get-sin-cos-out-of-vertex-shader.patch | 141
> > > +++++++++++++++++++++
> > >  meta/recipes-graphics/libsdl2/libsdl2_2.0.8.bb     |   1 +
> > >  2 files changed, 142 insertions(+)
> > >  create mode 100644 meta/recipes-graphics/libsdl2/libsdl2/0001-
> > > GLES2-
> > > Get-sin-cos-out-of-vertex-shader.patch
> > > 
> > > diff --git a/meta/recipes-graphics/libsdl2/libsdl2/0001-GLES2-
> > > Get-
> > > sin-cos-out-of-vertex-shader.patch b/meta/recipes-
> > > graphics/libsdl2/libsdl2/0001-GLES2-Get-sin-cos-out-of-vertex-
> > > shader.patch
> > > new file mode 100644
> > > index 0000000000..621b7ea1a0
> > > --- /dev/null
> > > +++ b/meta/recipes-graphics/libsdl2/libsdl2/0001-GLES2-Get-sin-
> > > cos-
> > > out-of-vertex-shader.patch
> > > @@ -0,0 +1,141 @@
> > > +From c215ba1d52a3d4ef03af3ab1a5baa1863f812aed Mon Sep 17
> > > 00:00:00
> > > 2001
> > > +From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony at gmail.com
> > > >
> > > +Date: Fri, 24 Aug 2018 23:10:25 +0200
> > > +Subject: [PATCH] GLES2: Get sin/cos out of vertex shader
> > > +MIME-Version: 1.0
> > > +Content-Type: text/plain; charset=UTF-8
> > > +Content-Transfer-Encoding: 8bit
> > > +
> > > +The only place angle is activated and causes effect is
> > > RenderCopyEx.
> > > All other
> > > +methods which use vertex shader, leave angle disabled and cause
> > > useless sin/cos
> > > +calculation in shader.
> > > +
> > > +To get around shader's interface is changed to a vector that
> > > contains results
> > > +of sin and cos. To behave properly when disabled, cos value is
> > > set
> > > with offset
> > > +-1.0 making 0.0 default when deactivated.
> > > +
> > > +As nice side effect it simplifies GLES2_UpdateVertexBuffer: All
> > > attributes are
> > > +vectors now.
> > > +
> > > +Additional background:
> > > +
> > > +* On RaspberryPi it gives a performace win for operations.
> > > Tested
> > > with
> > > +  [1] numbers go down for 5-10% (not easy to estimate due to
> > > huge
> > > variation).
> > > +* SDL_RenderCopyEx was tested with [2]
> > > +* It works around left rotated display caused by low accuracy
> > > sin
> > > implemetation
> > > +  in RaspberryPi/VC4 [3]
> > > +
> > > +Upstream-Status: Submitted [4]
> > 
> > If I'm reading the logs correctly, this was actually merged
> > upstream so
> > the status would become Accepted or Backport?
> > 
> > > +[1] https://github.com/schnitzeltony/sdl2box
> > > +[2] https://github.com/schnitzeltony/sdl2rendercopyex
> > > +[3] https://github.com/anholt/mesa/issues/110
> > > +[4] https://hg.libsdl.org/SDL/rev/e5a666405750
> > 
> > Cheers,
> > 
> > Richard
> 
> LOL: V1 I tried 'Applied [4]'
> 
> and received patch failure message with the following hint:
> 
> > Valid status     Pending, Accepted, Backport, Denied, Inappropriate
> 
> [reason], Submitted [where]
> 
> My favourite would have been
> 
> > Accepted[4]
> 
> to state out clearly that '[4]' is oe-specific and not part of the
> original patch. If I read the hint correctly that would have caused
> another patch failure. So I chose Submitted.
> 
> So Accepted without []?
> 
> Sorry to ask such kind of questions...

I'd have thought Accepted should have a []. A quick grep shows other
patches which have that in the tree so I suspect that help text is
misleading...

Cheers,

Richard



More information about the Openembedded-core mailing list