There are no remaining users of the atomic_reset hook. Remove it
from the core.

Reviewed-by: Laurent Pinchart <[email protected]>
Reviewed-by: Thomas Zimmermann <[email protected]>
Signed-off-by: Maxime Ripard <[email protected]>
---
 drivers/gpu/drm/drm_atomic_state_helper.c |  5 ++---
 drivers/gpu/drm/drm_bridge.c              |  8 ++------
 include/drm/drm_bridge.h                  | 30 +-----------------------------
 3 files changed, 5 insertions(+), 38 deletions(-)

diff --git a/drivers/gpu/drm/drm_atomic_state_helper.c 
b/drivers/gpu/drm/drm_atomic_state_helper.c
index fbdc3d893a0c..d90d1d7c9cf9 100644
--- a/drivers/gpu/drm/drm_atomic_state_helper.c
+++ b/drivers/gpu/drm/drm_atomic_state_helper.c
@@ -892,13 +892,12 @@ EXPORT_SYMBOL(drm_atomic_helper_bridge_destroy_state);
  * @bridge: the bridge this state refers to
  *
  * @state is assumed to be zeroed.
  *
  * Initializes the bridge state to default values. This is meant to be called
- * by the bridge &drm_bridge_funcs.atomic_create_state or
- * &drm_bridge_funcs.atomic_reset hook for bridges that subclass the bridge
- * state.
+ * by the bridge &drm_bridge_funcs.atomic_create_state hook for bridges that
+ * subclass the bridge state.
  */
 void __drm_atomic_helper_bridge_state_init(struct drm_bridge_state *state,
                                           struct drm_bridge *bridge)
 {
        __drm_atomic_helper_private_obj_create_state(&bridge->base, 
&state->base);
diff --git a/drivers/gpu/drm/drm_bridge.c b/drivers/gpu/drm/drm_bridge.c
index 776856e23592..6ead9b75ae3d 100644
--- a/drivers/gpu/drm/drm_bridge.c
+++ b/drivers/gpu/drm/drm_bridge.c
@@ -540,14 +540,11 @@ static struct drm_private_state *
 drm_bridge_atomic_create_priv_state(struct drm_private_obj *obj)
 {
        struct drm_bridge *bridge = drm_priv_to_bridge(obj);
        struct drm_bridge_state *state;
 
-       if (bridge->funcs->atomic_create_state)
-               state = bridge->funcs->atomic_create_state(bridge);
-       else
-               state = bridge->funcs->atomic_reset(bridge);
+       state = bridge->funcs->atomic_create_state(bridge);
        if (IS_ERR(state))
                return ERR_CAST(state);
 
        return &state->base;
 }
@@ -558,12 +555,11 @@ static const struct drm_private_state_funcs 
drm_bridge_priv_state_funcs = {
        .atomic_destroy_state = drm_bridge_atomic_destroy_priv_state,
 };
 
 static bool drm_bridge_is_atomic(struct drm_bridge *bridge)
 {
-       return (bridge->funcs->atomic_create_state ||
-               bridge->funcs->atomic_reset);
+       return bridge->funcs->atomic_create_state != NULL;
 }
 
 /**
  * drm_bridge_attach - attach the bridge to an encoder's chain
  *
diff --git a/include/drm/drm_bridge.h b/include/drm/drm_bridge.h
index 70e574fbf034..18f3db367dc1 100644
--- a/include/drm/drm_bridge.h
+++ b/include/drm/drm_bridge.h
@@ -501,37 +501,10 @@ struct drm_bridge_funcs {
        int (*atomic_check)(struct drm_bridge *bridge,
                            struct drm_bridge_state *bridge_state,
                            struct drm_crtc_state *crtc_state,
                            struct drm_connector_state *conn_state);
 
-       /**
-        * @atomic_reset:
-        *
-        * Reset the bridge to a predefined state (or retrieve its current
-        * state) and return a &drm_bridge_state object matching this state.
-        * This function is called at attach time.
-        *
-        * The atomic_reset hook is mandatory if the bridge implements any of
-        * the atomic hooks, and should be left unassigned otherwise. For
-        * bridges that don't subclass &drm_bridge_state, the
-        * drm_atomic_helper_bridge_reset() helper function shall be used to
-        * implement this hook.
-        *
-        * Note that the atomic_reset() semantics is not exactly matching the
-        * reset() semantics found on other components (connector, plane, ...).
-        *
-        * 1. The reset operation happens when the bridge is attached, not when
-        *    drm_mode_config_reset() is called
-        * 2. It's meant to be used exclusively on bridges that have been
-        *    converted to the ATOMIC API
-        *
-        * RETURNS:
-        * A valid drm_bridge_state object in case of success, an ERR_PTR()
-        * giving the reason of the failure otherwise.
-        */
-       struct drm_bridge_state *(*atomic_reset)(struct drm_bridge *bridge);
-
        /**
         * @atomic_create_state:
         *
         * Allocate a pristine, initialized, state for the bridge
         * object and return it. This callback must have no side
@@ -1389,12 +1362,11 @@ drm_bridge_get_current_state(struct drm_bridge *bridge)
        /*
         * Only atomic bridges will have bridge->base initialized by
         * drm_atomic_private_obj_init(), so we need to make sure we're
         * working with one before we try to use the lock.
         */
-       if (!bridge->funcs ||
-           !(bridge->funcs->atomic_reset || 
bridge->funcs->atomic_create_state))
+       if (!bridge->funcs || !bridge->funcs->atomic_create_state)
                return NULL;
 
        drm_modeset_lock_assert_held(&bridge->base.lock);
 
        if (!bridge->base.state)

-- 
2.54.0

Reply via email to