[v2,0/8] drm/i915: pfit/scaler rework prep stuff
mbox series

Message ID 20200212161738.28141-1-ville.syrjala@linux.intel.com
Headers show
  • drm/i915: pfit/scaler rework prep stuff
Related show


Ville Syrjälä Feb. 12, 2020, 4:17 p.m. UTC
From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Rebased pfit/scaler rework prep stuff. The eventual aim is to expose
margin properties for external displays. Main use of which is to
squish the image down a bit to avoid overscan on displays that insist
on always overscanning. That will happen via the pfit/pipe scaler.

And to avoid the user getting a black/corrupted screen we also need
to add proper checks against various hw limits (scaling factors,
pfit window coordinates, etc.). In fact we're already missing a bunch
of checks for skl+ plane scaling cases (eg. the scaler simply doesn't
work correctly with >4k resolutions so thos have to be rejected).

Anyways, it's a fair amount of work so I'm posting it in smaller

The entire work can be found here:
git://github.com/vsyrjala/linux.git scaler_rework_2

Ville Syrjälä (8):
  drm/i915: Parametrize PFIT_PIPE
  drm/i915: Use intel_de_write_fw() for skl+ scaler registers
  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: 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

 drivers/gpu/drm/i915/display/icl_dsi.c        |  11 +-
 drivers/gpu/drm/i915/display/intel_display.c  | 319 ++++++++++--------
 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       |  38 +--
 drivers/gpu/drm/i915/display/intel_hdmi.c     |  37 +-
 drivers/gpu/drm/i915/display/intel_lvds.c     |  16 +-
 drivers/gpu/drm/i915/display/intel_panel.c    | 127 +++----
 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 +
 11 files changed, 288 insertions(+), 284 deletions(-)