Skip to content

Commit 41c6cac

Browse files
cristiccvinodkoul
authored andcommitted
phy: hdmi: Add HDMI 2.1 FRL configuration options
The HDMI 2.1 specification introduced the Fixed Rate Link (FRL) mode, aiming to replace the older Transition-Minimized Differential Signaling (TMDS) mode used in previous HDMI versions to support much higher bandwidths (up to 48 Gbps) for modern video and audio formats. FRL has been designed to support ultra high resolution formats at high refresh rates like 8K@60Hz or 4K@120Hz, and eliminates the need for dynamic bandwidth adjustments, which reduces latency. It operates with 3 or 4 lanes at different link rates: 3Gbps, 6Gbps, 8Gbps, 10Gbps or 12Gbps. Add support for configuring the FRL mode for HDMI PHYs. Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@collabora.com> Link: https://patch.msgid.link/20260113-phy-hdptx-frl-v6-1-8d5f97419c0b@collabora.com Signed-off-by: Vinod Koul <vkoul@kernel.org>
1 parent 4dd5d4c commit 41c6cac

1 file changed

Lines changed: 17 additions & 2 deletions

File tree

include/linux/phy/phy-hdmi.h

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,16 +6,31 @@
66
#ifndef __PHY_HDMI_H_
77
#define __PHY_HDMI_H_
88

9+
#include <linux/types.h>
10+
11+
enum phy_hdmi_mode {
12+
PHY_HDMI_MODE_TMDS,
13+
PHY_HDMI_MODE_FRL,
14+
};
15+
916
/**
1017
* struct phy_configure_opts_hdmi - HDMI configuration set
11-
* @tmds_char_rate: HDMI TMDS Character Rate in Hertz.
1218
* @bpc: Bits per color channel.
19+
* @tmds_char_rate: HDMI TMDS Character Rate in Hertz.
20+
* @frl.rate_per_lane: HDMI FRL Rate per Lane in Gbps.
21+
* @frl.lanes: HDMI FRL lanes count.
1322
*
1423
* This structure is used to represent the configuration state of a HDMI phy.
1524
*/
1625
struct phy_configure_opts_hdmi {
17-
unsigned long long tmds_char_rate;
1826
unsigned int bpc;
27+
union {
28+
unsigned long long tmds_char_rate;
29+
struct {
30+
u8 rate_per_lane;
31+
u8 lanes;
32+
} frl;
33+
};
1934
};
2035

2136
#endif /* __PHY_HDMI_H_ */

0 commit comments

Comments
 (0)