[PULL] drm-intel-next

Rodrigo Vivi
2024-04-24T16:32:56Z

Hi Sima and Dave,

Here goes our last pull request towards 6.10.

drm-intel-next-2024-04-24:
Core Changes:
- Some DP/DP_MST DRM helpers (Imre)

Driver Changes (i915 Display):
- PLL refactoring (Ville)
- Limit eDP MSO pipe only for display version 20 (Luca)
- More display refactor towards independence from i915 dev_priv (Jani)
- QGV/SAGV related refactor (Stanislav)
- Few MTL/DSC and a UHBR monitor fix (Imre)
- BXT/GLK per-lane vswing and PHY reg cleanup (Ville)
The following changes since commit 700c34019555392a348f8c03237c1ebb5bf53eb4:

drm/i915/display: tie DMC wakelock to DC5/6 state transitions (2024-04-17 11:41:23 +0300)

are available in the Git repository at:

https://anongit.freedesktop.org/git/drm/drm-intel tags/drm-intel-next-2024-04-24

for you to fetch changes up to 6068bc209ac8d07a5d04e93f168465195e22a4cc:

drm/i915/dsi: pass display to register macros instead of implicit variable (2024-04-23 17:00:14 +0300)

----------------------------------------------------------------
Core Changes:
- Some DP/DP_MST DRM helpers (Imre)

Driver Changes (i915 Display):
- PLL refactoring (Ville)
- Limit eDP MSO pipe only for display version 20 (Luca)
- More display refactor towards independence from i915 dev_priv (Jani)
- QGV/SAGV related refactor (Stanislav)
- Few MTL/DSC and a UHBR monitor fix (Imre)
- BXT/GLK per-lane vswing and PHY reg cleanup (Ville)

----------------------------------------------------------------
Imre Deak (11):
drm/i915/dp: Fix DSC line buffer depth programming
drm/i915/dp_mst: Fix symbol clock when calculating the DSC DPT bpp limit
drm/i915/dp_mst: Fix BW limit check when calculating DSC DPT bpp
drm/i915/dp_mst: Account for channel coding efficiency in the DSC DPT bpp limit
drm/i915/dp_mst: Account with the DSC DPT bpp limit on MTL
drm/i915/dp_mst: Sanitize calculating the DSC DPT bpp limit
drm/dp: Add drm_dp_128b132b_supported()
drm/dp_mst: Factor out drm_dp_mst_port_is_logical()
drm/dp_mst: Add drm_dp_mst_aux_for_parent()
drm/i915/dp_mst: Make HBLANK expansion quirk work for logical ports
drm/i915/dp_mst: Enable HBLANK expansion quirk for UHBR rates

Jani Nikula (19):
drm/i915: use system include for drm headers
drm/i915/display: add intel_display -> drm_device backpointer
drm/i915/display: add generic to_intel_display() macro
drm/i915: add generic __to_intel_display()
drm/i915/display: accept either i915 or display for feature tests
drm/i915/quirks: convert struct drm_i915_private to struct intel_display
drm/i915/display: rename __intel_wait_for_register_nowl() to indicate intel_de_
drm/i915/dmc: convert dmc wakelock interface to struct intel_display
drm/i915/de: allow intel_display and drm_i915_private for de functions
drm/i915/dmc: use struct intel_display more
drm/i915/dmc: handle request_firmware() errors separately
drm/i915/dmc: improve firmware parse failure propagation
drm/i915/dmc: split out per-platform firmware path selection
drm/i915/dmc: change how to disable DMC firmware using module param
drm/i915/display: move dmc_firmware_path to display params
drm/i915/dsi: remove unused _MIPIA_AUTOPWG register definition
drm/i915/dsi: add VLV_ prefix to VLV only register macros
drm/i915/dsi: unify connector/encoder type and name usage
drm/i915/dsi: pass display to register macros instead of implicit variable

Luca Coelho (1):
drm/i915: limit eDP MSO pipe only for display version 20 and below

Stanislav Lisovskiy (4):
drm/i915/display: Add meaningful traces for QGV point info error handling
drm/i915/display: Extract code required to calculate max qgv/psf gv point
drm/i915/display: Disable SAGV on bw init, to force QGV point recalculation
drm/i915/display: handle systems with duplicate psf gv points

Ville Syrjälä (26):
drm/i915: Replace hand rolled PLL state dump with intel_dpll_dump_hw_state()
drm/i915: Use printer for the rest of PLL debugfs dump
drm/i915: Rename PLL hw_state variables/arguments
drm/i915: Introduce some local PLL state variables
drm/i915: Extract ilk_fb_cb_factor()
drm/i915: Extract ilk_dpll_compute_fp()
drm/i915: Extract i9xx_dpll_get_hw_state()
drm/i915: Pass the PLL hw_state to pll->enable()
drm/i915: Extract i965_dpll_md()
drm/i915: Extract {i9xx,i8xx,ilk,vlv,chv}_dpll()
drm/i915: Inline {i9xx,ilk}_update_pll_dividers()
drm/i915: Modernize i9xx_pll_refclk()
drm/i915: Drop pointless 'crtc' argument from *_crtc_clock_get()
drm/i915: s/pipe_config/crtc_state/ in legacy PLL code
drm/i915: Add local DPLL 'hw_state' variables
drm/i915: Carve up struct intel_dpll_hw_state
drm/i915: Unionize dpll_hw_state
drm/i915: Suck snps/cx0 PLL states into dpll_hw_state
drm/i915/dpio: Clean up bxt/glk PHY registers
drm/i915/dpio: Add per-lane PHY TX register definitons for bxt/glk
drm/i915/dpio: Extract bxt_dpio_phy_regs.h
drm/i915/dpio: Introdude bxt_ddi_phy_rmw_grp()
drm/i915/dpio: Use intel_de_rmw() for BXT DPIO latency optim setup
drm/i915/dpio: s/ddi/dpio/ for bxt/glk PHY stuff
drm/i915/dpio: Program bxt/glk PHY TX registers per-lane
drm/i915: Enable per-lane DP drive settings for bxt/glk

