]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
phy: phy-rockchip-samsung-hdptx: Fix PHY PLL output 50.25MHz error
authorAlgea Cao <algea.cao@rock-chips.com>
Sun, 27 Apr 2025 09:51:24 +0000 (17:51 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 4 Jun 2025 12:45:10 +0000 (14:45 +0200)
[ Upstream commit f9475055b11c0c70979bd1667a76b2ebae638eb7 ]

When using HDMI PLL frequency division coefficient at 50.25MHz
that is calculated by rk_hdptx_phy_clk_pll_calc(), it fails to
get PHY LANE lock. Although the calculated values are within the
allowable range of PHY PLL configuration.

In order to fix the PHY LANE lock error and provide the expected
50.25MHz output, manually compute the required PHY PLL frequency
division coefficient and add it to ropll_tmds_cfg configuration
table.

Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Reviewed-by: Cristian Ciocaltea <cristian.ciocaltea@collabora.com>
Acked-by: Heiko Stuebner <heiko@sntech.de>
Link: https://lore.kernel.org/r/20250427095124.3354439-1-algea.cao@rock-chips.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/phy/rockchip/phy-rockchip-samsung-hdptx.c

index 920abf6fa9bdd8ac2f84ac3385d954585a9164aa..28a4235bfd5fbbec4ef591a5f30904fa85ea8ac4 100644 (file)
@@ -325,6 +325,8 @@ static const struct ropll_config ropll_tmds_cfg[] = {
          1, 1, 0, 0x20, 0x0c, 1, 0x0e, 0, 0, },
        { 650000, 162, 162, 1, 1, 11, 1, 1, 1, 1, 1, 1, 1, 54, 0, 16, 4, 1,
          1, 1, 0, 0x20, 0x0c, 1, 0x0e, 0, 0, },
+       { 502500, 84, 84, 1, 1, 7, 1, 1, 1, 1, 1, 1, 1, 11, 1, 4, 5,
+         4, 11, 1, 0, 0x20, 0x0c, 1, 0x0e, 0, 0, },
        { 337500, 0x70, 0x70, 1, 1, 0xf, 1, 1, 1, 1, 1, 1, 1, 0x2, 0, 0x01, 5,
          1, 1, 1, 0, 0x20, 0x0c, 1, 0x0e, 0, 0, },
        { 400000, 100, 100, 1, 1, 11, 1, 1, 0, 1, 0, 1, 1, 0x9, 0, 0x05, 0,