From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-m3276.qiye.163.com (mail-m3276.qiye.163.com [220.197.32.76]) (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 7B8283C8C71; Wed, 19 Aug 2026 08:08:32 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=220.197.32.76 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1787126916; cv=none; b=bnodLBMU4vTbsf3gcgRFytIeVlLdD13OjiITROxVS3nhF3vCaiBTFszBbJ/gPsxXbdzxS8/nYdk0PIh4Xv4LC/OsN6RMjdBbRXSUPywDjiLHogTIPwoTjcU91YX83UsHhHk64PtUONvFw11fOtpDq/SIIgKTZFcJS4todshC4QM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1787126916; c=relaxed/simple; bh=cXoZ5nkVlsrf7ob6/fIWTvGwYAz8YkqvPeMve6jGnls=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=Kqm2grkgycnh5CyFZFEaYZiN5pfFI1AbxL4r3evCyom5fS+xsf3ddOOJ+HLn9LEmm5i4nC4TC3me46o/oBg4hyHwoGOkTpW7vj/ywK5rQTLVzrYvVPohsGop5nZNH/erl9HiNDIBNtIdCbLVN50DkvqAD/Aog6W4UzTgTqX7rf0= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=rock-chips.com; spf=pass smtp.mailfrom=rock-chips.com; dkim=pass (1024-bit key) header.d=rock-chips.com header.i=@rock-chips.com header.b=CN/GNaz/; arc=none smtp.client-ip=220.197.32.76 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=rock-chips.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=rock-chips.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=rock-chips.com header.i=@rock-chips.com header.b="CN/GNaz/" Received: from zyb-HP-ProDesk-680-G2-MT.. (unknown [61.154.14.86]) by smtp.qiye.163.com (Hmail) with ESMTP id 4a8934793; Wed, 19 Aug 2026 15:53:01 +0800 (GMT+08:00) From: Damon Ding To: Andrzej Hajda , Neil Armstrong , Robert Foss , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Sandy Huang , Heiko Stuebner , Andy Yan Cc: Laurent Pinchart , Jonas Karlman , Jernej Skrabec , Luca Ceresoli , Dmitry Baryshkov , Marek Szyprowski , Sebastian Reichel , dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-rockchip@lists.infradead.org, linux-arm-kernel@lists.infradead.org, Damon Ding Subject: [PATCH v7 3/5] drm/bridge: analogix_dp: Restore mandatory samsung DP DT properties Date: Wed, 19 Aug 2026 15:52:36 +0800 Message-Id: <20260819075238.3007087-4-damon.ding@rock-chips.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260819075238.3007087-1-damon.ding@rock-chips.com> References: <20260819075238.3007087-1-damon.ding@rock-chips.com> Precedence: bulk X-Mailing-List: devicetree@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-HM-Tid: 0aa019025f9d03a8kunmf3c4117e328bbb X-HM-MType: 1 X-HM-Spam-Status: e1kfGhgUHx5ZQUpXWQgPGg8OCBgUHx5ZQUlOS1dZFg8aDwILHllBWSg2Ly tZV1koWUFITzdXWRgWCB1ZQUpXWS1ZQUlXWQ8JGhUIEh9ZQVlDTRpKVkkYS05IHU5LT00aH1YVFA kWGhdVEwETFhoSFyQUDg9ZV1kYEgtZQVlNSlVKTk9VSk9VQ01ZV1kWGg8SFR0UWUFZT0tIVUpLSU 9PT0hVSktLVUpCS0tZBg++ DKIM-Signature: a=rsa-sha256; b=CN/GNaz/dklpEcsQPznDo5vxGOSWgZbPh0ztonxg/Rr/IzAOaUbXYeGCH+qsATxrAZqB6yvpLbH1lEIYPCK9Tr1qZaHOFaE434oD94I/MPnHfPIX7/FGcF76xIQIeP6YIt7aKzOUv9sMKEDZhf53+6ScdPg9MlpZeeWHkM3fIlc=; c=relaxed/relaxed; s=default; d=rock-chips.com; v=1; bh=t55Nmd0TIQJ9k05yP/OQSyQzY/yXm1yngBaarIKKeEk=; h=date:mime-version:subject:message-id:from; Revert the change that made samsung,link-rate and samsung,lane-count optional for Exynos DP. Add error checking to fail probe early if the required DT properties are missing. If these properties are zero, &link_train.link_rate and &link_train.lane_count used in the subsequent link training flow will also be zero, resulting in link training failure. Although all existing Exynos DP DT nodes already contain these two properties, this potential logic issue still needs to be fixed. Fixes: 0d0abd894ead ("drm: bridge: analogix/dp: add max link rate and lane count limit for RK3288") Signed-off-by: Damon Ding --- drivers/gpu/drm/bridge/analogix/analogix_dp_core.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c index 566f1e5eb8cd..ddb15d6de05f 100644 --- a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c +++ b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c @@ -1248,6 +1248,7 @@ static int analogix_dp_dt_parse_pdata(struct analogix_dp_device *dp) { struct device_node *dp_node = dp->dev->of_node; struct video_info *video_info = &dp->video_info; + u32 val; switch (dp->plat_data->dev_type) { case RK3288_DP: @@ -1269,10 +1270,14 @@ static int analogix_dp_dt_parse_pdata(struct analogix_dp_device *dp) * NOTE: those property parseing code is used for * providing backward compatibility for samsung platform. */ - of_property_read_u32(dp_node, "samsung,link-rate", - &video_info->max_link_rate); - of_property_read_u32(dp_node, "samsung,lane-count", - &video_info->max_lane_count); + if (of_property_read_u32(dp_node, "samsung,link-rate", &val)) + return dev_err_probe(dp->dev, -EINVAL, + "Failed to get samsung,link-rate\n"); + video_info->max_link_rate = val; + if (of_property_read_u32(dp_node, "samsung,lane-count", &val)) + return dev_err_probe(dp->dev, -EINVAL, + "Failed to get samsung,lane-count\n"); + video_info->max_lane_count = val; break; } -- 2.34.1