From nobody Tue Apr 7 20:08:12 2026 Received: from smtpout-04.galae.net (smtpout-04.galae.net [185.171.202.116]) (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 98B4C3B47E2 for ; Tue, 7 Apr 2026 12:25:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=185.171.202.116 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775564740; cv=none; b=N3agyVyubtPKmh2LnxxIM+/kJiT4EOFElzPXbSa41paHLR7VAy5mTHXcAlvEmkQgUseWVRfmXgiBy3nNVurGU2JnM9CDB+VWBi9KeD6VXlJpb0rt5lgyZ3htQMC1/cwMyaT+VjdTg9GtZPr2B0uYU4Nn6/XLf2RPPHC8RgC9H5s= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775564740; c=relaxed/simple; bh=05H3Pzy/5L+Nd1htD9Y4GQp3HbECILuMzhfqpDhwccU=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=khIh+tDSrnWCVKl8++SdNrRR0XPFTl9NjHi4LAq0cp+RzhSC7DApXhi88R4UArx0LUJw0q8tN3SkW9BOip2nb/7WLd4/omFhOVhj0Lw/bDC0YcN7pWx3tGWQw3+jZRR+gkwsB7tvICpNW86xkxMODJ2nnAFhHsDlNtbw34p8E7M= 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=rA2xoCac; arc=none smtp.client-ip=185.171.202.116 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="rA2xoCac" Received: from smtpout-01.galae.net (smtpout-01.galae.net [212.83.139.233]) by smtpout-04.galae.net (Postfix) with ESMTPS id 53B07C5B19A; Tue, 7 Apr 2026 12:26:11 +0000 (UTC) Received: from mail.galae.net (mail.galae.net [212.83.136.155]) by smtpout-01.galae.net (Postfix) with ESMTPS id 8BDCF603C7; Tue, 7 Apr 2026 12:25:37 +0000 (UTC) Received: from [127.0.0.1] (localhost [127.0.0.1]) by localhost (Mailerdaemon) with ESMTPSA id 3CC111045020A; Tue, 7 Apr 2026 14:25:26 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=dkim; t=1775564735; h=from:subject:date:message-id:to:cc:mime-version:content-type: content-transfer-encoding:in-reply-to:references; bh=+OKVbnh4D/eet/8za6HYYuOE7r3CKZI7MjkoaZhFD+M=; b=rA2xoCacv94eVMkgUtxvve3UY/4U1FD0ZnY7+JdvV4PP4/Q5RCqQJU4bOFZGJEDeNkYlh1 qkj2DGjy5w7ZmLpUMCvWYQryd00y8TYgQh2By11H8EX/TOe6IVmxYFtOJYRn05nMlcke8k Zp+cyYOmQCJeCREcokfKmZxGD7W8q3dxEFeqwNmogc7bVNMoad6zry5BclEPd6YKbyAPVr u889f7J+aQZVsXxtVs3COYwk1IScQeJYzRgCih6BlZqHydonys1t1+1b3hVOlQnQsP0cQG u0hldRT+71IO7r94/5ed83Sd7DkDP4ZEasXKk7C8iZlmHtG6+9idcm2TlLbHxg== From: Luca Ceresoli Date: Tue, 07 Apr 2026 14:24:20 +0200 Subject: [PATCH v4 06/11] drm/bridge: dw-hdmi: warn on unsupported attach combination 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: quoted-printable Message-Id: <20260407-drm-lcdif-dbanc-v4-6-247a16e61ef9@bootlin.com> References: <20260407-drm-lcdif-dbanc-v4-0-247a16e61ef9@bootlin.com> In-Reply-To: <20260407-drm-lcdif-dbanc-v4-0-247a16e61ef9@bootlin.com> To: Marek Vasut , Stefan Agner , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , Frank Li , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , Andrzej Hajda , Neil Armstrong , Robert Foss , Laurent Pinchart , Jonas Karlman , Jernej Skrabec , Liu Ying , Rob Herring , Saravana Kannan Cc: Damon Ding , "Kory Maincent (TI.com)" , =?utf-8?q?Herv=C3=A9_Codina?= , Hui Pu , Ian Ray , Thomas Petazzoni , dri-devel@lists.freedesktop.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Adam Ford , Alexander Stein , Christopher Obbard , Daniel Scally , Emanuele Ghidoli , Fabio Estevam , Francesco Dolcini , Frieder Schrempf , Gilles Talis , =?utf-8?q?Goran_Ra=C4=91enovi=C4=87?= , Heiko Schocher , Josua Mayer , Kieran Bingham , Marco Felsch , Martyn Welch , Oleksij Rempel , Peng Fan , Richard Hu , Shengjiu Wang , Stefan Eichenberger , Vitor Soares , Luca Ceresoli X-Mailer: b4 0.15.1 X-Last-TLS-Session-Version: TLSv1.3 dw-hdmi can operate in two different modes, depending on the platform data as set by the driver: A. hdmi->plat_data->output_port =3D 0: the HDMI output (port@1) in device tree is not used B. hdmi->plat_data->output_port =3D 1: the HDMI output (port@1) is parsed to find the next bridge Only case B is supported when the DRM_BRIDGE_ATTACH_NO_CONNECTOR flag is passed to the attach callback. Emit a warning when this is violated. Also return -EINVAL which would be returned by drm_bridge_attach() right after anyway. Reviewed-by: Liu Ying Tested-by: Martyn Welch Tested-by: Alexander Stein # TQMa8MPxL/MB= a8MPxL Tested-by: Damon Ding # rk3399 Signed-off-by: Luca Ceresoli --- Note: Returning when the warning triggers does not change the functional behaviour of this function. It is not strictly necessary in this patch but it will have to be done anyway in the following patch. --- drivers/gpu/drm/bridge/synopsys/dw-hdmi.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c b/drivers/gpu/drm/br= idge/synopsys/dw-hdmi.c index 0296e110ce65..ab1a6a8783cd 100644 --- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c +++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c @@ -2910,6 +2910,10 @@ static int dw_hdmi_bridge_attach(struct drm_bridge *= bridge, { struct dw_hdmi *hdmi =3D bridge->driver_private; =20 + /* DRM_BRIDGE_ATTACH_NO_CONNECTOR requires a remote-endpoint to the next = bridge */ + if (WARN_ON((flags & DRM_BRIDGE_ATTACH_NO_CONNECTOR) && !hdmi->plat_data-= >output_port)) + return -EINVAL; + if (flags & DRM_BRIDGE_ATTACH_NO_CONNECTOR) return drm_bridge_attach(encoder, hdmi->bridge.next_bridge, bridge, flags); --=20 2.53.0