Add new pll_disable_clock functions so that they can be
hooked up to dpll->disable. This is just a wrapper over
the exitisting intel_xe3plpd_pll_disable to make it
compatible With dpll->disable function

v2: Revise commit message (Suraj)
    Drop wrapper for TBT clock disabling and reuse
    intel_mtl_pll_disable_clock() for DDI clock
    disabling hook (Suraj)

Signed-off-by: Mika Kahola <[email protected]>
---
 drivers/gpu/drm/i915/display/intel_ddi.c      |  2 +-
 drivers/gpu/drm/i915/display/intel_dpll_mgr.c | 12 ++++++++++++
 2 files changed, 13 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/display/intel_ddi.c 
b/drivers/gpu/drm/i915/display/intel_ddi.c
index 93f62d995e96..3cc8c681c352 100644
--- a/drivers/gpu/drm/i915/display/intel_ddi.c
+++ b/drivers/gpu/drm/i915/display/intel_ddi.c
@@ -5299,7 +5299,7 @@ void intel_ddi_init(struct intel_display *display,
 
        if (HAS_LT_PHY(display)) {
                encoder->enable_clock = intel_mtl_pll_enable_clock;
-               encoder->disable_clock = intel_xe3plpd_pll_disable;
+               encoder->disable_clock = intel_mtl_pll_disable_clock;
                encoder->port_pll_type = intel_mtl_port_pll_type;
                encoder->get_config = xe3plpd_ddi_get_config;
        } else if (DISPLAY_VER(display) >= 14) {
diff --git a/drivers/gpu/drm/i915/display/intel_dpll_mgr.c 
b/drivers/gpu/drm/i915/display/intel_dpll_mgr.c
index 54c7a255b3a5..28c560417409 100644
--- a/drivers/gpu/drm/i915/display/intel_dpll_mgr.c
+++ b/drivers/gpu/drm/i915/display/intel_dpll_mgr.c
@@ -4607,8 +4607,20 @@ static void xe3plpd_pll_enable(struct intel_display 
*display,
        intel_xe3plpd_pll_enable(encoder, pll, dpll_hw_state);
 }
 
+static void xe3plpd_pll_disable(struct intel_display *display,
+                               struct intel_dpll *pll)
+{
+       struct intel_encoder *encoder = get_intel_encoder(display, pll);
+
+       if (drm_WARN_ON(display->drm, !encoder))
+               return;
+
+       intel_xe3plpd_pll_disable(encoder);
+}
+
 static const struct intel_dpll_funcs xe3plpd_pll_funcs = {
        .enable = xe3plpd_pll_enable,
+       .disable = xe3plpd_pll_disable,
        .get_hw_state = xe3plpd_pll_get_hw_state,
        .get_freq = xe3plpd_pll_get_freq,
 };
-- 
2.43.0

Reply via email to