@@ -2292,7 +2292,13 @@ int intel_hdmi_compute_config(struct intel_encoder *encoder,
pipe_config->lane_count = 4;
- if (scdc->scrambling.supported && DISPLAY_VER(dev_priv) >= 10) {
+ /*
+ * Enable scrambing for only for TMDS mode.
+ * For FRL mode, scrambling is always enabled by HW, and
+ * scrambling enable and high tmds clock bits are not used.
+ */
+ if (scdc->scrambling.supported && DISPLAY_VER(dev_priv) >= 10 &&
+ !pipe_config->frl.enable) {
if (scdc->scrambling.low_rates)
pipe_config->hdmi_scrambling = true;
In FRL mode, the Scrambling is always enabled by the HW. The High TMDS Char Rate and Scrambing Enable bit of reg TRANS_DDI_FUNC_CTRL are only set in TMDS mode and not in FRL mode. Signed-off-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com> --- drivers/gpu/drm/i915/display/intel_hdmi.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-)