if (!crtc_state->hw.enable)
                return 0;
 
-       ret = i915->dpll_funcs->crtc_compute_clock(state, crtc);
+       ret = i915->display.funcs.dpll->crtc_compute_clock(state, crtc);
        if (ret) {
                drm_dbg_kms(&i915->drm, "[CRTC:%d:%s] Couldn't calculate DPLL settings\n",
                            crtc->base.base.id, crtc->base.name);
        if (!crtc_state->hw.enable)
                return 0;
 
-       if (!i915->dpll_funcs->crtc_get_shared_dpll)
+       if (!i915->display.funcs.dpll->crtc_get_shared_dpll)
                return 0;
 
-       ret = i915->dpll_funcs->crtc_get_shared_dpll(state, crtc);
+       ret = i915->display.funcs.dpll->crtc_get_shared_dpll(state, crtc);
        if (ret) {
                drm_dbg_kms(&i915->drm, "[CRTC:%d:%s] Couldn't get a shared DPLL\n",
                            crtc->base.base.id, crtc->base.name);
 intel_dpll_init_clock_hook(struct drm_i915_private *dev_priv)
 {
        if (IS_DG2(dev_priv))
-               dev_priv->dpll_funcs = &dg2_dpll_funcs;
+               dev_priv->display.funcs.dpll = &dg2_dpll_funcs;
        else if (DISPLAY_VER(dev_priv) >= 9 || HAS_DDI(dev_priv))
-               dev_priv->dpll_funcs = &hsw_dpll_funcs;
+               dev_priv->display.funcs.dpll = &hsw_dpll_funcs;
        else if (HAS_PCH_SPLIT(dev_priv))
-               dev_priv->dpll_funcs = &ilk_dpll_funcs;
+               dev_priv->display.funcs.dpll = &ilk_dpll_funcs;
        else if (IS_CHERRYVIEW(dev_priv))
-               dev_priv->dpll_funcs = &chv_dpll_funcs;
+               dev_priv->display.funcs.dpll = &chv_dpll_funcs;
        else if (IS_VALLEYVIEW(dev_priv))
-               dev_priv->dpll_funcs = &vlv_dpll_funcs;
+               dev_priv->display.funcs.dpll = &vlv_dpll_funcs;
        else if (IS_G4X(dev_priv))
-               dev_priv->dpll_funcs = &g4x_dpll_funcs;
+               dev_priv->display.funcs.dpll = &g4x_dpll_funcs;
        else if (IS_PINEVIEW(dev_priv))
-               dev_priv->dpll_funcs = &pnv_dpll_funcs;
+               dev_priv->display.funcs.dpll = &pnv_dpll_funcs;
        else if (DISPLAY_VER(dev_priv) != 2)
-               dev_priv->dpll_funcs = &i9xx_dpll_funcs;
+               dev_priv->display.funcs.dpll = &i9xx_dpll_funcs;
        else
-               dev_priv->dpll_funcs = &i8xx_dpll_funcs;
+               dev_priv->display.funcs.dpll = &i8xx_dpll_funcs;
 }
 
 static bool i9xx_has_pps(struct drm_i915_private *dev_priv)