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 gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (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 862F2FD0652 for ; Wed, 11 Mar 2026 08:16:54 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 563BA10E844; Wed, 11 Mar 2026 08:16:53 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (1024-bit key; unprotected) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="mt64nGmA"; dkim-atps=neutral Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) by gabe.freedesktop.org (Postfix) with ESMTPS id 8FCD710E83A for ; Wed, 11 Mar 2026 08:16:50 +0000 (UTC) Received: from [127.0.1.1] (91-158-153-178.elisa-laajakaista.fi [91.158.153.178]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 7A835981; Wed, 11 Mar 2026 09:15:41 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1773216942; bh=eQYvjKaHmHFpKWtxeve8uX4miV81ha81TaZeNuaTT20=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=mt64nGmAq7qwRKxkHix8nUgDCa0XP9dy35UtAWlkf4hn6rOwctkL0ZQDdqW24++gA VmXpxw7w6785zY+ZKh8OiLiQGltpgf8zLMWitvbKUaKWLJX0iN7YPxbqjnss1KjewF tjc8VskNIsfZDF5RXTFQp4IIEfRERQfGKS4dLSb0= From: Tomi Valkeinen Date: Wed, 11 Mar 2026 10:16:29 +0200 Subject: [PATCH 2/2] drm/tidss: Fix missing drm_bridge_attach() call MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20260311-tidss-minor-fixes-v1-2-ee5e6e14a566@ideasonboard.com> References: <20260311-tidss-minor-fixes-v1-0-ee5e6e14a566@ideasonboard.com> In-Reply-To: <20260311-tidss-minor-fixes-v1-0-ee5e6e14a566@ideasonboard.com> To: Jyri Sarha , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , Sam Ravnborg , Javier Martinez Canillas , Aradhya Bhatia Cc: dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, Devarsh Thakkar , Tomi Valkeinen , stable@vger.kernel.org X-Mailer: b4 0.15-dev-c25d1 X-Developer-Signature: v=1; a=openpgp-sha256; l=2474; i=tomi.valkeinen@ideasonboard.com; h=from:subject:message-id; bh=eQYvjKaHmHFpKWtxeve8uX4miV81ha81TaZeNuaTT20=; b=owEBbQKS/ZANAwAIAfo9qoy8lh71AcsmYgBpsSTuP0LzIRg8wnIPlQRccTLJkgrM+DQPYMSSE WJ2AZE27OaJAjMEAAEIAB0WIQTEOAw+ll79gQef86f6PaqMvJYe9QUCabEk7gAKCRD6PaqMvJYe 9ZzOD/9ec2ACKu9vUjzRo5JnTBGARKD00w8bD1UgBOmmcrZWcOof0G4Q9oLz4cq8/PNgzW19iH5 tWqv854dy8/MICfcb1JcoBRFa+eBTlnRo13ew5PJ51MDvppNdt3Trnl+NXf66gTuM0wUBbajUMr JRDddl66Nl9SVZPd88b7Cm+0XPAYen9RH36o2pYS+yZN+m0+EScIarMnFplm81HKW/Qpb9NAdLj ekaKywTpHS9ZD3R3hxSAT+4aJ3xqPweGC3y+I4IbKUQ+gqKwpHBBCJaSdviBg1LX30Cu6EkUEUB zMruVRMuI3AZ1bNGIwLAdtEJOKJMf43eStZR9Y6f6nYig/svULJuI9YbSyW3/g3U0Bl81rGOQ4D pNGWpidVq76YOaT3WZc92CNMkhtC+uodBgrWNBR2trQ3Zbn/Qroi7gbOE0rlK7QhIewdUD4/27l 4OXTAXX3YVMElSqdvYukU4DObHs88JpGisF2RNTVZT39125Qn5XaTatr2cF1NB2EA8hC6Mf7bHd yw504BGQCQHBcM/c7p0Aa9HYfBEfcCDWZSt8Day12L5BAQYkYx5scP8YIJsHLzfhcd0r7M6Bbr3 wDlmJouSWyP4yjdQV7WRjX9YvMcIot5fu3oLvJXImMWkMP7621vMF2WWuec/p3vOZLLN0Wk1zZC qVXovMQ4FBkrgsA== X-Developer-Key: i=tomi.valkeinen@ideasonboard.com; a=openpgp; fpr=C4380C3E965EFD81079FF3A7FA3DAA8CBC961EF5 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" tidss encoder-bridge is not added with drm_bridge_add() call, which leads to: [drm] Missing drm_bridge_add() before attach Add the missing call, using devm_drm_bridge_add() variant to get the drm_bridge_remove() handled automatically. The commit marked with the Fixes tag (from v6.6) is the commit that added the encoder bridge without drm_bridge_add(). However, this fix is not directly applicable there as devm_drm_bridge_alloc() was not used to alloc the bridge, so using devm version for drm_bridge_add() wouldn't be safe. Instead, drm_bridge_add() and drm_bridge_remove() would be needed there, but that would require new plumbing code as we don't have a separate cleanup function in the tidss_encoder.c, not in the tidss_kms.c from which the encoder is created. Also, there has been no reported bugs caused by the missing drm_bridge_add(). The drm_bridge_add() initializes the bridge's hpd_mutex, but HPD is not used for the encoder bridge. drm_bridge_add() also adds the bridge to the global bridge_list, which is only used in of_drm_find_bridge(), and again that is not used for the encoder bridge. Thus, while the original commit is not right, there should be no bugs caused by it, and for the time being I'm not sending a patch for the stable kernels for the original commit. This fix applies on top of commit 66cdf05f8548 ("drm/tidss: encoder: convert to devm_drm_bridge_alloc()"), which changes the tidss_encoder.c to use the devm variant (added in v6.17). The warning print was added in v6.19, so applying this fix to v6.17+ gets rid of the warning for all kernel versions. Signed-off-by: Tomi Valkeinen Cc: # v6.17+ Fixes: c932ced6b585 ("drm/tidss: Update encoder/bridge chain connect model") --- drivers/gpu/drm/tidss/tidss_encoder.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/gpu/drm/tidss/tidss_encoder.c b/drivers/gpu/drm/tidss/tidss_encoder.c index 81a04f767770..db467bbcdb77 100644 --- a/drivers/gpu/drm/tidss/tidss_encoder.c +++ b/drivers/gpu/drm/tidss/tidss_encoder.c @@ -106,6 +106,8 @@ int tidss_encoder_create(struct tidss_device *tidss, enc = &t_enc->encoder; enc->possible_crtcs = possible_crtcs; + devm_drm_bridge_add(tidss->dev, &t_enc->bridge); + /* Attaching first bridge to the encoder */ ret = drm_bridge_attach(enc, &t_enc->bridge, NULL, DRM_BRIDGE_ATTACH_NO_CONNECTOR); -- 2.43.0