From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 219F2CD8C92 for ; Mon, 8 Jun 2026 14:36:47 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Cc:To:MIME-Version:Message-Id:Date: Subject:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=ydAYizqf4YO1qZou/rg1BBYuenlXyckX7rPjJ+elANA=; b=Ral23hnY0dSK/x Zx6+CBjkOyi+Xn1Zr2kvAyYs6wL6SCvadWr8tNhc652JzYdJjR2rJ64P9JpEq+iovU58z5Lp3NiXd 79TwusEmDrW447BZGeQnpHV1FErlmNtKcNQKWoPq4Xv80Y0/Nz9/qFkKeJLNj62YQiCbHtieig+2F nxEgM3b3VHHYrXpoKxLyaMSPsfqNPJXWYNtj/cwlO2+zryI6uTa7w0wKZyb4SqgxbgDO8gJzF0gT2 oFMxmImoErAdOQGcQ8LTM89rjgQQDBLqez/T9gzF+7YUFpuurWUG9/XAXgXquMe8k6HM/HjcFRk91 EVfSi///ogOXrfab/dWg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1wWb5Y-00000003lwe-21rD; Mon, 08 Jun 2026 14:36:28 +0000 Received: from sea.source.kernel.org ([172.234.252.31]) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1wWb5X-00000003lwM-08EI; Mon, 08 Jun 2026 14:36:27 +0000 Received: from smtp.kernel.org (quasi.space.kernel.org [100.103.45.18]) by sea.source.kernel.org (Postfix) with ESMTP id 56C30434B9; Mon, 8 Jun 2026 14:36:26 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 94F3B1F00893; Mon, 8 Jun 2026 14:36:25 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1780929386; bh=GsTDq+HRxdw3n234ip6g0cWAcx0LCpCRxviD69VC1nw=; h=From:Subject:Date:To:Cc; b=jVnuNlwD7+5kM/vXtwQu5pGlBd6vNrkwn7wCZek0J9x9DjiUyJQalqt9WWZPPByWw vKDEY6jHTCFOOc8i9UBI8b0Hd074e/Z59vw+KuksMMZcBje9EC9O78iF8GstWD0b94 sFbwcdxzbtGu9wzWY1gGZWZbC/nE5mZAcity1h8v2ZooPPWxLQY+0O4njtzAg+VTIw izp1WeBIlztyYcNma8Iha7Fn5DF/FnU1rdiRjGLb0ec+Gu9c2NdhgQoi2tUY9cyx/E pAyYHNui7BbXc5zkpWDtXXsDAAGKH8u1g46mGIZbvYWgmXNU2XPfe0X1lnJw9CC7h4 z7bnbmWYcoc8Q== From: Maxime Ripard Subject: [PATCH v2 00/78] drm/bridge: Convert all reset users to create_state Date: Mon, 08 Jun 2026 16:35:42 +0200 Message-Id: <20260608-drm-no-more-bridge-reset-v2-0-0a91018bf886@kernel.org> MIME-Version: 1.0 X-B4-Tracking: v=1; b=H4sIAAAAAAAC/42NQQ6CMBBFr0Jm7ZgyiBBX3sOwADrCRGnNlDQa0 rtbOYHL9/P/+xsEVuEAl2ID5ShBvMtAhwLGuXcTo9jMQIbOpq4MWl3QeVy8Mg4qNjeUA6849mR szUTNyUCev5Tv8t7Vty7zLGH1+tmfYvlL/5DGEg22TW1bam1VDuP1wer4efQ6QZdS+gJvYyRZw QAAAA== X-Change-ID: 20260530-drm-no-more-bridge-reset-ca20d5e22740 To: Andrzej Hajda , Neil Armstrong , Robert Foss , Laurent Pinchart , Jonas Karlman , Jernej Skrabec , Luca Ceresoli , Maarten Lankhorst , Thomas Zimmermann , David Airlie , Simona Vetter Cc: Dmitry Baryshkov , dri-devel@lists.freedesktop.org, Maxime Ripard , Laurent Pinchart , Jagan Teki , Liu Ying , Frank Li , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, Andy Yan , Phong LE , Douglas Anderson , Inki Dae , Marek Szyprowski , Philipp Zabel , Paul Cercueil , linux-mips@vger.kernel.org, Chun-Kuang Hu , Matthias Brugger , AngeloGioacchino Del Regno , linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org, Kevin Hilman , Jerome Brunet , Martin Blumenstingl , linux-amlogic@lists.infradead.org, Tomi Valkeinen , Geert Uytterhoeven , Magnus Damm , Kieran Bingham , linux-renesas-soc@vger.kernel.org, Biju Das , Heiko Stuebner , Sandy Huang , linux-rockchip@lists.infradead.org, Yannick Fertre , Raphael Gallais-Pou , Philippe Cornu , Maxime Coquelin , Alexandre Torgue , linux-stm32@st-md-mailman.stormreply.com, Jyri Sarha , Tomi Valkeinen , Dave Stevenson , =?utf-8?q?Ma=C3=ADra_Canal?= , Raspberry Pi Kernel Maintenance , Icenowy Zheng , Laurent Pinchart , Michal Simek X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=10123; i=mripard@kernel.org; h=from:subject:message-id; bh=jEZ6io4SvhHK/SRBUKePCYelb7J9N2xPGLcmhkmnMN0=; b=owGbwMvMwCmsHn9OcpHtvjLG02pJDFlql10nV2/s2FIgw/340K0CoxX/FRUf3jx4U7jK/vCC5 8WcbQfZO6ayMAhzMsiKKbI8kQk7vbx9cZWD/cofMHNYmUCGMHBxCsBEJjsz1gexSvS97eljF/ml s21RavCBs27RnlMDo4pNT32etIAlLCJ9WbIy3+8bky8/tUhhe/PnAGN9pJuulKjs4UCZNec5/ut HHiiwkC+QkvLYefre0vXv+db+jnt58VXVlZJHp865s+7gTj0MAA== X-Developer-Key: i=mripard@kernel.org; a=openpgp; fpr=BE5675C37E818C8B5764241C254BCFC56BF6CE8D X-BeenThere: linux-amlogic@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-amlogic" Errors-To: linux-amlogic-bounces+linux-amlogic=archiver.kernel.org@lists.infradead.org Hi, All the bridges use reset to create a blank state only and don't use it to reset the hardware at all. This is what the new atomic_create_state is exactly supposed to be doing, so we can convert all existing bridge users to it, and remove the reset hook and helpers. Let me know what you think, Maxime Signed-off-by: Maxime Ripard --- Changes in v2: - Split the return value fix for cadence bridges into their own patches - Fix bisection - Collect tags - Link to v1: https://lore.kernel.org/r/20260530-drm-no-more-bridge-reset-v1-0-875d828d31bc@kernel.org --- Maxime Ripard (78): drm/bridge: cdns-dsi: Return an error pointer on allocation failure drm/bridge: cdns-mhdp8546: Return an error pointer on allocation failure drm/atomic-state-helper: Rename __drm_atomic_helper_bridge_reset() drm/atomic-state-helper: Reorder __drm_atomic_helper_bridge_state_init() arguments drm/atomic-state-helper: Drop memset from __drm_atomic_helper_bridge_state_init() drm/bridge: Add new atomic_create_state callback drm/atomic-state-helper: Add drm_atomic_helper_bridge_create_state() drm/bridge: adv7511: Switch to atomic_create_state drm/bridge: analogix_dp: Switch to atomic_create_state drm/bridge: anx7625: Switch to atomic_create_state drm/bridge: chipone-icn6211: Switch to atomic_create_state drm/bridge: display-connector: Switch to atomic_create_state drm/bridge: fsl-ldb: Switch to atomic_create_state drm/bridge: imx8mp-hdmi-pvi: Switch to atomic_create_state drm/bridge: imx8qm-ldb: Switch to atomic_create_state drm/bridge: imx8qxp-ldb: Switch to atomic_create_state drm/bridge: imx8qxp-pixel-combiner: Switch to atomic_create_state drm/bridge: imx8qxp-pixel-link: Switch to atomic_create_state drm/bridge: imx8qxp-pxl2dpi: Switch to atomic_create_state drm/bridge: inno-hdmi: Switch to atomic_create_state drm/bridge: ite-it6263: Switch to atomic_create_state drm/bridge: ite-it6505: Switch to atomic_create_state drm/bridge: ite-it66121: Switch to atomic_create_state drm/bridge: lontium-lt9211: Switch to atomic_create_state drm/bridge: lontium-lt9611: Switch to atomic_create_state drm/bridge: lvds-codec: Switch to atomic_create_state drm/bridge: nwl-dsi: Switch to atomic_create_state drm/bridge: panel: Switch to atomic_create_state drm/bridge: parade-ps8640: Switch to atomic_create_state drm/bridge: samsung-dsim: Switch to atomic_create_state drm/bridge: sii902x: Switch to atomic_create_state drm/bridge: ssd2825: Switch to atomic_create_state drm/bridge: dw-dp: Switch to atomic_create_state drm/bridge: dw-hdmi-qp: Switch to atomic_create_state drm/bridge: dw-hdmi: Switch to atomic_create_state drm/bridge: dw-mipi-dsi: Switch to atomic_create_state drm/bridge: dw-mipi-dsi2: Switch to atomic_create_state drm/bridge: tc358762: Switch to atomic_create_state drm/bridge: tc358767: Switch to atomic_create_state drm/bridge: tc358768: Switch to atomic_create_state drm/bridge: tc358775: Switch to atomic_create_state drm/bridge: ti-dlpc3433: Switch to atomic_create_state drm/bridge: ti-sn65dsi83: Switch to atomic_create_state drm/bridge: ti-sn65dsi86: Switch to atomic_create_state drm/bridge: ti-tdp158: Switch to atomic_create_state drm/bridge: ti-tfp410: Switch to atomic_create_state drm/imx: parallel-display: Switch to atomic_create_state drm/ingenic: Switch to atomic_create_state drm/mediatek: dp: Switch to atomic_create_state drm/mediatek: dpi: Switch to atomic_create_state drm/mediatek: dsi: Switch to atomic_create_state drm/mediatek: hdmi: Switch to atomic_create_state drm/mediatek: hdmi_v2: Switch to atomic_create_state drm/meson: encoder_cvbs: Switch to atomic_create_state drm/meson: encoder_dsi: Switch to atomic_create_state drm/meson: encoder_hdmi: Switch to atomic_create_state drm/msm: dp: Switch to atomic_create_state drm/msm: hdmi: Switch to atomic_create_state drm/omap: hdmi4: Switch to atomic_create_state drm/omap: hdmi5: Switch to atomic_create_state drm/renesas: rcar-du: lvds: Switch to atomic_create_state drm/renesas: rcar-du: mipi_dsi: Switch to atomic_create_state drm/renesas: rz-du: mipi_dsi: Switch to atomic_create_state drm/rockchip: cdn-dp: Switch to atomic_create_state drm/rockchip: rk3066_hdmi: Switch to atomic_create_state drm/rockchip: lvds: Switch to atomic_create_state drm/stm: lvds: Switch to atomic_create_state drm/tests: bridge: Switch to atomic_create_state drm/tidss: encoder: Switch to atomic_create_state drm/tidss: oldi: Switch to atomic_create_state drm/vc4: dsi: Switch to atomic_create_state drm/verisilicon: Switch to atomic_create_state drm/xlnx: zynqmp_dp: Switch to atomic_create_state drm/atomic-state-helper: Remove drm_atomic_helper_bridge_reset() drm/bridge: cdns-dsi: Use __drm_atomic_helper_bridge_state_init() drm/bridge: cdns-dsi: Switch to atomic_create_state drm/bridge: cdns-mhdp8546: Switch to atomic_create_state drm/bridge: Remove atomic_reset support drivers/gpu/drm/bridge/adv7511/adv7511_drv.c | 2 +- drivers/gpu/drm/bridge/analogix/analogix_dp_core.c | 2 +- drivers/gpu/drm/bridge/analogix/anx7625.c | 2 +- drivers/gpu/drm/bridge/cadence/cdns-dsi-core.c | 9 +++--- .../gpu/drm/bridge/cadence/cdns-mhdp8546-core.c | 8 ++--- drivers/gpu/drm/bridge/chipone-icn6211.c | 2 +- drivers/gpu/drm/bridge/display-connector.c | 2 +- drivers/gpu/drm/bridge/fsl-ldb.c | 2 +- drivers/gpu/drm/bridge/imx/imx8mp-hdmi-pvi.c | 2 +- drivers/gpu/drm/bridge/imx/imx8qm-ldb.c | 2 +- drivers/gpu/drm/bridge/imx/imx8qxp-ldb.c | 2 +- .../gpu/drm/bridge/imx/imx8qxp-pixel-combiner.c | 2 +- drivers/gpu/drm/bridge/imx/imx8qxp-pixel-link.c | 2 +- drivers/gpu/drm/bridge/imx/imx8qxp-pxl2dpi.c | 2 +- drivers/gpu/drm/bridge/inno-hdmi.c | 2 +- drivers/gpu/drm/bridge/ite-it6263.c | 2 +- drivers/gpu/drm/bridge/ite-it6505.c | 2 +- drivers/gpu/drm/bridge/ite-it66121.c | 2 +- drivers/gpu/drm/bridge/lontium-lt9211.c | 2 +- drivers/gpu/drm/bridge/lontium-lt9611.c | 2 +- drivers/gpu/drm/bridge/lvds-codec.c | 2 +- drivers/gpu/drm/bridge/nwl-dsi.c | 2 +- drivers/gpu/drm/bridge/panel.c | 2 +- drivers/gpu/drm/bridge/parade-ps8640.c | 2 +- drivers/gpu/drm/bridge/samsung-dsim.c | 2 +- drivers/gpu/drm/bridge/sii902x.c | 2 +- drivers/gpu/drm/bridge/ssd2825.c | 2 +- drivers/gpu/drm/bridge/synopsys/dw-dp.c | 2 +- drivers/gpu/drm/bridge/synopsys/dw-hdmi-qp.c | 2 +- drivers/gpu/drm/bridge/synopsys/dw-hdmi.c | 2 +- drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi.c | 2 +- drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi2.c | 2 +- drivers/gpu/drm/bridge/tc358762.c | 2 +- drivers/gpu/drm/bridge/tc358767.c | 4 +-- drivers/gpu/drm/bridge/tc358768.c | 2 +- drivers/gpu/drm/bridge/tc358775.c | 2 +- drivers/gpu/drm/bridge/ti-dlpc3433.c | 2 +- drivers/gpu/drm/bridge/ti-sn65dsi83.c | 2 +- drivers/gpu/drm/bridge/ti-sn65dsi86.c | 2 +- drivers/gpu/drm/bridge/ti-tdp158.c | 2 +- drivers/gpu/drm/bridge/ti-tfp410.c | 2 +- drivers/gpu/drm/drm_atomic_state_helper.c | 34 ++++++++++++---------- drivers/gpu/drm/drm_bridge.c | 4 +-- drivers/gpu/drm/imx/ipuv3/parallel-display.c | 2 +- drivers/gpu/drm/ingenic/ingenic-drm-drv.c | 2 +- drivers/gpu/drm/mediatek/mtk_dp.c | 2 +- drivers/gpu/drm/mediatek/mtk_dpi.c | 2 +- drivers/gpu/drm/mediatek/mtk_dsi.c | 2 +- drivers/gpu/drm/mediatek/mtk_hdmi.c | 2 +- drivers/gpu/drm/mediatek/mtk_hdmi_v2.c | 2 +- drivers/gpu/drm/meson/meson_encoder_cvbs.c | 2 +- drivers/gpu/drm/meson/meson_encoder_dsi.c | 2 +- drivers/gpu/drm/meson/meson_encoder_hdmi.c | 2 +- drivers/gpu/drm/msm/dp/dp_drm.c | 4 +-- drivers/gpu/drm/msm/hdmi/hdmi_bridge.c | 2 +- drivers/gpu/drm/omapdrm/dss/hdmi4.c | 2 +- drivers/gpu/drm/omapdrm/dss/hdmi5.c | 2 +- drivers/gpu/drm/renesas/rcar-du/rcar_lvds.c | 2 +- drivers/gpu/drm/renesas/rcar-du/rcar_mipi_dsi.c | 2 +- drivers/gpu/drm/renesas/rz-du/rzg2l_mipi_dsi.c | 2 +- drivers/gpu/drm/rockchip/cdn-dp-core.c | 2 +- drivers/gpu/drm/rockchip/rk3066_hdmi.c | 2 +- drivers/gpu/drm/rockchip/rockchip_lvds.c | 2 +- drivers/gpu/drm/stm/lvds.c | 2 +- drivers/gpu/drm/tests/drm_bridge_test.c | 2 +- drivers/gpu/drm/tidss/tidss_encoder.c | 2 +- drivers/gpu/drm/tidss/tidss_oldi.c | 2 +- drivers/gpu/drm/vc4/vc4_dsi.c | 2 +- drivers/gpu/drm/verisilicon/vs_bridge.c | 4 +-- drivers/gpu/drm/xlnx/zynqmp_dp.c | 2 +- include/drm/drm_atomic_state_helper.h | 6 ++-- include/drm/drm_bridge.h | 33 +++++++-------------- 72 files changed, 112 insertions(+), 120 deletions(-) --- base-commit: 60dc0946bbad3eef8bc66a5a8b09b98dbc6e09c0 change-id: 20260530-drm-no-more-bridge-reset-ca20d5e22740 Best regards, -- Maxime Ripard _______________________________________________ linux-amlogic mailing list linux-amlogic@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-amlogic