mirror of
https://github.com/torvalds/linux.git
synced 2026-09-11 20:13:02 +02:00
drm/i915/lt_phy: program DDI_CLK_VALFREQ with DDI clock frequency
DDI_CLK_VALFREQ is programmed with the port clock, which for DP is the
symbol clock computed assuming 8b/10b encoding (link_rate / 10). For
DP 128b/132b (UHBR) rates and for HDMI FRL the port clock needs to
be modified.
DDI_CLK_VALFREQ does not have any functional impact on H/w, it
only records the frequency S/w intends to set.
Use intel_ddi_link_symbol_clock() to write the correct DDI clock in
kHz
Fixes: 5ec58d7149 ("drm/i915/lt_phy: Add .enable_clock hook on DDI")
Signed-off-by: Suraj Kandpal <suraj.kandpal@intel.com>
Reviewed-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
Link: https://patch.msgid.link/20260811175844.2613721-4-suraj.kandpal@intel.com
(cherry picked from commit eaed815ca3483c227e4ec80b86d1b3ce5c2508be)
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
This commit is contained in:
parent
0cd42b346d
commit
1d79c50e2e
|
|
@ -1976,7 +1976,8 @@ void intel_lt_phy_pll_enable(struct intel_encoder *encoder,
|
|||
* Change. We handle this step in bxt_set_cdclk().
|
||||
*/
|
||||
/* 10. Program DDI_CLK_VALFREQ to match intended DDI clock frequency. */
|
||||
intel_de_write(display, DDI_CLK_VALFREQ(encoder->port), port_clock);
|
||||
intel_de_write(display, DDI_CLK_VALFREQ(encoder->port),
|
||||
intel_ddi_link_symbol_clock(encoder, port_clock));
|
||||
|
||||
/* 11. Program PORT_CLOCK_CTL[PCLK PLL Request LN0] = 1. */
|
||||
intel_de_rmw(display, XELPDP_PORT_CLOCK_CTL(display, port),
|
||||
|
|
@ -2023,7 +2024,8 @@ void intel_lt_phy_pll_enable(struct intel_encoder *encoder,
|
|||
lane_phy_pulse_status,
|
||||
lane_phy_pulse_status);
|
||||
} else {
|
||||
intel_de_write(display, DDI_CLK_VALFREQ(encoder->port), port_clock);
|
||||
intel_de_write(display, DDI_CLK_VALFREQ(encoder->port),
|
||||
intel_ddi_link_symbol_clock(encoder, port_clock));
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user