Vinod Govindapillai (2):
drm/i915/display: extract code to prepare qgv points mask
drm/i915/display: force qgv check after the hw state readout

drivers/gpu/drm/display/drm_dp_helper.c | 2 +
drivers/gpu/drm/display/drm_dp_mst_topology.c | 22 +-
drivers/gpu/drm/i915/display/bxt_dpio_phy_regs.h | 273 ++++++++++++
drivers/gpu/drm/i915/display/intel_backlight.c | 40 +-
drivers/gpu/drm/i915/display/intel_bw.c | 160 +++++--
drivers/gpu/drm/i915/display/intel_bw.h | 6 +
drivers/gpu/drm/i915/display/intel_cx0_phy.c | 20 +-
drivers/gpu/drm/i915/display/intel_ddi.c | 33 +-
drivers/gpu/drm/i915/display/intel_de.h | 157 ++++---
drivers/gpu/drm/i915/display/intel_display.c | 38 +-
.../drm/i915/display/intel_display_conversion.h | 22 +
drivers/gpu/drm/i915/display/intel_display_core.h | 3 +
.../gpu/drm/i915/display/intel_display_debugfs.c | 39 +-
.../gpu/drm/i915/display/intel_display_device.c | 3 +
.../gpu/drm/i915/display/intel_display_device.h | 5 +-
.../gpu/drm/i915/display/intel_display_driver.c | 5 +-
.../gpu/drm/i915/display/intel_display_params.c | 4 +
.../gpu/drm/i915/display/intel_display_params.h | 1 +
.../drm/i915/display/intel_display_power_well.c | 24 +-
drivers/gpu/drm/i915/display/intel_display_types.h | 80 ++--
drivers/gpu/drm/i915/display/intel_dmc.c | 179 +++++---
drivers/gpu/drm/i915/display/intel_dmc_wl.c | 72 +--
drivers/gpu/drm/i915/display/intel_dmc_wl.h | 12 +-
drivers/gpu/drm/i915/display/intel_dp.c | 18 +-
.../gpu/drm/i915/display/intel_dp_link_training.c | 2 +-
drivers/gpu/drm/i915/display/intel_dp_mst.c | 106 +++--
drivers/gpu/drm/i915/display/intel_dpio_phy.c | 213 +++++----
drivers/gpu/drm/i915/display/intel_dpio_phy.h | 48 +-
drivers/gpu/drm/i915/display/intel_dpll.c | 328 ++++++++------
drivers/gpu/drm/i915/display/intel_dpll.h | 12 +-
drivers/gpu/drm/i915/display/intel_dpll_mgr.c | 488 ++++++++++++---------
drivers/gpu/drm/i915/display/intel_dpll_mgr.h | 80 +++-
drivers/gpu/drm/i915/display/intel_panel.c | 10 +-
drivers/gpu/drm/i915/display/intel_pch_display.c | 4 +-
drivers/gpu/drm/i915/display/intel_pps.c | 6 +-
drivers/gpu/drm/i915/display/intel_quirks.c | 56 +--
drivers/gpu/drm/i915/display/intel_quirks.h | 6 +-
drivers/gpu/drm/i915/display/intel_snps_phy.c | 6 +-
drivers/gpu/drm/i915/display/skl_watermark.c | 2 +-
drivers/gpu/drm/i915/display/skl_watermark.h | 1 +
drivers/gpu/drm/i915/display/vlv_dsi.c | 467 ++++++++++----------
drivers/gpu/drm/i915/display/vlv_dsi_pll.c | 22 +-
drivers/gpu/drm/i915/display/vlv_dsi_regs.h | 327 +++++++-------
drivers/gpu/drm/i915/gvt/display.c | 1 +
drivers/gpu/drm/i915/gvt/handlers.c | 7 +-
drivers/gpu/drm/i915/gvt/mmio.c | 1 +
drivers/gpu/drm/i915/i915_params.c | 3 -
drivers/gpu/drm/i915/i915_params.h | 1 -
drivers/gpu/drm/i915/i915_reg.h | 262 -----------
drivers/gpu/drm/i915/intel_gvt_mmio_table.c | 19 +-
drivers/gpu/drm/i915/soc/intel_dram.c | 2 +
drivers/gpu/drm/xe/xe_device_types.h | 3 -
include/drm/display/drm_dp_helper.h | 6 +
include/drm/display/drm_dp_mst_helper.h | 7 +
include/drm/display/drm_dsc.h | 3 -
include/drm/i915_component.h | 2 +-
56 files changed, 2067 insertions(+), 1652 deletions(-)
create mode 100644 drivers/gpu/drm/i915/display/bxt_dpio_phy_regs.h
create mode 100644 drivers/gpu/drm/i915/display/intel_display_conversion.h