Hi Dave and Daniel, Here goes our first pull request of this round. drm-intel-next-2023-08-03: - Removing unused declarations (Arnd, Gustavo) - ICL+ DSI modeset sequence fixes (Ville) - Improvements on HDCP (Suraj) - Fixes and clean up on MTL Display (Mika Kahola, Lee, RK, Nirmoy, Chaitanya) - Restore HSW/BDW PSR1 (Ville) - Other PSR Fixes (Jouni) - Fixes around DC states and other Display Power (Imre) - Init DDI ports in VBT order (Ville) - General documentation fixes (Jani) - General refactor for better organization (Jani) - Bigjoiner fix (Stanislav) - VDSC Fixes and improvements (Stanialav, Suraj) - Hotplug fixes and improvements (Simon, Suraj) - Start using plane scale factor for relative data rate (Stanislav) - Use shmem for dpt objects (RK) - Simplify expression &to_i915(dev)->drm (Uwe) - Do not access i915_gem_object members from frontbuffer tracking (Jouni) - Fix uncore race around i915->params.mmio_debug (Jani) Thanks, Rodrigo. The following changes since commit 69f06e4fa098420e94f6970332e84f0ed493271c: Merge drm/drm-next into drm-intel-next (2023-06-10 10:04:00 +0300) are available in the Git repository at: git://anongit.freedesktop.org/drm/drm-intel tags/drm-intel-next-2023-08-03 for you to fetch changes up to d823445b09a2f1c43877b87a55fc699c3a836fc2: drm/i915/uncore: fix race around i915->params.mmio_debug (2023-08-01 19:39:17 +0300) ---------------------------------------------------------------- - Removing unused declarations (Arnd, Gustavo) - ICL+ DSI modeset sequence fixes (Ville) - Improvements on HDCP (Suraj) - Fixes and clean up on MTL Display (Mika Kahola, Lee, RK, Nirmoy, Chaitanya) - Restore HSW/BDW PSR1 (Ville) - Other PSR Fixes (Jouni) - Fixes around DC states and other Display Power (Imre) - Init DDI ports in VBT order (Ville) - General documentation fixes (Jani) - General refactor for better organization (Jani) - Bigjoiner fix (Stanislav) - VDSC Fixes and improvements (Stanialav, Suraj) - Hotplug fixes and improvements (Simon, Suraj) - Start using plane scale factor for relative data rate (Stanislav) - Use shmem for dpt objects (RK) - Simplify expression &to_i915(dev)->drm (Uwe) - Do not access i915_gem_object members from frontbuffer tracking (Jouni) - Fix uncore race around i915->params.mmio_debug (Jani) ---------------------------------------------------------------- Arnd Bergmann (1): drm/i915/gmch: avoid unused variable warning Chaitanya Kumar Borah (2): drm/i915/color: Upscale degamma values for MTL drm/i915/color: Downscale degamma lut values read from hardware Gustavo Sousa (1): drm/i915: Remove prototype for intel_cx0_phy_ddi_vswing_sequence() Imre Deak (5): drm/i915/adlp+: Allow DC states along with PW2 only for PWB functionality drm/i915: Add missing forward declarations/includes to display power headers drm/i915: Remove redundant forward declarations from display power headers drm/i915: Add way to specify the power-off delay of a display power domain drm/i915: Prevent needless toggling of DC states during modesets Jani Nikula (13): drm/doc: fix duplicate declaration warning drm/i915: fix Sphinx indentation warning drm/i915: use mock device info for creating mock device drm/i915: move platform_engine_mask and memory_regions to device info drm/i915: separate display info printing from the rest drm/i915: fix display info usage drm/i915: move display device and runtime info to struct intel_display drm/i915: make device info a const pointer to rodata drm/i915/uncore: add intel_uncore_regs() helper drm/i915/dram: replace __raw_uncore_read32() with intel_uncore_read_fw() Revert "drm/i915: use localized __diag_ignore_all() instead of per file" drm/i915/uncore: split unclaimed_reg_debug() to header and footer drm/i915/uncore: fix race around i915->params.mmio_debug Jouni Högander (5): drm/i915/psr: Use hw.adjusted mode when calculating io/fast wake times drm/i915: Add macros to get i915 device from i915_gem_object drm/i915: Add getter/setter for i915_gem_object->frontbuffer drm/i915/display: Remove i915_gem_object_types.h from intel_frontbuffer.h drm/i915: Add function to clear scanout flag for vmas Lee Shawn C (2): drm/i915/mtl: update DP 2.0 vswing table for C20 phy drm/i915/mtl: Add new vswing table for C20 phy to support DP 1.4 Mika Kahola (1): drm/i915/mtl: Cleanup usage of phy lane reset Nirmoy Das (1): drm/i915/display: Do not use stolen on MTL Radhakrishna Sripada (3): drm/i915/mtl: Fix SSC selection for MPLLA drm/i915/mtl: Skip using vbt hdmi_level_shifter selection on MTL drm/i915/dpt: Use shmem for dpt objects Simon Ser (1): i915/display/hotplug: use drm_kms_helper_connector_hotplug_event() Stanislav Lisovskiy (5): drm/i915: Don't preserve dpll_hw_state for slave crtc in Bigjoiner drm/i915: Fail if DSC compression requirement is less than platform supports drm/i915: Add helper function for getting number of VDSC engines drm/i915: Don't rely that 2 VDSC engines are always enough for pixel rate drm/i915: Start using plane scale factor for relative data rate Suraj Kandpal (8): drm/i915/hdcp: Modify hdcp_gsc_message msg sending mechanism drm/i915/hdcp: Assign correct hdcp content type drm/i915/hdcp: Add a debug statement at hdcp2 capability check drm/i915/dsc: Move rc param calculation for native_420 drm/i915/drm: Fix comment for YCbCr20 qp table declaration drm/i915/dsc: Add rc_range_parameter calculation for YCbCr420 drm/i915/vdsc: Remove FIXME in intel_dsc_compute_config drm/i915/hotplug: Reduce SHPD_FILTER to 250us Uwe Kleine-König (1): drm/i915: Simplify expression &to_i915(dev)->drm Ville Syrjälä (39): drm/i915/dsi: Do panel power on + reset deassert earlier on icl+ drm/i915/dsi: Do display on sequence later on icl+ drm/i915/dsi: Print the VBT MIPI sequence delay duration drm/i915/dsi: Split icl+ D-PHY vs. DSI timing steps drm/i915/dsi: Gate DSI clocks earlier drm/i915/dsi: Respect power cycle delay on icl+ drm/i915/dsi: Implement encoder->shutdown() for icl+ drm/i915/dsi: Move most things from .disable() into .post_disable() on icl+ drm/i915/dsi: Do DSC/scaler disable earlier on icl+ drm/i915/dsi: Respect power_off_delay on icl+ drm/i915/dsi: Move panel reset+power off to be the last thing drm/i915/dsi: Grab the crtc from the customary place drm/i915/dsi: Remove weird has_pch_encoder asserts drm/i915: Re-init clock gating on coming out of PC8+ drm/i915/psr: Fix BDW PSR AUX CH data register offsets drm/i915/psr: Wrap PSR1 register with functions drm/i915/psr: Reintroduce HSW PSR1 registers drm/i915/psr: Bring back HSW/BDW PSR AUX CH registers/setup drm/i915/psr: HSW/BDW have no PSR2 drm/i915/psr: Restore PSR interrupt handler for HSW drm/i915/psr: Implement WaPsrDPAMaskVBlankInSRD:hsw drm/i915/psr: Implement WaPsrDPRSUnmaskVBlankInSRD:hsw drm/i915/psr: Do no mask display register writes on hsw/bdw drm/i915/psr: Don't skip both TP1 and TP2/3 on hsw/bdw drm/i915/psr: Allow PSR with sprite enabled on hsw/bdw drm/i915/psr: Re-enable PSR1 on hsw/bdw drm/i915: Remove bogus DDI-F from hsw/bdw output init drm/i915: Introduce device info port_mask drm/i915: Assert that device info bitmasks have enough bits drm/i915: Assert that the port being initialized is valid drm/i915: Beef up SDVO/HDMI port checks drm/i915: Init DDI outputs based on port_mask on skl+ drm/i915: Convert HSW/BDW to use port_mask for DDI probe drm/i915: Initialize dig_port->aux_ch to NONE to be sure drm/i915: Only populate aux_ch if really needed drm/i915: Remove DDC pin sanitation drm/i915: Remove AUX CH sanitation drm/i915/bios: Extract intel_bios_encoder_port() drm/i915: Try to initialize DDI/ICL+ DSI ports for every VBT child device Documentation/gpu/rfc/i915_scheduler.rst | 4 + drivers/gpu/drm/i915/Makefile | 5 + drivers/gpu/drm/i915/display/g4x_dp.c | 8 + drivers/gpu/drm/i915/display/g4x_hdmi.c | 23 ++- drivers/gpu/drm/i915/display/icl_dsi.c | 134 ++++++++----- drivers/gpu/drm/i915/display/icl_dsi.h | 4 +- drivers/gpu/drm/i915/display/intel_atomic_plane.c | 7 +- drivers/gpu/drm/i915/display/intel_bios.c | 188 +++++------------- drivers/gpu/drm/i915/display/intel_bios.h | 6 + drivers/gpu/drm/i915/display/intel_cdclk.c | 12 +- drivers/gpu/drm/i915/display/intel_color.c | 27 ++- drivers/gpu/drm/i915/display/intel_crt.c | 2 + drivers/gpu/drm/i915/display/intel_cx0_phy.c | 16 +- drivers/gpu/drm/i915/display/intel_cx0_phy.h | 3 - drivers/gpu/drm/i915/display/intel_ddi.c | 106 ++++++++-- drivers/gpu/drm/i915/display/intel_ddi.h | 4 +- drivers/gpu/drm/i915/display/intel_ddi_buf_trans.c | 28 ++- drivers/gpu/drm/i915/display/intel_display.c | 107 ++--------- drivers/gpu/drm/i915/display/intel_display.h | 4 +- drivers/gpu/drm/i915/display/intel_display_core.h | 11 +- .../gpu/drm/i915/display/intel_display_debugfs.c | 6 +- .../gpu/drm/i915/display/intel_display_device.c | 192 ++++++++++++------ .../gpu/drm/i915/display/intel_display_device.h | 6 + drivers/gpu/drm/i915/display/intel_display_irq.c | 18 +- drivers/gpu/drm/i915/display/intel_display_power.c | 47 +++-- drivers/gpu/drm/i915/display/intel_display_power.h | 33 +++- .../gpu/drm/i915/display/intel_display_power_map.c | 16 +- .../drm/i915/display/intel_display_power_well.h | 3 +- drivers/gpu/drm/i915/display/intel_dp.c | 13 +- drivers/gpu/drm/i915/display/intel_dp_aux.c | 53 ++++- drivers/gpu/drm/i915/display/intel_dp_aux.h | 3 + drivers/gpu/drm/i915/display/intel_dpt.c | 4 +- drivers/gpu/drm/i915/display/intel_dsi.c | 20 ++ drivers/gpu/drm/i915/display/intel_dsi.h | 2 + drivers/gpu/drm/i915/display/intel_dsi_vbt.c | 2 +- drivers/gpu/drm/i915/display/intel_dvo.c | 2 + drivers/gpu/drm/i915/display/intel_fbdev.c | 9 +- drivers/gpu/drm/i915/display/intel_frontbuffer.c | 46 ++--- drivers/gpu/drm/i915/display/intel_frontbuffer.h | 28 --- drivers/gpu/drm/i915/display/intel_hdcp.c | 7 +- drivers/gpu/drm/i915/display/intel_hdcp_gsc.c | 80 ++++---- drivers/gpu/drm/i915/display/intel_hdcp_gsc.h | 3 +- drivers/gpu/drm/i915/display/intel_hdmi.c | 72 +++++-- drivers/gpu/drm/i915/display/intel_hotplug.c | 14 +- drivers/gpu/drm/i915/display/intel_hotplug_irq.c | 4 +- drivers/gpu/drm/i915/display/intel_overlay.c | 5 +- drivers/gpu/drm/i915/display/intel_psr.c | 200 +++++++++++++++---- drivers/gpu/drm/i915/display/intel_psr_regs.h | 18 +- drivers/gpu/drm/i915/display/intel_qp_tables.c | 10 +- drivers/gpu/drm/i915/display/intel_sdvo.c | 20 +- drivers/gpu/drm/i915/display/intel_vdsc.c | 214 +++++++++++++-------- drivers/gpu/drm/i915/display/intel_vdsc.h | 1 + drivers/gpu/drm/i915/display/vlv_dsi.c | 23 --- drivers/gpu/drm/i915/gem/i915_gem_object.c | 4 +- drivers/gpu/drm/i915/gem/i915_gem_object.h | 67 +++++++ drivers/gpu/drm/i915/gem/i915_gem_object_types.h | 3 + .../gpu/drm/i915/gt/intel_execlists_submission.c | 6 +- drivers/gpu/drm/i915/gt/intel_ggtt_fencing.c | 2 +- drivers/gpu/drm/i915/gt/intel_gt.c | 2 +- drivers/gpu/drm/i915/gt/intel_gt_irq.c | 8 +- drivers/gpu/drm/i915/gt/intel_sa_media.c | 2 +- drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c | 2 +- drivers/gpu/drm/i915/gt/uc/intel_huc.c | 4 +- drivers/gpu/drm/i915/i915_debugfs.c | 1 + drivers/gpu/drm/i915/i915_driver.c | 2 + drivers/gpu/drm/i915/i915_drv.h | 11 +- drivers/gpu/drm/i915/i915_gpu_error.c | 6 + drivers/gpu/drm/i915/i915_gpu_error.h | 3 + drivers/gpu/drm/i915/i915_irq.c | 20 +- drivers/gpu/drm/i915/i915_pci.c | 69 +++---- drivers/gpu/drm/i915/i915_reg.h | 1 + drivers/gpu/drm/i915/i915_vma.c | 28 ++- drivers/gpu/drm/i915/i915_vma.h | 2 + drivers/gpu/drm/i915/intel_clock_gating.c | 11 ++ drivers/gpu/drm/i915/intel_device_info.c | 48 ++--- drivers/gpu/drm/i915/intel_device_info.h | 11 +- drivers/gpu/drm/i915/intel_uncore.c | 44 +++-- drivers/gpu/drm/i915/intel_uncore.h | 5 + drivers/gpu/drm/i915/selftests/intel_uncore.c | 2 +- drivers/gpu/drm/i915/selftests/mock_gem_device.c | 45 +++-- drivers/gpu/drm/i915/soc/intel_dram.c | 2 +- drivers/gpu/drm/i915/soc/intel_gmch.c | 4 +- 82 files changed, 1447 insertions(+), 841 deletions(-)