linux/Documentation/gpu
Laurent Pinchart 5e20bdf3d3 drm: Add helper to create a connector for a chain of bridges
Most bridge drivers create a DRM connector to model the connector at the
output of the bridge. This model is historical and has worked pretty
well so far, but causes several issues:

- It prevents supporting more complex display pipelines where DRM
connector operations are split over multiple components. For instance a
pipeline with a bridge connected to the DDC signals to read EDID data,
and another one connected to the HPD signal to detect connection and
disconnection, will not be possible to support through this model.

- It requires every bridge driver to implement similar connector
handling code, resulting in code duplication.

- It assumes that a bridge will either be wired to a connector or to
another bridge, but doesn't support bridges that can be used in both
positions very well (although there is some ad-hoc support for this in
the analogix_dp bridge driver).

In order to solve these issues, ownership of the connector needs to be
moved to the display controller driver.

To avoid code duplication in display controller drivers, add a new
helper to create and manage a DRM connector backed by a chain of
bridges. All connector operations are delegating to the appropriate
bridge in the chain.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
Tested-by: Sebastian Reichel <sebastian.reichel@collabora.com>
Reviewed-by: Sebastian Reichel <sebastian.reichel@collabora.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20200226112514.12455-21-laurent.pinchart@ideasonboard.com
2020-02-26 13:31:41 +02:00
..
bridge drm: bridge: dw-hdmi: Add Documentation on supported input formats 2017-04-04 17:48:21 +02:00
dp-mst drm/dp_mst: Introduce new refcounting scheme for mstbs and ports 2019-01-10 20:12:19 -05:00
afbc.rst drm/afbc: Add AFBC modifier usage documentation 2019-01-11 17:52:06 +00:00
amdgpu-dc.rst drm/amd/display: Initial documentation for AMDgpu DC 2018-11-05 14:21:37 -05:00
amdgpu.rst drm/amdgpu: Improve RAS documentation (v2) 2019-11-06 16:27:48 -05:00
drivers.rst drm/tinydrm: Move mipi-dbi 2019-07-25 10:45:07 +02:00
drm-client.rst drm/fb-helper: Remove drm_fb_helper_crtc 2019-06-04 12:13:47 +02:00
drm-internals.rst drm/doc: Drop :c:func: markup 2019-12-10 21:44:02 +01:00
drm-kms-helpers.rst drm: Add helper to create a connector for a chain of bridges 2020-02-26 13:31:41 +02:00
drm-kms.rst drm/doc: Drop :c:func: markup 2019-12-10 21:44:02 +01:00
drm-mm.rst drm/doc: Drop :c:func: markup 2019-12-10 21:44:02 +01:00
drm-uapi.rst drm/doc: Add VKMS module description and use to "Testing and Validation" 2019-12-05 18:52:12 -05:00
i915.rst drm/i915/guc: kill the GuC client 2019-12-09 13:55:50 -08:00
index.rst drm: Begin an API for in-kernel clients 2018-07-10 14:51:37 +02:00
introduction.rst drm/doc: Document kapi doc expectations 2019-07-19 15:02:37 +02:00
kms-properties.csv drm/doc: Drop "content type" from the legacy kms property table 2019-03-26 14:18:51 +01:00
komeda-kms.rst drm/doc: Add initial komeda driver documentation 2019-01-14 11:20:11 +00:00
mcde.rst drm/mcde: Fix reference to DOC comment 2019-10-05 20:35:14 +02:00
meson.rst Documentation/gpu/meson: Remove link to meson_canvas.c 2019-04-05 08:35:05 -04:00
msm-crash-dump.rst docs: mark orphan documents as such 2019-06-08 13:42:11 -06:00
pl111.rst drm/pl111: Initial drm/kms driver for pl111 2017-05-08 12:24:06 -07:00
tegra.rst drm/tegra: Add driver documentation 2017-06-15 13:58:56 +02:00
todo.rst drm/edid: Add flag to drm_display_info to identify HDMI sinks 2020-02-26 13:31:19 +02:00
tve200.rst drm/tve200: fix kernel-doc documentation comment include 2018-02-21 09:26:38 +02:00
v3d.rst drm/v3d: Add missing v3d documentation structure. 2018-07-05 11:42:50 -07:00
vc4.rst drm/vc4: Add a paragraph at the top of vc4 docs introducing what it is. 2017-02-28 12:51:49 -08:00
vga-switcheroo.rst drm/doc: Fix vga_switcheroo xref 2016-08-24 13:11:08 +02:00
vgaarbiter.rst vgaarbiter: rst-ifiy and polish kerneldoc 2016-08-16 18:49:56 +02:00
vkms.rst drm/doc: Remove solved "VBlank issues" 2019-02-06 21:40:56 +01:00
xen-front.rst drm/xen-front: Remove CMA support 2018-04-18 10:18:27 +03:00