linux/drivers/gpu/drm/mcde
Linus Walleij 709c27730a drm/mcde: Fix display data flow control
Revamp the way that the flow of data to the display is
defined.

I realized that the hardware supports something like
5 different modes of flow: oneshot, command with TE IRQ,
command with BTA (bus turn around) and TE IRQ, video
with TE IRQ and video without TE IRQ instead synchronizing
to the output of the MCDE DSI formatter.

Like before the selection of the type of flow is done
from the DSI driver when we attach it to the MCDE and we
get to know what the display wants.

The new video mode synchronization method from the MCDE DSI
formatter is used on some upstream devices such as Golden.
This is the new default for video mode: stateless panels
do not as a rule generate TE IRQs.

Another semantic change is that we stop sending
a TE request before every command when sending data to
a display in command mode: this should only be explicitly
requested when using BTA, according to the vendor driver.

This has been tested and works fine with the command mode
displays I have. (All that are supported upstream.)

Reported-by: Stephan Gerhold <stephan@gerhold.net>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Stephan Gerhold <stephan@gerhold.net>
Cc: Stephan Gerhold <stephan@gerhold.net>
Link: https://patchwork.freedesktop.org/patch/msgid/20200729090915.252730-2-linus.walleij@linaro.org
2020-08-13 16:36:47 +02:00
..
Kconfig
Makefile
mcde_display_regs.h
mcde_display.c drm/mcde: Fix display data flow control 2020-08-13 16:36:47 +02:00
mcde_drm.h drm/mcde: Fix display data flow control 2020-08-13 16:36:47 +02:00
mcde_drv.c drm/mcde: Fix display data flow control 2020-08-13 16:36:47 +02:00
mcde_dsi_regs.h drm/mcde: Some fixes to handling video mode 2019-12-17 21:20:03 +01:00
mcde_dsi.c drm/mcde: Fix display data flow control 2020-08-13 16:36:47 +02:00