From nobody Fri Dec 19 01:51:17 2025 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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 32C70C83F2E for ; Thu, 31 Aug 2023 08:09:56 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240375AbjHaIJ5 (ORCPT ); Thu, 31 Aug 2023 04:09:57 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60738 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232058AbjHaIJz (ORCPT ); Thu, 31 Aug 2023 04:09:55 -0400 Received: from relmlie6.idc.renesas.com (relmlor2.renesas.com [210.160.252.172]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 18143185 for ; Thu, 31 Aug 2023 01:09:51 -0700 (PDT) X-IronPort-AV: E=Sophos;i="6.02,216,1688396400"; d="scan'208";a="178287314" Received: from unknown (HELO relmlir5.idc.renesas.com) ([10.200.68.151]) by relmlie6.idc.renesas.com with ESMTP; 31 Aug 2023 17:09:51 +0900 Received: from localhost.localdomain (unknown [10.226.92.179]) by relmlir5.idc.renesas.com (Postfix) with ESMTP id B69F84010DFB; Thu, 31 Aug 2023 17:09:46 +0900 (JST) From: Biju Das To: Andrzej Hajda , Neil Armstrong , Robert Foss , David Airlie , Daniel Vetter Cc: Biju Das , Laurent Pinchart , Jonas Karlman , Jernej Skrabec , Douglas Anderson , =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= , Zhu Wang , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, Andy Shevchenko , Laurent Pinchart , Helen Koike Subject: [PATCH v6 1/4] drm/bridge/analogix/anx78xx: Drop ID table Date: Thu, 31 Aug 2023 09:09:35 +0100 Message-Id: <20230831080938.47454-2-biju.das.jz@bp.renesas.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230831080938.47454-1-biju.das.jz@bp.renesas.com> References: <20230831080938.47454-1-biju.das.jz@bp.renesas.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" The driver has an ID table, but it uses the wrong API for retrieving match data and that will lead to a crash, if it is instantiated by user space or using ID. From this, there is no user for the ID table and let's drop it from the driver as it saves some memory. Signed-off-by: Biju Das Reviewed-by: Douglas Anderson Reviewed-by: Laurent Pinchart Reviewed-by: Andy Shevchenko Reviewed-by: Helen Koike --- v5->v6: * No change. v4->v5: * Added Rb tag from Andy and Helen. v3->v4: * Added Rb tag from Laurent and Douglas Anderson. v2->v3: * Updated commit header. v1->v2: * Dropped ID table support. --- drivers/gpu/drm/bridge/analogix/analogix-anx78xx.c | 7 ------- 1 file changed, 7 deletions(-) diff --git a/drivers/gpu/drm/bridge/analogix/analogix-anx78xx.c b/drivers/g= pu/drm/bridge/analogix/analogix-anx78xx.c index 800555aef97f..6169db73d2fe 100644 --- a/drivers/gpu/drm/bridge/analogix/analogix-anx78xx.c +++ b/drivers/gpu/drm/bridge/analogix/analogix-anx78xx.c @@ -1367,12 +1367,6 @@ static void anx78xx_i2c_remove(struct i2c_client *cl= ient) kfree(anx78xx->edid); } =20 -static const struct i2c_device_id anx78xx_id[] =3D { - { "anx7814", 0 }, - { /* sentinel */ } -}; -MODULE_DEVICE_TABLE(i2c, anx78xx_id); - static const struct of_device_id anx78xx_match_table[] =3D { { .compatible =3D "analogix,anx7808", .data =3D anx7808_i2c_addresses }, { .compatible =3D "analogix,anx7812", .data =3D anx781x_i2c_addresses }, @@ -1389,7 +1383,6 @@ static struct i2c_driver anx78xx_driver =3D { }, .probe =3D anx78xx_i2c_probe, .remove =3D anx78xx_i2c_remove, - .id_table =3D anx78xx_id, }; module_i2c_driver(anx78xx_driver); =20 --=20 2.25.1 From nobody Fri Dec 19 01:51:17 2025 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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 00D5CC83F10 for ; Thu, 31 Aug 2023 08:10:07 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S244115AbjHaIKI (ORCPT ); Thu, 31 Aug 2023 04:10:08 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:48494 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S242791AbjHaIKF (ORCPT ); Thu, 31 Aug 2023 04:10:05 -0400 Received: from relmlie6.idc.renesas.com (relmlor2.renesas.com [210.160.252.172]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 5AFFFCE7 for ; Thu, 31 Aug 2023 01:09:58 -0700 (PDT) X-IronPort-AV: E=Sophos;i="6.02,216,1688396400"; d="scan'208";a="178287328" Received: from unknown (HELO relmlir5.idc.renesas.com) ([10.200.68.151]) by relmlie6.idc.renesas.com with ESMTP; 31 Aug 2023 17:09:58 +0900 Received: from localhost.localdomain (unknown [10.226.92.179]) by relmlir5.idc.renesas.com (Postfix) with ESMTP id 780704010DFE; Thu, 31 Aug 2023 17:09:52 +0900 (JST) From: Biju Das To: Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , Andrzej Hajda , Neil Armstrong , Robert Foss , David Airlie , Daniel Vetter Cc: Biju Das , Laurent Pinchart , Jonas Karlman , Jernej Skrabec , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, Andy Shevchenko , Douglas Anderson , Laurent Pinchart Subject: [PATCH v6 2/4] drm/bridge: Drop conditionals around of_node pointers Date: Thu, 31 Aug 2023 09:09:36 +0100 Message-Id: <20230831080938.47454-3-biju.das.jz@bp.renesas.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230831080938.47454-1-biju.das.jz@bp.renesas.com> References: <20230831080938.47454-1-biju.das.jz@bp.renesas.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" This patch is based on commit c9e358dfc4a8 ("driver-core: remove conditionals around devicetree pointers"). Having conditional around the of_node pointer of the drm_bridge structure turns out to make driver code use ugly #ifdef blocks. Drop the conditionals to simplify drivers. While this slightly increases the size of struct drm_bridge on non-OF system, the number of bridges used today and foreseen tomorrow on those systems is very low, so this shouldn't be an issue. So drop #if conditionals by adding struct device_node forward declaration. Suggested-by: Douglas Anderson Signed-off-by: Biju Das Reviewed-by: Douglas Anderson Reviewed-by: Laurent Pinchart --- v5->v6: * Updated commit description. * Added Rb tag from Douglas Anderson and Laurent v5: * Split from patch#2 * Updated commit description * Added struct device_node forward declaration. --- include/drm/drm_bridge.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/drm/drm_bridge.h b/include/drm/drm_bridge.h index c339fc85fd07..843736627f60 100644 --- a/include/drm/drm_bridge.h +++ b/include/drm/drm_bridge.h @@ -32,6 +32,8 @@ #include #include =20 +struct device_node; + struct drm_bridge; struct drm_bridge_timings; struct drm_connector; @@ -716,10 +718,8 @@ struct drm_bridge { struct drm_encoder *encoder; /** @chain_node: used to form a bridge chain */ struct list_head chain_node; -#ifdef CONFIG_OF /** @of_node: device node pointer to the bridge */ struct device_node *of_node; -#endif /** @list: to keep track of all added bridges */ struct list_head list; /** --=20 2.25.1 From nobody Fri Dec 19 01:51:17 2025 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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1E9BBC83F2B for ; Thu, 31 Aug 2023 08:10:31 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S243799AbjHaIKb (ORCPT ); Thu, 31 Aug 2023 04:10:31 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36216 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S241403AbjHaIKY (ORCPT ); Thu, 31 Aug 2023 04:10:24 -0400 Received: from relmlie5.idc.renesas.com (relmlor1.renesas.com [210.160.252.171]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id B35E0E7F for ; Thu, 31 Aug 2023 01:10:06 -0700 (PDT) X-IronPort-AV: E=Sophos;i="6.02,216,1688396400"; d="scan'208";a="174580076" Received: from unknown (HELO relmlir5.idc.renesas.com) ([10.200.68.151]) by relmlie5.idc.renesas.com with ESMTP; 31 Aug 2023 17:10:05 +0900 Received: from localhost.localdomain (unknown [10.226.92.179]) by relmlir5.idc.renesas.com (Postfix) with ESMTP id F07CA4010DFB; Thu, 31 Aug 2023 17:09:58 +0900 (JST) From: Biju Das To: Andrzej Hajda , Neil Armstrong , Robert Foss , David Airlie , Daniel Vetter Cc: Biju Das , Laurent Pinchart , Jonas Karlman , Jernej Skrabec , Douglas Anderson , =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= , Zhu Wang , =?UTF-8?q?Adri=C3=A1n=20Larumbe?= , Thierry Reding , =?UTF-8?q?Ville=20Syrj=C3=A4l=C3=A4?= , Guillaume BRUN , Rob Herring , Sandor Yu , Sam Ravnborg , Ondrej Jirman , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, Andy Shevchenko Subject: [PATCH v6 3/4] drm/bridge: Drop CONFIG_OF conditionals around of_node pointers Date: Thu, 31 Aug 2023 09:09:37 +0100 Message-Id: <20230831080938.47454-4-biju.das.jz@bp.renesas.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230831080938.47454-1-biju.das.jz@bp.renesas.com> References: <20230831080938.47454-1-biju.das.jz@bp.renesas.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Having conditional around the of_node pointers turns out to make driver code use ugly #ifdef and #if blocks. So drop the conditionals. Suggested-by: Douglas Anderson Signed-off-by: Biju Das Reviewed-by: Douglas Anderson Reviewed-by: Laurent Pinchart --- v5->v6: * Added Rb tag from Douglas Anderson. * Dropped conditionals from remaining drm/bridge drivers. v5: * Split from patch#2 --- drivers/gpu/drm/bridge/analogix/analogix-anx78xx.c | 2 -- drivers/gpu/drm/bridge/panel.c | 2 -- drivers/gpu/drm/bridge/synopsys/dw-hdmi.c | 2 -- drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi.c | 2 -- 4 files changed, 8 deletions(-) diff --git a/drivers/gpu/drm/bridge/analogix/analogix-anx78xx.c b/drivers/g= pu/drm/bridge/analogix/analogix-anx78xx.c index 6169db73d2fe..ad8241758896 100644 --- a/drivers/gpu/drm/bridge/analogix/analogix-anx78xx.c +++ b/drivers/gpu/drm/bridge/analogix/analogix-anx78xx.c @@ -1231,9 +1231,7 @@ static int anx78xx_i2c_probe(struct i2c_client *clien= t) =20 mutex_init(&anx78xx->lock); =20 -#if IS_ENABLED(CONFIG_OF) anx78xx->bridge.of_node =3D client->dev.of_node; -#endif =20 anx78xx->client =3D client; i2c_set_clientdata(client, anx78xx); diff --git a/drivers/gpu/drm/bridge/panel.c b/drivers/gpu/drm/bridge/panel.c index 9316384b4474..7f41525f7a6e 100644 --- a/drivers/gpu/drm/bridge/panel.c +++ b/drivers/gpu/drm/bridge/panel.c @@ -302,9 +302,7 @@ struct drm_bridge *drm_panel_bridge_add_typed(struct dr= m_panel *panel, panel_bridge->panel =3D panel; =20 panel_bridge->bridge.funcs =3D &panel_bridge_bridge_funcs; -#ifdef CONFIG_OF panel_bridge->bridge.of_node =3D panel->dev->of_node; -#endif panel_bridge->bridge.ops =3D DRM_BRIDGE_OP_MODES; panel_bridge->bridge.type =3D connector_type; =20 diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c b/drivers/gpu/drm/br= idge/synopsys/dw-hdmi.c index 6c1d79474505..52d91a0df85e 100644 --- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c +++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c @@ -3541,9 +3541,7 @@ struct dw_hdmi *dw_hdmi_probe(struct platform_device = *pdev, | DRM_BRIDGE_OP_HPD; hdmi->bridge.interlace_allowed =3D true; hdmi->bridge.ddc =3D hdmi->ddc; -#ifdef CONFIG_OF hdmi->bridge.of_node =3D pdev->dev.of_node; -#endif =20 memset(&pdevinfo, 0, sizeof(pdevinfo)); pdevinfo.parent =3D dev; diff --git a/drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi.c b/drivers/gpu/dr= m/bridge/synopsys/dw-mipi-dsi.c index 04d4a1a10698..a8dd2a2e7c7b 100644 --- a/drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi.c +++ b/drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi.c @@ -1182,9 +1182,7 @@ __dw_mipi_dsi_probe(struct platform_device *pdev, =20 dsi->bridge.driver_private =3D dsi; dsi->bridge.funcs =3D &dw_mipi_dsi_bridge_funcs; -#ifdef CONFIG_OF dsi->bridge.of_node =3D pdev->dev.of_node; -#endif =20 return dsi; } --=20 2.25.1 From nobody Fri Dec 19 01:51:17 2025 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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 949F8C83F2E for ; Thu, 31 Aug 2023 08:10:34 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S244430AbjHaIKf (ORCPT ); Thu, 31 Aug 2023 04:10:35 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:34988 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S242791AbjHaIKc (ORCPT ); Thu, 31 Aug 2023 04:10:32 -0400 Received: from relmlie5.idc.renesas.com (relmlor1.renesas.com [210.160.252.171]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 8E540E4E for ; Thu, 31 Aug 2023 01:10:10 -0700 (PDT) X-IronPort-AV: E=Sophos;i="6.02,216,1688396400"; d="scan'208";a="174580102" Received: from unknown (HELO relmlir5.idc.renesas.com) ([10.200.68.151]) by relmlie5.idc.renesas.com with ESMTP; 31 Aug 2023 17:10:10 +0900 Received: from localhost.localdomain (unknown [10.226.92.179]) by relmlir5.idc.renesas.com (Postfix) with ESMTP id 6F5E24010DFF; Thu, 31 Aug 2023 17:10:06 +0900 (JST) From: Biju Das To: Andrzej Hajda , Neil Armstrong , Robert Foss , David Airlie , Daniel Vetter Cc: Biju Das , Laurent Pinchart , Jonas Karlman , Jernej Skrabec , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, Andy Shevchenko Subject: [PATCH v6 4/4] drm/bridge: panel: Drop CONFIG_OF conditional around *_of_get_bridge() Date: Thu, 31 Aug 2023 09:09:38 +0100 Message-Id: <20230831080938.47454-5-biju.das.jz@bp.renesas.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230831080938.47454-1-biju.das.jz@bp.renesas.com> References: <20230831080938.47454-1-biju.das.jz@bp.renesas.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Drop unnecessary CONFIG_OF conditional around devm_drm_of_get_bridge() and drmm_of_get_bridge() as it is guarded with #if..#else blocks in drm_bridge.h. Signed-off-by: Biju Das --- v6: * New patch. --- drivers/gpu/drm/bridge/panel.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/drivers/gpu/drm/bridge/panel.c b/drivers/gpu/drm/bridge/panel.c index 7f41525f7a6e..9220a1c23697 100644 --- a/drivers/gpu/drm/bridge/panel.c +++ b/drivers/gpu/drm/bridge/panel.c @@ -482,7 +482,6 @@ struct drm_connector *drm_panel_bridge_connector(struct= drm_bridge *bridge) } EXPORT_SYMBOL(drm_panel_bridge_connector); =20 -#ifdef CONFIG_OF /** * devm_drm_of_get_bridge - Return next bridge in the chain * @dev: device to tie the bridge lifetime to @@ -550,5 +549,3 @@ struct drm_bridge *drmm_of_get_bridge(struct drm_device= *drm, return bridge; } EXPORT_SYMBOL(drmm_of_get_bridge); - -#endif --=20 2.25.1