[Intel-gfx] [PATCH 00/15] drm/i915: Expose margin connector properties for underscan

Ville Syrjala ville.syrjala at linux.intel.com
Wed Sep 4 16:26:10 UTC 2019


From: Ville Syrjälä <ville.syrjala at linux.intel.com>

Apparently some TVs suck and always overscan even when our infoframes
say that the image should be underscanned. Let's expose the (now
standard) margin properties to allow the user the compensate by
squishing the image down a bit via the panel fitter.

I've only implemented this for ilk+ because the old gmch panel fitter
is annoyingly limited. Also there is only one pfit on gmch platforms
(not counting the gm45 TV scaler -> pfit2 trick, which we don't even
support at the moment). SKL+ are also a bit limited by the number
of pipe scalers they have available for pfit vs. plane scaling, but
we'll leave that up to the usual atomic "-EINVAL -> try something
different" approach.

Entire series available here:
git://github.com/vsyrjala/linux.git hdmi_margins_3

Ville Syrjälä (15):
  drm/edid: Add drm_hdmi_avi_infoframe_bars()
  drm/i915: Parametrize PFIT_PIPE
  drm/i915: Replace some accidental I915_READ_FW()s with the normal
    version
  drm/i915: Fix skl+ non-scaled pfit modes
  drm/i915: Flatten a bunch of the pfit functions
  drm/i915: Use drm_rect to store the pfit window pos/size
  drm/i915: Check pipe source size against pfit limits
  drm/i915: Check pfit scaling factors
  drm/i915: Check pfit minimum timings
  drm/i915: s/pipe_config/crtc_state/ in pfit functions
  drm/i915: Pass connector state to pfit calculations
  drm/i915: Have pfit calculations return an error code
  drm/i915: Expose margin properties on ilk+ HDMI
  drm/i915: Expose margin properties on ilk+ DP SST
  drm/i915: Expose margin properties on DP MST

 drivers/gpu/drm/drm_edid.c                    |  17 +
 drivers/gpu/drm/i915/display/icl_dsi.c        |  11 +-
 drivers/gpu/drm/i915/display/intel_atomic.c   |   4 +
 drivers/gpu/drm/i915/display/intel_display.c  | 429 ++++++++++++------
 drivers/gpu/drm/i915/display/intel_display.h  |   1 -
 .../drm/i915/display/intel_display_types.h    |   3 +-
 drivers/gpu/drm/i915/display/intel_dp.c       |  53 +--
 drivers/gpu/drm/i915/display/intel_dp_mst.c   |   7 +
 drivers/gpu/drm/i915/display/intel_hdmi.c     |  50 +-
 drivers/gpu/drm/i915/display/intel_lspcon.c   |   2 +
 drivers/gpu/drm/i915/display/intel_lvds.c     |  16 +-
 drivers/gpu/drm/i915/display/intel_panel.c    | 146 +++---
 drivers/gpu/drm/i915/display/intel_panel.h    |  10 +-
 drivers/gpu/drm/i915/display/vlv_dsi.c        |   9 +-
 drivers/gpu/drm/i915/i915_reg.h               |   1 +
 drivers/gpu/drm/i915/intel_pm.c               |  37 +-
 include/drm/drm_edid.h                        |   4 +
 17 files changed, 506 insertions(+), 294 deletions(-)

-- 
2.21.0



More information about the Intel-gfx mailing list