Message ID | 20220206154405.1243333-5-sam@ravnborg.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/bridge: ps8640 and ti-sn65dsi86 updates | expand |
Hi, On Sun, Feb 6, 2022 at 7:44 AM Sam Ravnborg <sam@ravnborg.org> wrote: > > Move away from the deprecated enable/diable operations in > drm_bridge_funcs and enable atomic use. > > Signed-off-by: Sam Ravnborg <sam@ravnborg.org> > Cc: Douglas Anderson <dianders@chromium.org> > Cc: Andrzej Hajda <a.hajda@samsung.com> > Cc: Neil Armstrong <narmstrong@baylibre.com> > Cc: Robert Foss <robert.foss@linaro.org> > Cc: Laurent Pinchart <Laurent.pinchart@ideasonboard.com> > Cc: Jonas Karlman <jonas@kwiboo.se> > Cc: Jernej Skrabec <jernej.skrabec@gmail.com> > --- > drivers/gpu/drm/bridge/ti-sn65dsi86.c | 21 +++++++++++++-------- > 1 file changed, 13 insertions(+), 8 deletions(-) > > diff --git a/drivers/gpu/drm/bridge/ti-sn65dsi86.c b/drivers/gpu/drm/bridge/ti-sn65dsi86.c > index ba136a188be7..d681ab68205c 100644 > --- a/drivers/gpu/drm/bridge/ti-sn65dsi86.c > +++ b/drivers/gpu/drm/bridge/ti-sn65dsi86.c > @@ -796,7 +796,8 @@ ti_sn_bridge_mode_valid(struct drm_bridge *bridge, > return MODE_OK; > } > > -static void ti_sn_bridge_disable(struct drm_bridge *bridge) > +static void ti_sn_bridge_atomic_disable(struct drm_bridge *bridge, > + struct drm_bridge_state *old_bridge_state) > { > struct ti_sn65dsi86 *pdata = bridge_to_ti_sn65dsi86(bridge); > > @@ -1055,7 +1056,8 @@ static int ti_sn_link_training(struct ti_sn65dsi86 *pdata, int dp_rate_idx, > return ret; > } > > -static void ti_sn_bridge_enable(struct drm_bridge *bridge) > +static void ti_sn_bridge_atomic_enable(struct drm_bridge *bridge, > + struct drm_bridge_state *old_bridge_state) > { > struct ti_sn65dsi86 *pdata = bridge_to_ti_sn65dsi86(bridge); > const char *last_err_str = "No supported DP rate"; > @@ -1124,7 +1126,8 @@ static void ti_sn_bridge_enable(struct drm_bridge *bridge) > VSTREAM_ENABLE); > } > > -static void ti_sn_bridge_pre_enable(struct drm_bridge *bridge) > +static void ti_sn_bridge_atomic_pre_enable(struct drm_bridge *bridge, > + struct drm_bridge_state *old_bridge_state) > { > struct ti_sn65dsi86 *pdata = bridge_to_ti_sn65dsi86(bridge); > > @@ -1137,7 +1140,8 @@ static void ti_sn_bridge_pre_enable(struct drm_bridge *bridge) > usleep_range(100, 110); > } > > -static void ti_sn_bridge_post_disable(struct drm_bridge *bridge) > +static void ti_sn_bridge_atomic_post_disable(struct drm_bridge *bridge, > + struct drm_bridge_state *old_bridge_state) > { > struct ti_sn65dsi86 *pdata = bridge_to_ti_sn65dsi86(bridge); > > @@ -1158,10 +1162,11 @@ static const struct drm_bridge_funcs ti_sn_bridge_funcs = { > .attach = ti_sn_bridge_attach, > .detach = ti_sn_bridge_detach, > .mode_valid = ti_sn_bridge_mode_valid, > - .pre_enable = ti_sn_bridge_pre_enable, > - .enable = ti_sn_bridge_enable, > - .disable = ti_sn_bridge_disable, > - .post_disable = ti_sn_bridge_post_disable, > + .atomic_pre_enable = ti_sn_bridge_atomic_pre_enable, > + .atomic_enable = ti_sn_atomic_bridge_enable, > + .atomic_disable = ti_sn_atomic_bridge_disable, > + .atomic_post_disable = ti_sn_bridge_post_disable, Compiler doesn't like the fact that you are inconsistent about whether it's "atomic_bridge" or "bridge_atomic". Probably should settle on "bridge_atomic"? ...and the "post_disable" needs "atomic" in the name... > + DRM_BRIDGE_STATE_OPS, Wow, is it really that simple? I guess it seems to work OK... Since I don't actually know tons about atomic and whether this is enough, consider my Reviewed-by tag to be pretty weak. That being said, this _seems_ right to me? So once it compiles then I'm fine w/ my (weak) Reviewed-by and my Tested-by. -Doug
Hi Sam, Thank you for the patch. On Sun, Feb 06, 2022 at 04:44:00PM +0100, Sam Ravnborg wrote: > Move away from the deprecated enable/diable operations in s/diable/disable/ > drm_bridge_funcs and enable atomic use. > > Signed-off-by: Sam Ravnborg <sam@ravnborg.org> > Cc: Douglas Anderson <dianders@chromium.org> > Cc: Andrzej Hajda <a.hajda@samsung.com> > Cc: Neil Armstrong <narmstrong@baylibre.com> > Cc: Robert Foss <robert.foss@linaro.org> > Cc: Laurent Pinchart <Laurent.pinchart@ideasonboard.com> > Cc: Jonas Karlman <jonas@kwiboo.se> > Cc: Jernej Skrabec <jernej.skrabec@gmail.com> > --- > drivers/gpu/drm/bridge/ti-sn65dsi86.c | 21 +++++++++++++-------- > 1 file changed, 13 insertions(+), 8 deletions(-) > > diff --git a/drivers/gpu/drm/bridge/ti-sn65dsi86.c b/drivers/gpu/drm/bridge/ti-sn65dsi86.c > index ba136a188be7..d681ab68205c 100644 > --- a/drivers/gpu/drm/bridge/ti-sn65dsi86.c > +++ b/drivers/gpu/drm/bridge/ti-sn65dsi86.c > @@ -796,7 +796,8 @@ ti_sn_bridge_mode_valid(struct drm_bridge *bridge, > return MODE_OK; > } > > -static void ti_sn_bridge_disable(struct drm_bridge *bridge) > +static void ti_sn_bridge_atomic_disable(struct drm_bridge *bridge, > + struct drm_bridge_state *old_bridge_state) > { > struct ti_sn65dsi86 *pdata = bridge_to_ti_sn65dsi86(bridge); > > @@ -1055,7 +1056,8 @@ static int ti_sn_link_training(struct ti_sn65dsi86 *pdata, int dp_rate_idx, > return ret; > } > > -static void ti_sn_bridge_enable(struct drm_bridge *bridge) > +static void ti_sn_bridge_atomic_enable(struct drm_bridge *bridge, > + struct drm_bridge_state *old_bridge_state) > { > struct ti_sn65dsi86 *pdata = bridge_to_ti_sn65dsi86(bridge); > const char *last_err_str = "No supported DP rate"; > @@ -1124,7 +1126,8 @@ static void ti_sn_bridge_enable(struct drm_bridge *bridge) > VSTREAM_ENABLE); > } > > -static void ti_sn_bridge_pre_enable(struct drm_bridge *bridge) > +static void ti_sn_bridge_atomic_pre_enable(struct drm_bridge *bridge, > + struct drm_bridge_state *old_bridge_state) > { > struct ti_sn65dsi86 *pdata = bridge_to_ti_sn65dsi86(bridge); > > @@ -1137,7 +1140,8 @@ static void ti_sn_bridge_pre_enable(struct drm_bridge *bridge) > usleep_range(100, 110); > } > > -static void ti_sn_bridge_post_disable(struct drm_bridge *bridge) > +static void ti_sn_bridge_atomic_post_disable(struct drm_bridge *bridge, > + struct drm_bridge_state *old_bridge_state) > { > struct ti_sn65dsi86 *pdata = bridge_to_ti_sn65dsi86(bridge); > > @@ -1158,10 +1162,11 @@ static const struct drm_bridge_funcs ti_sn_bridge_funcs = { > .attach = ti_sn_bridge_attach, > .detach = ti_sn_bridge_detach, > .mode_valid = ti_sn_bridge_mode_valid, > - .pre_enable = ti_sn_bridge_pre_enable, > - .enable = ti_sn_bridge_enable, > - .disable = ti_sn_bridge_disable, > - .post_disable = ti_sn_bridge_post_disable, > + .atomic_pre_enable = ti_sn_bridge_atomic_pre_enable, > + .atomic_enable = ti_sn_atomic_bridge_enable, > + .atomic_disable = ti_sn_atomic_bridge_disable, > + .atomic_post_disable = ti_sn_bridge_post_disable, > + DRM_BRIDGE_STATE_OPS, With the compilation fix, Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> > }; > > static void ti_sn_bridge_parse_lanes(struct ti_sn65dsi86 *pdata,
diff --git a/drivers/gpu/drm/bridge/ti-sn65dsi86.c b/drivers/gpu/drm/bridge/ti-sn65dsi86.c index ba136a188be7..d681ab68205c 100644 --- a/drivers/gpu/drm/bridge/ti-sn65dsi86.c +++ b/drivers/gpu/drm/bridge/ti-sn65dsi86.c @@ -796,7 +796,8 @@ ti_sn_bridge_mode_valid(struct drm_bridge *bridge, return MODE_OK; } -static void ti_sn_bridge_disable(struct drm_bridge *bridge) +static void ti_sn_bridge_atomic_disable(struct drm_bridge *bridge, + struct drm_bridge_state *old_bridge_state) { struct ti_sn65dsi86 *pdata = bridge_to_ti_sn65dsi86(bridge); @@ -1055,7 +1056,8 @@ static int ti_sn_link_training(struct ti_sn65dsi86 *pdata, int dp_rate_idx, return ret; } -static void ti_sn_bridge_enable(struct drm_bridge *bridge) +static void ti_sn_bridge_atomic_enable(struct drm_bridge *bridge, + struct drm_bridge_state *old_bridge_state) { struct ti_sn65dsi86 *pdata = bridge_to_ti_sn65dsi86(bridge); const char *last_err_str = "No supported DP rate"; @@ -1124,7 +1126,8 @@ static void ti_sn_bridge_enable(struct drm_bridge *bridge) VSTREAM_ENABLE); } -static void ti_sn_bridge_pre_enable(struct drm_bridge *bridge) +static void ti_sn_bridge_atomic_pre_enable(struct drm_bridge *bridge, + struct drm_bridge_state *old_bridge_state) { struct ti_sn65dsi86 *pdata = bridge_to_ti_sn65dsi86(bridge); @@ -1137,7 +1140,8 @@ static void ti_sn_bridge_pre_enable(struct drm_bridge *bridge) usleep_range(100, 110); } -static void ti_sn_bridge_post_disable(struct drm_bridge *bridge) +static void ti_sn_bridge_atomic_post_disable(struct drm_bridge *bridge, + struct drm_bridge_state *old_bridge_state) { struct ti_sn65dsi86 *pdata = bridge_to_ti_sn65dsi86(bridge); @@ -1158,10 +1162,11 @@ static const struct drm_bridge_funcs ti_sn_bridge_funcs = { .attach = ti_sn_bridge_attach, .detach = ti_sn_bridge_detach, .mode_valid = ti_sn_bridge_mode_valid, - .pre_enable = ti_sn_bridge_pre_enable, - .enable = ti_sn_bridge_enable, - .disable = ti_sn_bridge_disable, - .post_disable = ti_sn_bridge_post_disable, + .atomic_pre_enable = ti_sn_bridge_atomic_pre_enable, + .atomic_enable = ti_sn_atomic_bridge_enable, + .atomic_disable = ti_sn_atomic_bridge_disable, + .atomic_post_disable = ti_sn_bridge_post_disable, + DRM_BRIDGE_STATE_OPS, }; static void ti_sn_bridge_parse_lanes(struct ti_sn65dsi86 *pdata,
Move away from the deprecated enable/diable operations in drm_bridge_funcs and enable atomic use. Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Cc: Douglas Anderson <dianders@chromium.org> Cc: Andrzej Hajda <a.hajda@samsung.com> Cc: Neil Armstrong <narmstrong@baylibre.com> Cc: Robert Foss <robert.foss@linaro.org> Cc: Laurent Pinchart <Laurent.pinchart@ideasonboard.com> Cc: Jonas Karlman <jonas@kwiboo.se> Cc: Jernej Skrabec <jernej.skrabec@gmail.com> --- drivers/gpu/drm/bridge/ti-sn65dsi86.c | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-)