• Daniel Vetter's avatar
    drm/i915: move find_pll callback to dev_priv->display · ee9300bb
    Daniel Vetter authored
    Now that the DP madness is cleared out, this is all only per-platform.
    So move it out from the intel clock limits structure.
    
    While at it drop the intel prefix on the static functions, call the
    vtable entry find_dpll (since it's for the display pll) and rip out
    the now unnecessary forward declarations.
    
    Note that the parameters of ->find_dpll are still unchanged, but they
    eventually need to be moved over to just take in a pipe configuration.
    But currently a lot of things are still missing from the pipe
    configuration (reflock, output-specific dpll limits and preferences,
    downclocked dotclock). So this will happen in a later step.
    
    Note that intel_g4x_limit has a peculiar case where it selects
    intel_limits_i9xx_sdvo as the limit. This is pretty bogus and also not
    used since the only output types left are DP and native TV-out which
    both use special pre-tuned dpll values.
    
    v2: Re-add comment for the find_pll callback (requested by Paulo) and
    elaborate on why the transformation is correct for g4x platforms (to
    clarify a review question from Paulo). Double up on that by adding a
    WARN as suggested by Paulo Zanoni on irc.
    
    v3: Initialize limits to NULL since gcc is now unhappy.
    
    v4: v2/3 will blow up with a NULL dereference in ->find_dpll for dp and
    TV-out ports, spotted by Paulo on irc. So just give up on this madness for
    now, and leave this to be fixed in a later patch.
    
    v5: Since the ever-so-slight change for g4x might result in some dpll
    parameter computation failing spuriously where before it didn't for
    ports with preset dpll settings (DP & TV-out) override this. For
    paranoia also do it in the ilk+ code.
    
    Cc: Paulo Zanoni <przanoni@gmail.com>
    Reviewed-by: default avatarPaulo Zanoni <paulo.r.zanoni@intel.com>
    Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
    ee9300bb
i915_drv.h 61.7 KB