linux/drivers/phy/mediatek
AngeloGioacchino Del Regno 486a70ef84 phy: mediatek: phy-mtk-hdmi-mt8195: Fix TMDS clk bit ratio setting
The comment in the mtk_phy_tmds_clk_ratio() function clearly and
correctly explains that the TMDS ratio has to be 1/10 for data
rates under 3.4Gbps, and 1/40 over that.

Unfortunately though, the TXC_DIV register setting was wrong, as
in value 3 means to divide by 8 and, in order to achieve the in
spec 1/40 (tmds) data rate, this has to divide by 4 instead!

Add definitions for the TXC_DIV register values clearly explaining
the meanings (DIV2, DIV4, DIV8), and program the correct, DIV 4,
value to the register in mtk_phy_tmds_clk_ratio().

This fixes out of spec clocking and, with this change, SoCs using
the MT8195 class HDMI PHYs can now successfully be configured to
output 3840x2160@60Hz over HDMI.

Fixes: 45810d486b ("phy: mediatek: add support for phy-mtk-hdmi-mt8195")
Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@oss.qualcomm.com>
Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Link: https://patch.msgid.link/20260911074015.9994-3-angelogioacchino.delregno@collabora.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
2026-09-13 16:05:23 +05:30
..
Kconfig phy: mediatek: phy-mtk-hdmi: add regulator dependency 2024-12-24 20:38:53 +05:30
Makefile phy: mediatek: Add support for MT8196 MIPI DSI PHY 2026-07-20 16:42:15 +05:30
phy-mtk-dp.c phy: phy-mtk-dp: Fix an error code in probe() 2023-07-12 22:27:02 +05:30
phy-mtk-hdmi-mt2701.c phy: mediatek: phy-mtk-hdmi-mt2701: use clk_determine_rate_noop() 2026-06-29 17:53:16 -04:00
phy-mtk-hdmi-mt8173.c phy: mediatek: phy-mtk-hdmi-mt8173: convert from round_rate() to determine_rate() 2025-12-24 12:53:35 +05:30
phy-mtk-hdmi-mt8195.c phy: mediatek: phy-mtk-hdmi-mt8195: Fix TMDS clk bit ratio setting 2026-09-13 16:05:23 +05:30
phy-mtk-hdmi-mt8195.h phy: mediatek: phy-mtk-hdmi-mt8195: Fix TMDS clk bit ratio setting 2026-09-13 16:05:23 +05:30
phy-mtk-hdmi.c phy: mediatek: phy-mtk-hdmi: Register PHY provided regulator 2024-12-04 19:55:33 +05:30
phy-mtk-hdmi.h phy: mediatek: phy-mtk-hdmi: Register PHY provided regulator 2024-12-04 19:55:33 +05:30
phy-mtk-io.h phy: mediatek: remove temporary variable @mask_ 2023-02-02 18:35:13 +05:30
phy-mtk-mipi-csi-0-5-rx-reg.h phy: mtk-mipi-csi: add driver for CSI phy 2024-02-07 15:02:13 +01:00
phy-mtk-mipi-csi-0-5.c phy: constify of_phandle_args in xlate 2024-02-23 17:43:14 +05:30
phy-mtk-mipi-dsi-mt8173.c phy: mediatek: phy-mtk-mipi-dsi-mt8173: convert from round_rate() to determine_rate() 2025-12-24 12:53:35 +05:30
phy-mtk-mipi-dsi-mt8183.c phy: mediatek: phy-mtk-mipi-dsi-mt8183: convert from round_rate() to determine_rate() 2025-12-24 12:53:35 +05:30
phy-mtk-mipi-dsi-mt8196.c phy: mediatek: Add support for MT8196 MIPI DSI PHY 2026-07-20 16:42:15 +05:30
phy-mtk-mipi-dsi.c phy: mediatek: Add support for MT8196 MIPI DSI PHY 2026-07-20 16:42:15 +05:30
phy-mtk-mipi-dsi.h phy: mediatek: Add support for MT8196 MIPI DSI PHY 2026-07-20 16:42:15 +05:30
phy-mtk-pcie.c phy: Explicitly include correct DT includes 2023-07-17 11:52:56 +05:30
phy-mtk-tphy.c phy: phy-mtk-tphy: Update names and format of kernel-doc comments 2026-02-27 08:05:57 +05:30
phy-mtk-ufs.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
phy-mtk-xfi-tphy.c phy: adjust function name reference 2026-01-01 15:55:23 +05:30
phy-mtk-xsphy.c phy: mediatek: xsphy: reduce main allocation 2026-05-14 21:27:02 +05:30