drm/i915/lvds: separate border enable readout from panel fitter
The LVDS border enable is independent from the panel fitter. Move the readout of the "border bits" from i9xx_get_pfit_config() to intel_lvds_get_config(), where it will be read if LVDS is enabled even if the panel fitter is not. This fixes the state checker warning: [drm:intel_pipe_config_compare [i915]] *ERROR* mismatch in gmch_pfit.lvds_border_bits (expected 0x00008000, found 0x00000000) Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> Cc: drm-intel-fixes@lists.freedesktop.org Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=87632 Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Tested-by: Sitsofe Wheeler <sitsofe@yahoo.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com> Link: http://patchwork.freedesktop.org/patch/msgid/1461933243-2140-1-git-send-email-jani.nikula@intel.com
This commit is contained in:
parent
c14005a80f
commit
a0cbe6a3f1
|
@ -8022,9 +8022,6 @@ static void i9xx_get_pfit_config(struct intel_crtc *crtc,
|
||||||
|
|
||||||
pipe_config->gmch_pfit.control = tmp;
|
pipe_config->gmch_pfit.control = tmp;
|
||||||
pipe_config->gmch_pfit.pgm_ratios = I915_READ(PFIT_PGM_RATIOS);
|
pipe_config->gmch_pfit.pgm_ratios = I915_READ(PFIT_PGM_RATIOS);
|
||||||
if (INTEL_INFO(dev)->gen < 5)
|
|
||||||
pipe_config->gmch_pfit.lvds_border_bits =
|
|
||||||
I915_READ(LVDS) & LVDS_BORDER_ENABLE;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void vlv_crtc_clock_get(struct intel_crtc *crtc,
|
static void vlv_crtc_clock_get(struct intel_crtc *crtc,
|
||||||
|
|
|
@ -122,6 +122,10 @@ static void intel_lvds_get_config(struct intel_encoder *encoder,
|
||||||
|
|
||||||
pipe_config->base.adjusted_mode.flags |= flags;
|
pipe_config->base.adjusted_mode.flags |= flags;
|
||||||
|
|
||||||
|
if (INTEL_INFO(dev)->gen < 5)
|
||||||
|
pipe_config->gmch_pfit.lvds_border_bits =
|
||||||
|
tmp & LVDS_BORDER_ENABLE;
|
||||||
|
|
||||||
/* gen2/3 store dither state in pfit control, needs to match */
|
/* gen2/3 store dither state in pfit control, needs to match */
|
||||||
if (INTEL_INFO(dev)->gen < 4) {
|
if (INTEL_INFO(dev)->gen < 4) {
|
||||||
tmp = I915_READ(PFIT_CONTROL);
|
tmp = I915_READ(PFIT_CONTROL);
|
||||||
|
|
Loading…
Reference in New Issue