Re: [PATCH v2] drm/meson: Fix an Alpha Primary Plane bug on Meson GXL/GXM SoCs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Neil,
On Wed, Nov 28, 2018 at 11:07 AM Neil Armstrong <narmstrong@xxxxxxxxxxxx> wrote:
>
> 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 woraround Amlogic implemented is to reset the OSD1 plane hardware
> block each time the plane is (re)enabled, solving the issue.
>

typo: woraround -> workaround

> 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@xxxxxxxxxxxx>
> ---
> Changes since v1 at [1]:
> - Fix flickering and shaking by moving reset when plane is disabled
>
> [1] https://patchwork.freedesktop.org/patch/263550/
>
>  drivers/gpu/drm/meson/meson_plane.c | 12 ++++++++++++
>  drivers/gpu/drm/meson/meson_viu.c   | 27 +++++++++++++++++++++++++++
>  drivers/gpu/drm/meson/meson_viu.h   |  1 +
>  3 files changed, 40 insertions(+)
>

I can confirm the fix works on GXL (aml-s905x-cc), tested with
LibreElec, 1080p resolution.

Anything using alpha on the primary plane used to be randomly
"shifted" with black patches, and this was particularly visible with
subtitles.

Things seem OK now. Thanks!

Tested-by: Maxime Jourdan <mjourdan@xxxxxxxxxxxx>
Reviewed-by: Maxime Jourdan <mjourdan@xxxxxxxxxxxx>
_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/dri-devel




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux