From: Maxime Ripard Date: Mon, 23 Feb 2026 09:09:45 +0000 (+0100) Subject: Merge drm/drm-fixes into drm-misc-fixes X-Git-Tag: ceph-for-7.0-rc4~88^2~2^2~13 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=c17ee635fd3a482b2ad2bf5e269755c2eae5f25e;p=ceph-client.git Merge drm/drm-fixes into drm-misc-fixes 7.0-rc1 was just released, let's merge it to kick the new release cycle. Signed-off-by: Maxime Ripard --- c17ee635fd3a482b2ad2bf5e269755c2eae5f25e diff --cc drivers/gpu/drm/bridge/samsung-dsim.c index ad8c6aa49d48,930aaa659c97..ec632f268644 --- a/drivers/gpu/drm/bridge/samsung-dsim.c +++ b/drivers/gpu/drm/bridge/samsung-dsim.c @@@ -1963,9 -1961,12 +1969,12 @@@ of_find_panel_or_bridge if (!(device->mode_flags & MIPI_DSI_MODE_VIDEO)) { ret = samsung_dsim_register_te_irq(dsi, &device->dev); if (ret) - return ret; + goto err_remove_bridge; } + // The next bridge can be used by host_ops->attach + dsi->bridge.next_bridge = drm_bridge_get(next_bridge); + if (pdata->host_ops && pdata->host_ops->attach) { ret = pdata->host_ops->attach(dsi, device); if (ret) @@@ -1978,12 -1979,18 +1987,15 @@@ return 0; - err_unregister_te_irq: + err_release_next_bridge: + drm_bridge_put(dsi->bridge.next_bridge); + dsi->bridge.next_bridge = NULL; - return ret; -} + -static void samsung_dsim_unregister_te_irq(struct samsung_dsim *dsi) -{ - if (dsi->te_gpio) { - free_irq(gpiod_to_irq(dsi->te_gpio), dsi); - gpiod_put(dsi->te_gpio); - } + if (!(device->mode_flags & MIPI_DSI_MODE_VIDEO)) + samsung_dsim_unregister_te_irq(dsi); +err_remove_bridge: + drm_bridge_remove(&dsi->bridge); + return ret; } static int samsung_dsim_host_detach(struct mipi_dsi_host *host,