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

Neil Armstrong narmstrong at baylibre.com
Mon Dec 3 10:10:57 UTC 2018


On 03/12/2018 10:04, Maxime Jourdan wrote:
> Hi Neil,
> On Wed, Nov 28, 2018 at 11:07 AM Neil Armstrong <narmstrong at baylibre.com> 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

I'll fix when applying !

> 
>> 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 at baylibre.com>
>> ---
>> 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 at baylibre.com>
> Reviewed-by: Maxime Jourdan <mjourdan at baylibre.com>
> 

Thanks,

Applied on drm-misc-next

Neil


More information about the dri-devel mailing list