drm/todo: Remove the drm_atomic_state todo item
authorMaxime Ripard <maxime@cerno.tech>
Fri, 19 Feb 2021 12:00:31 +0000 (13:00 +0100)
committerMaxime Ripard <maxime@cerno.tech>
Thu, 25 Feb 2021 07:05:28 +0000 (08:05 +0100)
commitc129b49825530942f344ed3e0e6a72568ad3e3e2
treeaf48710103717523023965d01d8cf67c795eaa53
parent37418bf14c1392260d633e3b4448b78c2f15044a
drm/todo: Remove the drm_atomic_state todo item

Only planes' prepare_fb and cleanup_fb, and encoders' atomic_check and
atomic_mode_set hooks remain with an object state and not the global
drm_atomic_state.

prepare_fb and cleanup_fb operate by design on a given state and
depending on the calling site can operate on either the old or new
state, so it doesn't really make much sense to convert them.

The encoders' atomic_check and atomic_mode_set operate on the CRTC and
connector state connected to them since encoders don't have a state of
their own. Without those state pointers, we would need to get the CRTC
through the drm_connector_state crtc pointer.

However, in order to get the drm_connector_state pointer, we would need
to get the connector itself and while usually we have a single connector
connected to the encoder, we can't really get it from the encoder at
the moment since it could be behind any number of bridges.

While this could be addressed by (for example) listing all the
connectors and finding the one that has the encoder as its source, it
feels like an unnecessary rework for something that is slowly getting
replaced by bridges.

Since all the users that matter have been converted, let's remove the
TODO item.

Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
Acked-by: Thomas Zimmermann <tzimmermann@suse.de>
Link: https://patchwork.freedesktop.org/patch/msgid/20210219120032.260676-11-maxime@cerno.tech
Documentation/gpu/todo.rst