]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/i915/cx0: Add MTL+ .get_freq hook
authorMika Kahola <mika.kahola@intel.com>
Mon, 17 Nov 2025 10:45:56 +0000 (12:45 +0200)
committerMika Kahola <mika.kahola@intel.com>
Wed, 19 Nov 2025 11:32:26 +0000 (13:32 +0200)
Add .get_freq hook to support dpll framework for MTL+
platforms.

Signed-off-by: Mika Kahola <mika.kahola@intel.com>
Reviewed-by: Suraj Kandpal <suraj.kandpal@intel.com>
Link: https://lore.kernel.org/r/20251117104602.2363671-27-mika.kahola@intel.com
drivers/gpu/drm/i915/display/intel_dpll_mgr.c

index beaf270294ca3d4db4ecf59b40028d1a2a409bdf..85b3fee2d9b600c064623da6a2487d796877480c 100644 (file)
@@ -4379,8 +4379,21 @@ static bool mtl_pll_get_hw_state(struct intel_display *display,
        return intel_cx0pll_readout_hw_state(encoder, &dpll_hw_state->cx0pll);
 }
 
+static int mtl_pll_get_freq(struct intel_display *display,
+                           const struct intel_dpll *pll,
+                           const struct intel_dpll_hw_state *dpll_hw_state)
+{
+       struct intel_encoder *encoder = get_intel_encoder(display, pll);
+
+       if (drm_WARN_ON(display->drm, !encoder))
+               return -EINVAL;
+
+       return intel_cx0pll_calc_port_clock(encoder, &dpll_hw_state->cx0pll);
+}
+
 static const struct intel_dpll_funcs mtl_pll_funcs = {
        .get_hw_state = mtl_pll_get_hw_state,
+       .get_freq = mtl_pll_get_freq,
 };
 
 static const struct dpll_info mtl_plls[] = {