From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.forwardemail.net (smtp.forwardemail.net [121.127.44.66]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C32943822BB for ; Mon, 18 May 2026 18:07:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=121.127.44.66 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779127653; cv=none; b=Y+NmghWZ8xv6s7JNBiiNTCBCVZAqufmGhdv1ss7k5bfHBYUe2h9LWfWVsATd8UNNSED/RIYk7g9OxD7HZSZHKTUJ7HgqMH8bf5siPD3SZzykYKeZD3ztar6oYpYBsj8EhTYyuB0NydJIio3qkiLeue4MRAUh+gA8NrhRObhUhIc= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779127653; c=relaxed/simple; bh=sJK7Ttc9VeuGN2D9bi006mN00G0cEJ5NBUoeYJDMnWw=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=qi+HOxf/Ra2e5M1GZzMyQ97waJa9yGQ9twEoJLY3Ce+GhwqNPF1Rc8ULj6NUhJ9IE3vjlOdvOQAsVFzIGsJN4nR+P3cJicleXSRb06DtKyGpm7DEk/O1oF940/RI180/C6Gfxd+vLUElFGpn/ztKiCnSvG9OFgEVTrUEmhh4xfo= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=kwiboo.se; spf=pass smtp.mailfrom=fe-bounces.kwiboo.se; dkim=pass (2048-bit key) header.d=kwiboo.se header.i=@kwiboo.se header.b=kQNpQsUG; arc=none smtp.client-ip=121.127.44.66 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=kwiboo.se Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=fe-bounces.kwiboo.se Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kwiboo.se header.i=@kwiboo.se header.b="kQNpQsUG" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kwiboo.se; h=Content-Transfer-Encoding: MIME-Version: Message-ID: Date: Subject: Cc: To: From; q=dns/txt; s=fe-e1b5cab7be; t=1779127650; bh=TqxUGOZ/wYWUIPRP7I4imgaVseGh4sccLBoBDfsF2Lc=; b=kQNpQsUG/xLWfHAGaEbuG0DbBfkllNwrGTMJsAwKzexJt/XZsdpT4ITS1875gST6Lsq4vZWUR 3xy1bSu6lEZBpiyfy0KSzqRKX1KyW3WnqTcGhoJAORnL3lyt/cxO0VUBbH7lqf4JQ6ceAI0svyz mtdR6MXd/Fv1baXzGhVfQWT309SvTQin2ADLv38tvElDb8VO79xFWSX+9enGdZz7il0XwRciAMg RjMt10PqNK6lyBYX6GYsDSElT02bGwow7QLg4gPF3m4C3ZPaBTMvdoDDHUseVdRa1UmhWmx930f bzswNn+XcvOJbUi/10M4XVdxGW8exRxGiY9NLfmnBX3A== X-Forward-Email-ID: 6a0b5560b74b0ebd362ee045 X-Forward-Email-Sender: rfc822; jonas@kwiboo.se, smtp.forwardemail.net, 121.127.44.66 X-Forward-Email-Version: 2.8.12 X-Forward-Email-Website: https://forwardemail.net X-Complaints-To: abuse@forwardemail.net X-Report-Abuse: abuse@forwardemail.net X-Report-Abuse-To: abuse@forwardemail.net From: Jonas Karlman To: Vinod Koul , Neil Armstrong , Heiko Stuebner Cc: linux-phy@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Jonas Karlman Subject: [PATCH v4 0/2] phy: rockchip: inno-hdmi: Change TMDS rate handling to configure() ops Date: Mon, 18 May 2026 18:07:19 +0000 Message-ID: <20260518180722.2480799-1-jonas@kwiboo.se> X-Mailer: git-send-email 2.54.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This series adds support for using phy_validate() and phy_configure() with this HDMI PHY as an alternative to current in-tree unused way of using PHY bus width to configure the TMDS character rate. The only known users that calls phy_set_bus_width() on this PHY are my out-of-tree HDMI 2.0 patches for Rockchip RK3228/RK3328, i.e. those originating from LibreELEC (also carried by other distros), the downstream vendor kernel uses a different implementation that also calls phy_set_bus_width() on this PHY. Patch "drm/rockchip: dw_hdmi: Configure HDMI PHY in atomic_mode_set()" that calls phy_validate() and phy_configure() on this PHY can be found at [1]. [1] https://lore.kernel.org/dri-devel/20260510183114.1248840-10-jonas@kwiboo.se/ This series is part of a larger multi series effort to: - phy: rockchip: inno-hdmi: Change TMDS rate handling to configure() ops [v4] - drm/rockchip: dw_hdmi: Misc cleanup and propagate bus format [v2] - drm: bridge: dw_hdmi: Misc enable/disable, CEC and EDID cleanup [v7] - drm/bridge: dw-hdmi: Improve input/output bus format handling - drm/bridge: dw-hdmi: Convert to a HDMI bridge and use of bridge connector - drm/bridge: dw-hdmi: Add and use tmds_char_rate_valid() plat data ops - drm/meson: hdmi: Misc cleanup and use CEC notifier helpers [v1] - drm/rockchip: dw_hdmi: Enable YCbCr and Deep Color modes Link to snapshot: https://github.com/Kwiboo/linux-rockchip/commits/next-20260518-rk-hdmi-v5/ Changes in v4: - Add NULL opts check in validate() - Only store the opts->hdmi.tmds_char_rate value for later use - Move comments about expected consumer usage from inline to above the functions Link to v3: https://lore.kernel.org/linux-phy/20260515195512.1757363-1-jonas@kwiboo.se/ Changes in v3: - Change validate() ops to only validate tmdsclock - Add comments about expected consumer usage - Update commit message with a typical call chain Link to v2: https://lore.kernel.org/linux-phy/20260510095731.1222705-1-jonas@kwiboo.se/ Changes in v2: - Split into two patches, one that adds new ops and a second that remove the old and unused workaround - Add validate() ops to validate that the TMDS rate is supported Link to v1: https://lore.kernel.org/linux-phy/20260503172936.194003-1-jonas@kwiboo.se/ Jonas Karlman (2): phy: rockchip: inno-hdmi: Add configure() and validate() ops phy: rockchip: inno-hdmi: Remove deprecated way to configure TMDS rate drivers/phy/rockchip/phy-rockchip-inno-hdmi.c | 71 +++++++++++++++---- 1 file changed, 58 insertions(+), 13 deletions(-) -- 2.54.0