]> git.baikalelectronics.ru Git - kernel.git/commit
drm/meson: Fix an Alpha Primary Plane bug on Meson GXL/GXM SoCs
authorNeil Armstrong <narmstrong@baylibre.com>
Wed, 28 Nov 2018 10:07:34 +0000 (11:07 +0100)
committerNeil Armstrong <narmstrong@baylibre.com>
Mon, 3 Dec 2018 10:12:09 +0000 (11:12 +0100)
commit2e549959d562b8dde2e5eae722053b71126bc5a2
treebc0306a5f2d02ed1a1db41587f7b57a59dc45f8a
parentf45a5e4c2598533e713739569c6865870950429f
drm/meson: Fix an Alpha Primary Plane bug on Meson GXL/GXM SoCs

On the Amlogic GXL & GXM SoCs, a bug occurs on the primary plane when
alpha is used where the alpha is not aligned with the pixel content.

The workaround Amlogic implemented is to reset the OSD1 plane hardware
block each time the plane is (re)enabled, solving the issue.

In the reset, we still need to save the content of 2 registers which
depends on the status of the plane, in addition to reload the scaler
conversion matrix at the same time.

Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Tested-by: Maxime Jourdan <mjourdan@baylibre.com>
Reviewed-by: Maxime Jourdan <mjourdan@baylibre.com>
[narmstrong: fixed typo in commit log]
Link: https://patchwork.freedesktop.org/patch/msgid/20181128100734.6536-1-narmstrong@baylibre.com
drivers/gpu/drm/meson/meson_plane.c
drivers/gpu/drm/meson/meson_viu.c
drivers/gpu/drm/meson/meson_viu.h