From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtpout-03.galae.net (smtpout-03.galae.net [185.246.85.4]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5177A3DA5A3 for ; Tue, 25 Aug 2026 10:10:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=185.246.85.4 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1787652636; cv=none; b=ImiTp6i6BeEgCxNz0V3/fPwuNJE/A7jfN6Lt6FME6K+sJ8TT6SzYc9qDqE3XbdhGQZecnB6Ndw9wcyJM81IU3HRivFnRio/b8+mbS8geApaMCuVHuaxn4+qBHzi2gO3WEI/g4KktoJ+W6xmjJT1kXosaT9eg9U8PkFk5elXovoE= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1787652636; c=relaxed/simple; bh=A3uzBOd5wlUzsz0Xlqf9WXsppsfe3L0H3tU/qqA/4Cs=; h=From:Subject:Date:Message-Id:MIME-Version:Content-Type:To:Cc; b=lnc/sGIpiml1Ktn9yK1x+4klGOTyiUts/yNReyOhEjx75nHhydSKny/8JpH8R+Ap9HJSfy3Vz2CL+ZUeBtJsDxwjhIVpicrDD3dle9XhcNFboEUtysKcRc/evkLouuBdOvQ1xT+9qcS9hOs4AGLkXHJixOEXdQHfG25otxWGkiI= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=bootlin.com; spf=pass smtp.mailfrom=bootlin.com; dkim=pass (2048-bit key) header.d=bootlin.com header.i=@bootlin.com header.b=RehtpQ/J; arc=none smtp.client-ip=185.246.85.4 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=bootlin.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=bootlin.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bootlin.com header.i=@bootlin.com header.b="RehtpQ/J" Received: from smtpout-01.galae.net (smtpout-01.galae.net [212.83.139.233]) by smtpout-03.galae.net (Postfix) with ESMTPS id 52F144E412E7; Tue, 25 Aug 2026 10:10:31 +0000 (UTC) Received: from mail.galae.net (mail.galae.net [212.83.136.155]) by smtpout-01.galae.net (Postfix) with ESMTPS id 1DF78604C4; Tue, 25 Aug 2026 10:10:31 +0000 (UTC) Received: from [127.0.0.1] (localhost [127.0.0.1]) by localhost (Mailerdaemon) with ESMTPSA id 7425E11C7A3C3; Tue, 25 Aug 2026 12:09:58 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=dkim; t=1787652628; h=from:subject:date:message-id:to:cc:mime-version:content-type: content-transfer-encoding; bh=1Zsse2VsTNoktBh6xLOvRKZr+p3+dbWbTlB3AV5JhIU=; b=RehtpQ/JKe3cg0IhoEUR42WWUeus87fvj0hZXYD0Qo0/ZovBRoMNe3t2z9bhkb52HKib8b iVevKf8JFZ/RsNX0DN4mxfrKsQBDJWpxMQuBCg+nTL+kmIzRdbNEvT0OqpugFwbbh+Ol4T YHl1YDvpfezCjhUwadRCWctJ0xvZI88YP06Nk9+hu3bN8rAxBnGRlgslrPlM3YWGpSkk/4 FKNURblN9e2qHecnzAqxqyTntOJPv3I/X4Qz/EIEuLJb6D2rb0JJBshDeiQ8lkNY7wEw5h /QHf3xo6eu8teOd6O9EURVzvsuBRtqoG3AjyPGb5OkSObCsehBoy7WBq/QAaiQ== From: Luca Ceresoli Subject: [PATCH v2 00/12] drm/bridge: Kconfig: cleanup DRM_PANEL usage Date: Tue, 25 Aug 2026 12:09:33 +0200 Message-Id: <20260825-drm-bridge-drm_panel-cleanup-v2-0-c6c88ba7ffd2@bootlin.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit X-B4-Tracking: v=1; b=H4sIAAAAAAAC/42NQQ6CMBREr0K6tua3IhZW3sMQU9qvfAMtaYFoC He34AXczctM3iwsYiCMrMoWFnCmSN4lkIeMmVa7J3KyiZkEWYASktvQ8yaQTU2K90E77LjpULt p4FCiPRsjoMwVS4oh4IPeu/5W/zhOzQvNuDm3RUtx9OGz/89i2/15NQsOHKwqLqccS1D62ng/d uSOxvesXtf1C/VUs6DcAAAA X-Change-ID: 20260812-drm-bridge-drm_panel-cleanup-09ed5cc10948 To: Andrzej Hajda , Neil Armstrong , Robert Foss , Laurent Pinchart , Jonas Karlman , Jernej Skrabec , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , Matthias Brugger , AngeloGioacchino Del Regno Cc: Hui Pu , Ian Ray , Thomas Petazzoni , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, Luca Ceresoli , Peter Senna Tschudin , Martyn Welch , Andy Yan , Marek Szyprowski , Marek Vasut , Jagan Teki , Christopher Vollo , Douglas Anderson , Sandeep Panda , Franz Schnyder , John Ripple , Michael Walle , Sudarshan Shetty , Alexander Stein , Herve Codina , Esben Haabendal , Sean Paul , Vincent Palatin , Jitao Shi , CK Hu , Pin-yen Lin , Tony Lindgren , Vinay Simha BN , Maoyi Xie , Andy Yan , Andrey Gusakov , Tomi Valkeinen , Peter Ujfalusi , Svyatoslav Ryhel , Enric Balletbo i Serra X-Mailer: b4 0.16.0 X-Last-TLS-Session-Version: TLSv1.3 As a cleanup in preparation for making every drm_panel create a panel_bridge, remove unnecessary or wrong usage of 'depends on DRM_PANEL' and 'select DRM_PANEL' from drivers/gpu/drm/bridge/Kconfig. == Grand plan This is part of the work to support hotplug of DRM bridges. The grand plan was discussed in [0]. Here's the work breakdown (➜ marks the current series): 1. ➜ add refcounting to DRM bridges struct drm_bridge, based on devm_drm_bridge_alloc() A. ✔ add new alloc API and refcounting (v6.16) B. ✔ convert all bridge drivers to new API (v6.17) C. ✔ kunit tests (v6.17) D. ✔ add get/put to drm_bridge_add/remove() + attach/detach() and warn on old allocation pattern (v6.17) E. ➜ add get/put on drm_bridge accessors 1. ✔ drm_bridge_chain_get_first_bridge(), add cleanup action (v6.18) 2. ✔ drm_bridge_get_prev_bridge() (v6.18) 3. ✔ drm_bridge_get_next_bridge() (v6.19) 4. ✔ drm_for_each_bridge_in_chain() (v6.19) 5. ✔ drm_bridge_connector_init (v6.19) 6. ✔ protect encoder bridge chain with a mutex (v7.2) 7. ✔ of_drm_find_bridge a. ✔ add of_drm_get_bridge() (v7.0), convert basic direct users (v7.0-v7.1) b. ✔ convert direct of_drm_get_bridge() users, part 2 (v7.0) c. ✔ convert direct of_drm_get_bridge() users, part 3 (v7.0) d. ✔ convert direct of_drm_get_bridge() users, part 4 (v7.1-v7.2) e. ✔ bridge-only drm_of_find_panel_or_bridge() users (v7.2) 8. ➜ panel_bridge lifetime a. ➜ cleanup DRM_PANEL in bridge drivers b. add a panel_bridge to every panel 9. ✔ enforce drm_bridge_add before drm_bridge_attach (v6.19) F. ✔ debugfs improvements 1. ✔ add top-level 'bridges' file (v6.16) 2. ✔ show refcount and list lingering bridges (v6.19) 2. ✔ handle gracefully atomic updates during bridge removal A. ✔ Add drm_bridge_enter/exit() to protect device resources (v7.0) B. ✔ Add drm_bridge_clear_and_put() (v7.1) 3. … DSI host-device driver interaction 4. ✔ removing the need for the "always-disconnected" connector 5. ✔ Migrate i.MX LCDIF driver to bridge-connector (v7.2) 6. … DRM bridge hotplug A. … Bridge hotplug management in the DRM core 1. ✔ bridge-connector: attach encoder to the connector (v7.2) 2. … drm bridge hotplug B. Device tree description [0] https://lore.kernel.org/lkml/20250206-hotplug-drm-bridge-v6-0-9d6f2c9c3058@bootlin.com/#t Signed-off-by: Luca Ceresoli --- Changes in v2: - Added maintainers and recent authors to per-patch Cc list (these are not added automatically by get-maintainers because the patches touch only the Kconfig file) - Added review trailer - No changes to commit messages and patch content - Link to v1: https://patch.msgid.link/20260812-drm-bridge-drm_panel-cleanup-v1-0-0d86734e908a@bootlin.com --- Luca Ceresoli (12): drm/bridge: megachips-stdpxxxx-ge-b850v3-fw: don't select unused DRM_PANEL drm/bridge: tc358764: don't select unused DRM_PANEL drm/bridge: ti-dlpc3433: don't depend on DRM_PANEL drm/bridge: ti-sn65dsi86: don't select unused DRM_PANEL drm/bridge: ti-sn65dsi83: select DRM_PANEL_BRIDGE drm/bridge: nxp-ptn3460: select DRM_PANEL_BRIDGE drm/bridge: parade-ps8622: select DRM_PANEL_BRIDGE drm/bridge: parade-ps8640: select DRM_PANEL_BRIDGE drm/bridge: tc358775: select DRM_PANEL_BRIDGE drm/bridge: tc358767: select DRM_PANEL_BRIDGE drm/bridge: tc358768: select DRM_PANEL_BRIDGE drm/bridge: ssd2825: select DRM_PANEL_BRIDGE drivers/gpu/drm/bridge/Kconfig | 21 +++++++++------------ 1 file changed, 9 insertions(+), 12 deletions(-) --- base-commit: e935b7289ea925084ab342a141b153cc3e875391 change-id: 20260812-drm-bridge-drm_panel-cleanup-09ed5cc10948 Best regards, -- Luca Ceresoli, Bootlin Embedded Linux and Kernel engineering https://bootlin.com