2015-05-06 Tobias Jakobi <tjakobi at math.uni-bielefeld.de>:

> Hello,
> 
> this is a rework of the layer blending setup in the Exynos DRM mixer. The 
> current setup is static and spread out through the mixer code. This rework 
> pushes all the configuration details into a layer_config array, which 
> specifies the priority of each layer.
> 
> Two arrays are currently found in the code, one for SoC versions with a video 
> processor (VP) and one for SoC versions without VP. The VP gives us one 
> additional layer, the video layer, which natively supports the NV12/NV21 
> pixelformat.
> 
> The blending setup roughly works like this:
> 1) Find the bottom-most enabled layer. Disable all blending for this layer. 
> This is done because we currently don't expose modification of the mixer 
> background to userspace. Once this is done we can add more flexibility here.
> 2) Find the next enabled layer in our layer stack. If the layer has a 
> framebuffer with an alpha-pixelformat attached, enable blending for this 
> layer. If not, disable blending.
> 3) Iterate (2) until all enabled layers are processed.
> 
> The series has been tested on a Hardkernel Odroid-X2 (Exynos4412, which has a 
> VP).
> 
> If you want to use libdrm's modetest to check the series, please apply 
> patches [1] and [2]. This should make it possible to also test a plane with 
> NV12 format (which is located 'behind' the primary plane).


The whole series works fine for me on Samsung Snow 5250 (which doesn't
have a VP).

Tested-by: Gustavo Padovan <gustavo.padovan at collabora.co.uk>

        Gustavo

Reply via email to