• Daniel Vetter's avatar
    drm/i915: move dp clock computations to encoder->compute_config · c6bb3538
    Daniel Vetter authored
    With the exception of hsw, which has dedicated DP clocks which run at
    the fixed frequency already, and vlv, which doesn't have optmized
    pre-defined dp clock parameters (yet).
    
    v2: Ville asked me to elaborate a bit more on the longer-term goals
    wrt dpll settings computation:
    
    So ultimately my idea is that in the compute config stage first the crtc
    code puts the default platform pll limits into the pipe_config. Then
    encoders can either overwrite that limit structure with their own special
    stuff (mostly for lvds madness). Or they can pick some or all of the
    parameters (e.g. just the p2 switchover on hdmi, or all the clock
    parameters for dp/sdvo tv).
    
    Once that's done then the generic crtc code can fill out any missing bits
    (using the find_best_pll code) and then try to assign which pll to use (if
    it's a platform with shared plls). In the end the modeset could should
    simply write the computed stuff into registers and never be able to fail.
    
    Of course there's still a lot of data to be moved into pipe_config to make
    this all happen, hence some of the temporary ugliness.
    
    Reviewed-by: Jesse Barnes <jbarnes@virtuousgeek.org> (v1)
    Reviewed-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
    Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
    c6bb3538
intel_dp.c 88.5 KB