[PATCH v1 7/7] drm/todo: Add bridge related todo items

Sam Ravnborg
2021-07-22T06:27:10Z

- deprecated callbacks in drm_bridge_funcs
- move connector creation to display drivers

Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Maxime Ripard <mripard@kernel.org>
Cc: Thomas Zimmermann <tzimmermann@suse.de>
Cc: David Airlie <airlied@linux.ie>
Cc: Daniel Vetter <daniel@ffwll.ch>
---
Documentation/gpu/todo.rst | 47 ++++++++++++++++++++++++++++++++++++++
1 file changed, 47 insertions(+)

diff --git a/Documentation/gpu/todo.rst b/Documentation/gpu/todo.rst
index 12e61869939e..0ed1f49df73e 100644
--- a/Documentation/gpu/todo.rst
+++ b/Documentation/gpu/todo.rst
@@ -477,6 +477,53 @@ Contact: Thomas Zimmermann <tzimmermann@suse.de>, Christian König, Daniel Vette

Level: Intermediate

+Drop use of deprecated callbacks in bridge drivers
+--------------------------------------------------
+
+&struct drm_bridge_funcs contains a number of deprecated operations
+which use can be replaced by the atomic variants.
+
+* pre_enable => atomic_pre_enable
+* enable => atomic_enable
+* disable => atomic_disable
+* post_disable => atomic_post_disable
+
+The above are in most cases a simple adjustment of the arguments and names.
+
+* mode_set is no longer required and the implementation shall be merged
+ with atomic_enable.
+
+* mode_fixup => atomic_check
+ mode_fixup() was created a long time ago, when we were supposed to have
+ a single bridge at the output of the CRTC. The bridge could then instruct
+ the CRTC to output a different mode than what the display requires.
+ Now that we have support for multiple bridges, it's not as straightforward,
+ and we've so far just pretended to ignore the problem. The .mode_fixup()
+ operation is used and abused, and just telling people to use .atomic_check()
+ will likely make things worse as that operation has access to the full atomic
+ commit and can alter the mode of pretty much anything. We need to define clear
+ semantics for .atomic_check() in bridges.
+
+
+Contact: Sam Ravnborg <sam@ravnborg.org>, Laurent Pinchart <laurent.pinchart@ideasonboard.com>
+
+Level: Beginner or intermediate (depending on the driver)
+
+Move connector creation to display drivers
+------------------------------------------
+
+With the introduction of chained bridges the creation of connectors are moved to the
+display drivers. The flag DRM_BRIDGE_ATTACH_NO_CONNECTOR is used to signal to the bridge
+driver that no connector shall be created and that the display driver will take care.
+Display drivers will in most cases be able to utilise drm_bridge_connector_init() for all
+the logic.
+
+This task requires all bridge drivers to support optional or no connector creation and all
+display drivers using bridges to support creating the connector.
+
+Contact: Sam Ravnborg <sam@ravnborg.org>, bridge maintainers, driver maintainer
+
+Level: Intermediate or advanced (depending on the driver)

Core refactorings
=================
--
2.30.2