[RFC] devfreq: drm overlay planes glitch on Exynos 4412 with devfreq enabled

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

 



Hi,

As advised by mszyprow on IRC, I am coming here to report a graphics
corruption issue that happens on the Exynos 4412 SoC whenever we use
devfreq in conjunction with drm overlay planes (DRM_PLANE_TYPE_OVERLAY).

We are working on a fork of LineageOS 16 (based on AOSP 9) that uses
drm_hwcomposer attached to an exynos card0 node. Whenever we enabled
overlay planes we would get the graphics corruptions that can be seen at
https://gitlab.freedesktop.org/drm-hwcomposer/drm-hwcomposer/issues/24

With the help of ahajda on #linux-exynos the root cause of this issue
was traced into devfreq. devfreq was enabled on our 5.2 kernel branch as
follows:
CONFIG_PM_DEVFREQ=y
CONFIG_DEVFREQ_GOV_PERFORMANCE=y
CONFIG_DEVFREQ_GOV_POWERSAVE=y
CONFIG_DEVFREQ_GOV_USERSPACE=y
CONFIG_ARM_EXYNOS_BUS_DEVFREQ=y
CONFIG_DEVFREQ_EVENT_EXYNOS_NOCP=y

Removing these configs (i.e. disabling devfreq) got rid of all
corruption issues.

ahajda provided a tentative explanation for this:
> There are multiple issues with devfreq and clocks, devfreq too
> aggresively lowers display clock frequencies, as a result DMA
> transfers of overlays are too slow and result in screen corruption

We are reporting here in case someone can take this task, as we lack the
skill and knowledge to fix it ourselves. We were informed on IRC that
the fix could take the form of a patch similar to what mszyprow did for
the mixer/hdmi path ( https://patchwork.kernel.org/patch/10861757/ ) but
this time targeting the fimd/lcd panel path.

If needed we can gather more information and provide all assistance you
need for testing. Some logs are already available at
https://gitlab.freedesktop.org/drm-hwcomposer/drm-hwcomposer/issues/24
The relevant IRC discussion is archived at
https://freenode.irclog.whitequark.org/linux-exynos/2019-07-18

Regards,
David



[Index of Archives]     [Linux SoC Development]     [Linux Rockchip Development]     [Linux for Synopsys ARC Processors]    
  • [Linux on Unisoc (RDA Micro) SoCs]     [Linux Actions SoC]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Linux SCSI]     [Yosemite News]

  •   Powered by Linux