lkml.org 
[lkml]   [2018]   [Jun]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH] drm/sun4i: Implement zpos for DE2
Date
Dne sreda, 27. junij 2018 ob 20:25:00 CEST je Maxime Ripard napisal(a):
> Hi!
>
> On Wed, Jun 27, 2018 at 06:45:14PM +0200, Jernej Skrabec wrote:
> > Initial implementation of DE2 planes only supported fixed zpos.
> >
> > Expand implementation with configurable zpos property.
> >
> > Signed-off-by: Jernej Skrabec <jernej.skrabec@siol.net>
>
> Thanks for that work. I guess you should expand a bit on the exact
> setup you're doing here.

OK.

>
> Are the pipes working the same way on the DE2 than on DE1, ie does the
> pipe blending applies before the alpha blending, and therefore you
> need to make sure that there's not two planes with alpha going to the
> same pipe?

I'm not familiar with DE1 and I'm not sure what the problem is.

However, there is an issue in DE2 when alpha blending multiple planes if
bottom-most plane doesn't cover all screen. In this case alpha blending
produce weird result on screen. Fortunately, there is elegant solution. Black
opaque fill color is enabled for pipe 0 (always at the bottom), which covers
any "undefined region" and that makes alpha blending happy again.

Alternatively, blending modes between planes could be tweaked or disabled, but
I found aforementioned solution is much simpler and you set it only once.

>
> Also, you seem to use the pipe and channels indifferently now, why is
> that?

Why do you think so?

Channel always represents HW unit, for example, on H3, mixer0, channel 0
always represents VI plane, channel 1, represents first UI, plane, channel 2,
second UI plane, etc.

Pipe 0 always represent channel at the bottom, pipe 1 channel on top pipe 0,
etc. Initial, fixed zpos implementation really had 1:1 mapping, but now it can
be different.

Register SUN8I_MIXER_BLEND_ROUTE holds pipe <-> channel mappings.
Bits 3:0 represents pipe 0 and holds channel number. Bits 7:4 represents pipe
1, etc.

Additionaly, there can be holes, for example, pipe 3 and pipe 0 are enabled
and pipe 1 and 2 are disabled.

I hope I answered your questions.

Best regards,
Jernej



\
 
 \ /
  Last update: 2018-06-27 23:00    [W:0.132 / U:1.364 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site