linux_dsm_epyc7002/drivers/gpu/drm/pl111
Linus Walleij 3b6ec45857 drm/pl111: Support multiple endpoints on the CLCD
The Versatile PL110 implementations use multiple endpoints:
from the PL111 port, the lines are routed through a PLD,
and from there forked so the same lines go to a VGA DAC and
an external TFT panel connector. This is discrete wireing
so there is no way to turn of one output, i.e. this is
really two endpoints, not two ports.

We model this with multiple endpoints, so we need to loop
over the available endpoints, check for panel or bridge on
each and accumulate the result before continuing.

The code already will give the panel preference over the
bridge, if present, so the output will be sent to the panel
if both a panel and a bridge is present on two endpoints
of the same port.

If they all return -EPROBE_DEFER we return -EPROBE_DEFER
as well.

If just one endpoint is present on the port, the behaviour
is the same as before.

Reviewed-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20180206093540.8147-5-linus.walleij@linaro.org
2018-02-07 09:08:51 +01:00
..
Kconfig drm/pl111: Support handling bridge timings 2018-01-12 14:14:50 +05:30
Makefile main drm pull request for v4.15 2017-11-15 20:42:10 -08:00
pl111_debugfs.c drm/pl111: Add all registers to debugfs 2017-09-10 23:57:57 +02:00
pl111_display.c drm/pl111: Support variants with broken VBLANK 2018-02-07 09:08:46 +01:00
pl111_drm.h drm/pl111: Support variants with broken VBLANK 2018-02-07 09:08:46 +01:00
pl111_drv.c drm/pl111: Support multiple endpoints on the CLCD 2018-02-07 09:08:51 +01:00
pl111_versatile.c drm/pl111: Support variants with broken VBLANK 2018-02-07 09:08:46 +01:00
pl111_versatile.h drm/pl111: Add handling of Versatile platforms 2017-09-10 23:58:42 +02:00