Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/bridge: Pass full state to atomic_disable

It's pretty inconvenient to access the full atomic state from
drm_bridges, so let's change the atomic_disable hook prototype to pass
it directly.

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Tested-by: Douglas Anderson <dianders@chromium.org>
Link: https://lore.kernel.org/r/20250213-bridge-connector-v3-4-e71598f49c8f@kernel.org
Signed-off-by: Maxime Ripard <mripard@kernel.org>

+64 -84
+1 -1
drivers/gpu/drm/bridge/adv7511/adv7511_drv.c
··· 919 919 } 920 920 921 921 static void adv7511_bridge_atomic_disable(struct drm_bridge *bridge, 922 - struct drm_bridge_state *bridge_state) 922 + struct drm_atomic_state *state) 923 923 { 924 924 struct adv7511 *adv = bridge_to_adv7511(bridge); 925 925
+2 -4
drivers/gpu/drm/bridge/analogix/analogix_dp_core.c
··· 1323 1323 dp->dpms_mode = DRM_MODE_DPMS_OFF; 1324 1324 } 1325 1325 1326 - static void 1327 - analogix_dp_bridge_atomic_disable(struct drm_bridge *bridge, 1328 - struct drm_bridge_state *old_bridge_state) 1326 + static void analogix_dp_bridge_atomic_disable(struct drm_bridge *bridge, 1327 + struct drm_atomic_state *old_state) 1329 1328 { 1330 - struct drm_atomic_state *old_state = old_bridge_state->base.state; 1331 1329 struct analogix_dp_device *dp = bridge->driver_private; 1332 1330 struct drm_crtc *old_crtc, *new_crtc; 1333 1331 struct drm_crtc_state *old_crtc_state = NULL;
+1 -1
drivers/gpu/drm/bridge/analogix/anx7625.c
··· 2419 2419 } 2420 2420 2421 2421 static void anx7625_bridge_atomic_disable(struct drm_bridge *bridge, 2422 - struct drm_bridge_state *old) 2422 + struct drm_atomic_state *state) 2423 2423 { 2424 2424 struct anx7625_data *ctx = bridge_to_anx7625(bridge); 2425 2425 struct device *dev = ctx->dev;
+1 -1
drivers/gpu/drm/bridge/cadence/cdns-mhdp8546-core.c
··· 2069 2069 } 2070 2070 2071 2071 static void cdns_mhdp_atomic_disable(struct drm_bridge *bridge, 2072 - struct drm_bridge_state *bridge_state) 2072 + struct drm_atomic_state *state) 2073 2073 { 2074 2074 struct cdns_mhdp_device *mhdp = bridge_to_mhdp(bridge); 2075 2075 u32 resp;
+1 -1
drivers/gpu/drm/bridge/fsl-ldb.c
··· 223 223 } 224 224 225 225 static void fsl_ldb_atomic_disable(struct drm_bridge *bridge, 226 - struct drm_bridge_state *old_bridge_state) 226 + struct drm_atomic_state *state) 227 227 { 228 228 struct fsl_ldb *fsl_ldb = to_fsl_ldb(bridge); 229 229
+1 -1
drivers/gpu/drm/bridge/imx/imx8mp-hdmi-pvi.c
··· 89 89 } 90 90 91 91 static void imx8mp_hdmi_pvi_bridge_disable(struct drm_bridge *bridge, 92 - struct drm_bridge_state *bridge_state) 92 + struct drm_atomic_state *state) 93 93 { 94 94 struct imx8mp_hdmi_pvi *pvi = to_imx8mp_hdmi_pvi(bridge); 95 95
+2 -3
drivers/gpu/drm/bridge/imx/imx8qm-ldb.c
··· 246 246 ldb_bridge_enable_helper(bridge); 247 247 } 248 248 249 - static void 250 - imx8qm_ldb_bridge_atomic_disable(struct drm_bridge *bridge, 251 - struct drm_bridge_state *old_bridge_state) 249 + static void imx8qm_ldb_bridge_atomic_disable(struct drm_bridge *bridge, 250 + struct drm_atomic_state *state) 252 251 { 253 252 struct ldb_channel *ldb_ch = bridge->driver_private; 254 253 struct ldb *ldb = ldb_ch->ldb;
+3 -4
drivers/gpu/drm/bridge/imx/imx8qxp-ldb.c
··· 253 253 companion->funcs->atomic_enable(companion, state); 254 254 } 255 255 256 - static void 257 - imx8qxp_ldb_bridge_atomic_disable(struct drm_bridge *bridge, 258 - struct drm_bridge_state *old_bridge_state) 256 + static void imx8qxp_ldb_bridge_atomic_disable(struct drm_bridge *bridge, 257 + struct drm_atomic_state *state) 259 258 { 260 259 struct ldb_channel *ldb_ch = bridge->driver_private; 261 260 struct ldb *ldb = ldb_ch->ldb; ··· 280 281 clk_disable_unprepare(imx8qxp_ldb->clk_pixel); 281 282 282 283 if (is_split && companion) 283 - companion->funcs->atomic_disable(companion, old_bridge_state); 284 + companion->funcs->atomic_disable(companion, state); 284 285 285 286 ret = pm_runtime_put(dev); 286 287 if (ret < 0)
+2 -3
drivers/gpu/drm/bridge/imx/imx8qxp-pixel-combiner.c
··· 176 176 clk_disable_unprepare(pc->clk_apb); 177 177 } 178 178 179 - static void 180 - imx8qxp_pc_bridge_atomic_disable(struct drm_bridge *bridge, 181 - struct drm_bridge_state *old_bridge_state) 179 + static void imx8qxp_pc_bridge_atomic_disable(struct drm_bridge *bridge, 180 + struct drm_atomic_state *state) 182 181 { 183 182 struct imx8qxp_pc_channel *ch = bridge->driver_private; 184 183 struct imx8qxp_pc *pc = ch->pc;
+2 -3
drivers/gpu/drm/bridge/imx/imx8qxp-pixel-link.c
··· 163 163 imx8qxp_pixel_link_enable_sync(pl); 164 164 } 165 165 166 - static void 167 - imx8qxp_pixel_link_bridge_atomic_disable(struct drm_bridge *bridge, 168 - struct drm_bridge_state *old_bridge_state) 166 + static void imx8qxp_pixel_link_bridge_atomic_disable(struct drm_bridge *bridge, 167 + struct drm_atomic_state *state) 169 168 { 170 169 struct imx8qxp_pixel_link *pl = bridge->driver_private; 171 170
+3 -5
drivers/gpu/drm/bridge/imx/imx8qxp-pxl2dpi.c
··· 122 122 } 123 123 } 124 124 125 - static void 126 - imx8qxp_pxl2dpi_bridge_atomic_disable(struct drm_bridge *bridge, 127 - struct drm_bridge_state *old_bridge_state) 125 + static void imx8qxp_pxl2dpi_bridge_atomic_disable(struct drm_bridge *bridge, 126 + struct drm_atomic_state *state) 128 127 { 129 128 struct imx8qxp_pxl2dpi *p2d = bridge->driver_private; 130 129 int ret; ··· 133 134 DRM_DEV_ERROR(p2d->dev, "failed to put runtime PM: %d\n", ret); 134 135 135 136 if (p2d->companion) 136 - p2d->companion->funcs->atomic_disable(p2d->companion, 137 - old_bridge_state); 137 + p2d->companion->funcs->atomic_disable(p2d->companion, state); 138 138 } 139 139 140 140 static const u32 imx8qxp_pxl2dpi_bus_output_fmts[] = {
+2 -3
drivers/gpu/drm/bridge/ite-it6263.c
··· 569 569 return 0; 570 570 } 571 571 572 - static void 573 - it6263_bridge_atomic_disable(struct drm_bridge *bridge, 574 - struct drm_bridge_state *old_bridge_state) 572 + static void it6263_bridge_atomic_disable(struct drm_bridge *bridge, 573 + struct drm_atomic_state *state) 575 574 { 576 575 struct it6263 *it = bridge_to_it6263(bridge); 577 576
+1 -1
drivers/gpu/drm/bridge/ite-it6505.c
··· 3238 3238 } 3239 3239 3240 3240 static void it6505_bridge_atomic_disable(struct drm_bridge *bridge, 3241 - struct drm_bridge_state *old_state) 3241 + struct drm_atomic_state *state) 3242 3242 { 3243 3243 struct it6505 *it6505 = bridge_to_it6505(bridge); 3244 3244 struct device *dev = it6505->dev;
+1 -1
drivers/gpu/drm/bridge/ite-it66121.c
··· 731 731 } 732 732 733 733 static void it66121_bridge_disable(struct drm_bridge *bridge, 734 - struct drm_bridge_state *bridge_state) 734 + struct drm_atomic_state *state) 735 735 { 736 736 struct it66121_ctx *ctx = container_of(bridge, struct it66121_ctx, bridge); 737 737
+1 -1
drivers/gpu/drm/bridge/lontium-lt9211.c
··· 552 552 } 553 553 554 554 static void lt9211_atomic_disable(struct drm_bridge *bridge, 555 - struct drm_bridge_state *old_bridge_state) 555 + struct drm_atomic_state *state) 556 556 { 557 557 struct lt9211 *ctx = bridge_to_lt9211(bridge); 558 558 int ret;
+2 -3
drivers/gpu/drm/bridge/lontium-lt9611.c
··· 687 687 regmap_write(lt9611->regmap, 0x8130, 0xea); 688 688 } 689 689 690 - static void 691 - lt9611_bridge_atomic_disable(struct drm_bridge *bridge, 692 - struct drm_bridge_state *old_bridge_state) 690 + static void lt9611_bridge_atomic_disable(struct drm_bridge *bridge, 691 + struct drm_atomic_state *state) 693 692 { 694 693 struct lt9611 *lt9611 = bridge_to_lt9611(bridge); 695 694 int ret;
+2 -3
drivers/gpu/drm/bridge/nwl-dsi.c
··· 736 736 return 0; 737 737 } 738 738 739 - static void 740 - nwl_dsi_bridge_atomic_disable(struct drm_bridge *bridge, 741 - struct drm_bridge_state *old_bridge_state) 739 + static void nwl_dsi_bridge_atomic_disable(struct drm_bridge *bridge, 740 + struct drm_atomic_state *state) 742 741 { 743 742 struct nwl_dsi *dsi = bridge_to_dsi(bridge); 744 743 int ret;
+1 -2
drivers/gpu/drm/bridge/panel.c
··· 147 147 } 148 148 149 149 static void panel_bridge_atomic_disable(struct drm_bridge *bridge, 150 - struct drm_bridge_state *old_bridge_state) 150 + struct drm_atomic_state *atomic_state) 151 151 { 152 152 struct panel_bridge *panel_bridge = drm_bridge_to_panel_bridge(bridge); 153 - struct drm_atomic_state *atomic_state = old_bridge_state->base.state; 154 153 struct drm_encoder *encoder = bridge->encoder; 155 154 struct drm_crtc *crtc; 156 155 struct drm_crtc_state *new_crtc_state;
+1 -1
drivers/gpu/drm/bridge/samsung-dsim.c
··· 1496 1496 } 1497 1497 1498 1498 static void samsung_dsim_atomic_disable(struct drm_bridge *bridge, 1499 - struct drm_bridge_state *old_bridge_state) 1499 + struct drm_atomic_state *state) 1500 1500 { 1501 1501 struct samsung_dsim *dsi = bridge_to_dsi(bridge); 1502 1502
+1 -1
drivers/gpu/drm/bridge/sii902x.c
··· 325 325 }; 326 326 327 327 static void sii902x_bridge_atomic_disable(struct drm_bridge *bridge, 328 - struct drm_bridge_state *old_bridge_state) 328 + struct drm_atomic_state *state) 329 329 { 330 330 struct sii902x *sii902x = bridge_to_sii902x(bridge); 331 331
+1 -1
drivers/gpu/drm/bridge/synopsys/dw-hdmi-qp.c
··· 395 395 } 396 396 397 397 static void dw_hdmi_qp_bridge_atomic_disable(struct drm_bridge *bridge, 398 - struct drm_bridge_state *old_state) 398 + struct drm_atomic_state *state) 399 399 { 400 400 struct dw_hdmi_qp *hdmi = bridge->driver_private; 401 401
+1 -1
drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
··· 2945 2945 } 2946 2946 2947 2947 static void dw_hdmi_bridge_atomic_disable(struct drm_bridge *bridge, 2948 - struct drm_bridge_state *old_state) 2948 + struct drm_atomic_state *state) 2949 2949 { 2950 2950 struct dw_hdmi *hdmi = bridge->driver_private; 2951 2951
+4 -6
drivers/gpu/drm/bridge/tc358767.c
··· 1563 1563 } 1564 1564 } 1565 1565 1566 - static void 1567 - tc_dpi_bridge_atomic_disable(struct drm_bridge *bridge, 1568 - struct drm_bridge_state *old_bridge_state) 1566 + static void tc_dpi_bridge_atomic_disable(struct drm_bridge *bridge, 1567 + struct drm_atomic_state *state) 1569 1568 { 1570 1569 struct tc_data *tc = bridge_to_tc(bridge); 1571 1570 int ret; ··· 1600 1601 } 1601 1602 } 1602 1603 1603 - static void 1604 - tc_edp_bridge_atomic_disable(struct drm_bridge *bridge, 1605 - struct drm_bridge_state *old_bridge_state) 1604 + static void tc_edp_bridge_atomic_disable(struct drm_bridge *bridge, 1605 + struct drm_atomic_state *state) 1606 1606 { 1607 1607 struct tc_data *tc = bridge_to_tc(bridge); 1608 1608 int ret;
+1 -1
drivers/gpu/drm/bridge/ti-sn65dsi83.c
··· 665 665 } 666 666 667 667 static void sn65dsi83_atomic_disable(struct drm_bridge *bridge, 668 - struct drm_bridge_state *old_bridge_state) 668 + struct drm_atomic_state *state) 669 669 { 670 670 struct sn65dsi83 *ctx = bridge_to_sn65dsi83(bridge); 671 671 int ret;
+1 -1
drivers/gpu/drm/bridge/ti-sn65dsi86.c
··· 813 813 } 814 814 815 815 static void ti_sn_bridge_atomic_disable(struct drm_bridge *bridge, 816 - struct drm_bridge_state *old_bridge_state) 816 + struct drm_atomic_state *state) 817 817 { 818 818 struct ti_sn65dsi86 *pdata = bridge_to_ti_sn65dsi86(bridge); 819 819
+2 -1
drivers/gpu/drm/bridge/ti-tdp158.c
··· 35 35 gpiod_set_value_cansleep(tdp158->enable, 1); 36 36 } 37 37 38 - static void tdp158_disable(struct drm_bridge *bridge, struct drm_bridge_state *prev) 38 + static void tdp158_disable(struct drm_bridge *bridge, 39 + struct drm_atomic_state *state) 39 40 { 40 41 struct tdp158 *tdp158 = bridge->driver_private; 41 42
+1 -9
drivers/gpu/drm/drm_bridge.c
··· 571 571 encoder = bridge->encoder; 572 572 list_for_each_entry_reverse(iter, &encoder->bridge_chain, chain_node) { 573 573 if (iter->funcs->atomic_disable) { 574 - struct drm_bridge_state *old_bridge_state; 575 - 576 - old_bridge_state = 577 - drm_atomic_get_old_bridge_state(old_state, 578 - iter); 579 - if (WARN_ON(!old_bridge_state)) 580 - return; 581 - 582 - iter->funcs->atomic_disable(iter, old_bridge_state); 574 + iter->funcs->atomic_disable(iter, old_state); 583 575 } else if (iter->funcs->disable) { 584 576 iter->funcs->disable(iter); 585 577 }
+1 -1
drivers/gpu/drm/ingenic/ingenic-drm-drv.c
··· 260 260 } 261 261 262 262 static void ingenic_drm_bridge_atomic_disable(struct drm_bridge *bridge, 263 - struct drm_bridge_state *old_bridge_state) 263 + struct drm_atomic_state *state) 264 264 { 265 265 struct ingenic_drm *priv = drm_device_get_priv(bridge->dev); 266 266 unsigned int var;
+1 -1
drivers/gpu/drm/mediatek/mtk_dp.c
··· 2400 2400 } 2401 2401 2402 2402 static void mtk_dp_bridge_atomic_disable(struct drm_bridge *bridge, 2403 - struct drm_bridge_state *old_state) 2403 + struct drm_atomic_state *state) 2404 2404 { 2405 2405 struct mtk_dp *mtk_dp = mtk_dp_from_bridge(bridge); 2406 2406
+1 -1
drivers/gpu/drm/mediatek/mtk_dsi.c
··· 826 826 } 827 827 828 828 static void mtk_dsi_bridge_atomic_disable(struct drm_bridge *bridge, 829 - struct drm_bridge_state *old_bridge_state) 829 + struct drm_atomic_state *state) 830 830 { 831 831 struct mtk_dsi *dsi = bridge_to_dsi(bridge); 832 832
+1 -1
drivers/gpu/drm/mediatek/mtk_hdmi.c
··· 1309 1309 } 1310 1310 1311 1311 static void mtk_hdmi_bridge_atomic_disable(struct drm_bridge *bridge, 1312 - struct drm_bridge_state *old_bridge_state) 1312 + struct drm_atomic_state *state) 1313 1313 { 1314 1314 struct mtk_hdmi *hdmi = hdmi_ctx_from_bridge(bridge); 1315 1315
+1 -1
drivers/gpu/drm/meson/meson_encoder_cvbs.c
··· 190 190 } 191 191 192 192 static void meson_encoder_cvbs_atomic_disable(struct drm_bridge *bridge, 193 - struct drm_bridge_state *bridge_state) 193 + struct drm_atomic_state *state) 194 194 { 195 195 struct meson_encoder_cvbs *meson_encoder_cvbs = 196 196 bridge_to_meson_encoder_cvbs(bridge);
+1 -1
drivers/gpu/drm/meson/meson_encoder_dsi.c
··· 79 79 } 80 80 81 81 static void meson_encoder_dsi_atomic_disable(struct drm_bridge *bridge, 82 - struct drm_bridge_state *bridge_state) 82 + struct drm_atomic_state *state) 83 83 { 84 84 struct meson_encoder_dsi *meson_encoder_dsi = 85 85 bridge_to_meson_encoder_dsi(bridge);
+1 -1
drivers/gpu/drm/meson/meson_encoder_hdmi.c
··· 249 249 } 250 250 251 251 static void meson_encoder_hdmi_atomic_disable(struct drm_bridge *bridge, 252 - struct drm_bridge_state *bridge_state) 252 + struct drm_atomic_state *state) 253 253 { 254 254 struct meson_encoder_hdmi *encoder_hdmi = bridge_to_meson_encoder_hdmi(bridge); 255 255 struct meson_drm *priv = encoder_hdmi->priv;
+1 -1
drivers/gpu/drm/msm/dp/dp_display.c
··· 1552 1552 } 1553 1553 1554 1554 void msm_dp_bridge_atomic_disable(struct drm_bridge *drm_bridge, 1555 - struct drm_bridge_state *old_bridge_state) 1555 + struct drm_atomic_state *state) 1556 1556 { 1557 1557 struct msm_dp_bridge *msm_dp_bridge = to_dp_bridge(drm_bridge); 1558 1558 struct msm_dp *dp = msm_dp_bridge->msm_dp_display;
+2 -3
drivers/gpu/drm/msm/dp/dp_drm.c
··· 166 166 } 167 167 168 168 static void msm_edp_bridge_atomic_disable(struct drm_bridge *drm_bridge, 169 - struct drm_bridge_state *old_bridge_state) 169 + struct drm_atomic_state *atomic_state) 170 170 { 171 - struct drm_atomic_state *atomic_state = old_bridge_state->base.state; 172 171 struct drm_crtc *crtc; 173 172 struct drm_crtc_state *new_crtc_state = NULL, *old_crtc_state = NULL; 174 173 struct msm_dp_bridge *msm_dp_bridge = to_dp_bridge(drm_bridge); ··· 206 207 } 207 208 208 209 out: 209 - msm_dp_bridge_atomic_disable(drm_bridge, old_bridge_state); 210 + msm_dp_bridge_atomic_disable(drm_bridge, atomic_state); 210 211 } 211 212 212 213 static void msm_edp_bridge_atomic_post_disable(struct drm_bridge *drm_bridge,
+1 -1
drivers/gpu/drm/msm/dp/dp_drm.h
··· 28 28 void msm_dp_bridge_atomic_enable(struct drm_bridge *drm_bridge, 29 29 struct drm_atomic_state *state); 30 30 void msm_dp_bridge_atomic_disable(struct drm_bridge *drm_bridge, 31 - struct drm_bridge_state *old_bridge_state); 31 + struct drm_atomic_state *state); 32 32 void msm_dp_bridge_atomic_post_disable(struct drm_bridge *drm_bridge, 33 33 struct drm_bridge_state *old_bridge_state); 34 34 enum drm_mode_status msm_dp_bridge_mode_valid(struct drm_bridge *bridge,
+1 -1
drivers/gpu/drm/omapdrm/dss/hdmi4.c
··· 409 409 } 410 410 411 411 static void hdmi4_bridge_disable(struct drm_bridge *bridge, 412 - struct drm_bridge_state *bridge_state) 412 + struct drm_atomic_state *state) 413 413 { 414 414 struct omap_hdmi *hdmi = drm_bridge_to_hdmi(bridge); 415 415 unsigned long flags;
+1 -1
drivers/gpu/drm/omapdrm/dss/hdmi5.c
··· 407 407 } 408 408 409 409 static void hdmi5_bridge_disable(struct drm_bridge *bridge, 410 - struct drm_bridge_state *bridge_state) 410 + struct drm_atomic_state *state) 411 411 { 412 412 struct omap_hdmi *hdmi = drm_bridge_to_hdmi(bridge); 413 413 unsigned long flags;
+1 -1
drivers/gpu/drm/renesas/rcar-du/rcar_lvds.c
··· 595 595 } 596 596 597 597 static void rcar_lvds_atomic_disable(struct drm_bridge *bridge, 598 - struct drm_bridge_state *old_bridge_state) 598 + struct drm_atomic_state *state) 599 599 { 600 600 struct rcar_lvds *lvds = bridge_to_rcar_lvds(bridge); 601 601
+1 -1
drivers/gpu/drm/renesas/rcar-du/rcar_mipi_dsi.c
··· 816 816 } 817 817 818 818 static void rcar_mipi_dsi_atomic_disable(struct drm_bridge *bridge, 819 - struct drm_bridge_state *old_bridge_state) 819 + struct drm_atomic_state *state) 820 820 { 821 821 struct rcar_mipi_dsi *dsi = bridge_to_rcar_mipi_dsi(bridge); 822 822
+1 -1
drivers/gpu/drm/renesas/rz-du/rzg2l_mipi_dsi.c
··· 567 567 } 568 568 569 569 static void rzg2l_mipi_dsi_atomic_disable(struct drm_bridge *bridge, 570 - struct drm_bridge_state *old_bridge_state) 570 + struct drm_atomic_state *state) 571 571 { 572 572 struct rzg2l_mipi_dsi *dsi = bridge_to_rzg2l_mipi_dsi(bridge); 573 573
+1 -1
drivers/gpu/drm/stm/lvds.c
··· 1016 1016 } 1017 1017 1018 1018 static void lvds_atomic_disable(struct drm_bridge *bridge, 1019 - struct drm_bridge_state *old_bridge_state) 1019 + struct drm_atomic_state *state) 1020 1020 { 1021 1021 struct stm_lvds *lvds = bridge_to_stm_lvds(bridge); 1022 1022
+1 -1
drivers/gpu/drm/vc4/vc4_dsi.c
··· 800 800 } 801 801 802 802 static void vc4_dsi_bridge_disable(struct drm_bridge *bridge, 803 - struct drm_bridge_state *state) 803 + struct drm_atomic_state *state) 804 804 { 805 805 struct vc4_dsi *dsi = bridge_to_vc4_dsi(bridge); 806 806 u32 disp0_ctrl;
+3 -1
drivers/gpu/drm/xlnx/zynqmp_dp.c
··· 1625 1625 } 1626 1626 1627 1627 static void zynqmp_dp_bridge_atomic_disable(struct drm_bridge *bridge, 1628 - struct drm_bridge_state *old_bridge_state) 1628 + struct drm_atomic_state *state) 1629 1629 { 1630 + struct drm_bridge_state *old_bridge_state = drm_atomic_get_old_bridge_state(state, 1631 + bridge); 1630 1632 struct zynqmp_dp *dp = bridge_to_dp(bridge); 1631 1633 1632 1634 mutex_lock(&dp->lock);
+1 -1
include/drm/drm_bridge.h
··· 342 342 * The @atomic_disable callback is optional. 343 343 */ 344 344 void (*atomic_disable)(struct drm_bridge *bridge, 345 - struct drm_bridge_state *old_bridge_state); 345 + struct drm_atomic_state *state); 346 346 347 347 /** 348 348 * @atomic_post_disable: