Hi Dave & Daniel - drm-intel-next-2021-12-14: drm/i915 feature pull #2 for v5.17: Features and functionality: - Add eDP privacy screen support (Hans) - Add Raptor Lake S (RPL-S) support (Anusha) - Add CD clock squashing support (Mika) - Properly support ADL-P without force probe (Clint) - Enable pipe color support (10 bit gamma) for display 13 platforms (Uma) - Update ADL-P DMC firmware to v2.14 (Madhumitha) Refactoring and cleanups: - More FBC refactoring preparing for multiple FBC instances (Ville) - Plane register cleanups (Ville) - Header refactoring and include cleanups (Jani) - Crtc helper and vblank wait function cleanups (Jani, Ville) - Move pipe/transcoder/abox masks under intel_device_info.display (Ville) Fixes: - Add a delay to let eDP source OUI write take effect (Lyude) - Use div32 version of MPLLB word clock for UHBR on SNPS PHY (Jani) - Fix DMC firmware loader overflow check (Harshit Mogalapalli) - Fully disable FBC on FIFO underruns (Ville) - Disable FBC with double wide pipe as mutually exclusive (Ville) - DG2 workarounds (Matt) - Non-x86 build fixes (Siva) - Fix HDR plane max width for NV12 (Vidya) - Disable IRQ for selftest timestamp calculation (Anshuman) - ADL-P VBT DDC pin mapping fix (Tejas) Merges: - Backmerge drm-next for privacy screen plumbing (Jani) BR, Jani. The following changes since commit c8a04cbeedbc9f71c475141baa656f14f4879792: Merge tag 'drm-misc-next-2021-11-29' of git://anongit.freedesktop.org/drm/drm-misc into drm-next (2021-12-09 09:31:45 +0100) are available in the Git repository at: git://anongit.freedesktop.org/drm/drm-intel tags/drm-intel-next-2021-12-14 for you to fetch changes up to 96db14432d979532be4cb6d5d52a127317e68b3f: drm/i915: Fix implicit use of struct pci_dev (2021-12-14 10:38:29 +0200) ---------------------------------------------------------------- drm/i915 feature pull #2 for v5.17: Features and functionality: - Add eDP privacy screen support (Hans) - Add Raptor Lake S (RPL-S) support (Anusha) - Add CD clock squashing support (Mika) - Properly support ADL-P without force probe (Clint) - Enable pipe color support (10 bit gamma) for display 13 platforms (Uma) - Update ADL-P DMC firmware to v2.14 (Madhumitha) Refactoring and cleanups: - More FBC refactoring preparing for multiple FBC instances (Ville) - Plane register cleanups (Ville) - Header refactoring and include cleanups (Jani) - Crtc helper and vblank wait function cleanups (Jani, Ville) - Move pipe/transcoder/abox masks under intel_device_info.display (Ville) Fixes: - Add a delay to let eDP source OUI write take effect (Lyude) - Use div32 version of MPLLB word clock for UHBR on SNPS PHY (Jani) - Fix DMC firmware loader overflow check (Harshit Mogalapalli) - Fully disable FBC on FIFO underruns (Ville) - Disable FBC with double wide pipe as mutually exclusive (Ville) - DG2 workarounds (Matt) - Non-x86 build fixes (Siva) - Fix HDR plane max width for NV12 (Vidya) - Disable IRQ for selftest timestamp calculation (Anshuman) - ADL-P VBT DDC pin mapping fix (Tejas) Merges: - Backmerge drm-next for privacy screen plumbing (Jani) ---------------------------------------------------------------- Anshuman Gupta (1): drm/i915/selftest: Disable IRQ for timestamp calculation Anusha Srivatsa (3): drm/i915/rpl-s: Add PCI IDS for Raptor Lake S drm/i915/rpl-s: Add PCH Support for Raptor Lake S drm/i915/rpl-s: Enable guc submission by default Clint Taylor (1): drm/i915/adlp: Remove require_force_probe protection Hans de Goede (2): drm/i915: Add intel_modeset_probe_defer() helper drm/i915: Add privacy-screen support (v3) Harshit Mogalapalli (1): drm/i915/display: Fix an unsigned subtraction which can never be negative. Jani Nikula (24): drm/i915/display: add intel_crtc_wait_for_next_vblank() and use it drm/i915/crtc: rename intel_get_crtc_for_pipe() to intel_crtc_for_pipe() drm/i915/crtc: rename intel_get_crtc_for_plane() to intel_crtc_for_plane() drm/i915/display: remove intel_wait_for_vblank() drm/i915/crtc: un-inline some crtc functions and move to intel_crtc.[ch] drm/i915/fb: move intel_fb_uses_dpt to intel_fb.c and un-inline drm/i915: split out intel_pm_types.h drm/i915: move enum hpd_pin to intel_display.h drm/i915/display: convert dp_to_i915() to a macro drm/i915/display: stop including i915_drv.h from intel_display_types.h drm/i915/snps: use div32 version of MPLLB word clock for UHBR drm/i915/ddi: add use_edp_hobl() and use_edp_low_vswing() helpers drm/i915/trace: clean up boilerplate organization drm/i915/trace: split out display trace to a separate file Merge drm/drm-next into drm-intel-next drm/i915/reset: include intel_display.h instead of intel_display_types.h drm/i915/active: remove useless i915_utils.h include drm/i915/psr: avoid intel_frontbuffer.h include with declaration drm/i915/fbc: avoid intel_frontbuffer.h include with declaration drm/i915/fb: reduce include dependencies drm/i915/pxp: un-inline intel_pxp_is_enabled() drm/i915/pxp: remove useless includes drm/i915/cdclk: move intel_atomic_check_cdclk() to intel_cdclk.c drm/i915/cdclk: hide struct intel_cdclk_vals Lyude Paul (1): drm/i915/dp: Perform 30ms delay after source OUI write Madhumitha Tolakanahalli Pradeep (2): drm/i915/dmc: Change max DMC FW size on ADL-P drm/i915/dmc: Update DMC to v2.14 on ADL-P Mark Brown (1): drm/i915: Fix implicit use of struct pci_dev Matt Atwood (1): drm/i915/dg2: extend Wa_1409120013 to DG2 Matt Roper (2): drm/i915/dg2: s/DISP_STEPPING/DISPLAY_STEPPING/ drm/i915/dg2: Add Wa_14010547955 Mika Kahola (4): drm/i915/display/dg2: Introduce CD clock squashing table drm/i915/display/dg2: Sanitize CD clock drm/i915/display/dg2: Set CD clock squashing registers drm/i915/display/dg2: Read CD clock from squasher table Siva Mullati (1): drm/i915: Skip remap_io_mapping() for non-x86 platforms Tejas Upadhyay (1): drm/i915/adl_p: Add ddc pin mapping Uma Shankar (3): drm/i915/xelpd: Enable Pipe color support for D13 platform drm/i915/xelpd: Enable Pipe Degamma drm/i915/xelpd: Add Pipe Color Lut caps to platform config Vidya Srinivas (1): drm/i915: Add PLANE_CUS_CTL restriction in max_width Ville Syrjälä (29): drm/i915: Get rid of the 64bit PLANE_CC_VAL mmio drm/i915: Rename plane YUV order bits drm/i915: Rename PLANE_CUS_CTL Y plane bits drm/i915/fbc: Eliminate racy intel_fbc_is_active() usage drm/i915/fbc: Pass whole plane state to intel_fbc_min_limit() drm/i915/fbc: Nuke lots of crap from intel_fbc_state_cache drm/i915/fbc: Relocate intel_fbc_override_cfb_stride() drm/i915/fbc: Nuke more FBC state drm/i915/fbc: Reuse the same struct for the cache and params drm/i915/fbc: Pass around FBC instance instead of crtc drm/i915/fbc: Track FBC usage per-plane drm/i915/fbc: Flatten __intel_fbc_pre_update() drm/i915/fbc: Pass i915 instead of FBC instance to FBC underrun stuff drm/i915/fbc: Move FBC debugfs stuff into intel_fbc.c drm/i915/fbc: Introduce intel_fbc_add_plane() drm/i915/fbc: Allocate intel_fbc dynamically drm/i915/fbc: Move stuff from intel_fbc_can_enable() into intel_fbc_check_plane() drm/i915/fbc: Disable FBC fully on FIFO underrun drm/i915/fbc: Nuke state_cache drm/i915/fbc: Move plane pointer into intel_fbc_state drm/i915/fbc: s/parms/fbc_state/ drm/i915/fbc: No FBC+double wide pipe drm/i915/fbc: Pimp the FBC debugfs output drm/i915: Get rid of the "sizes are 0 based" stuff drm/i915: Allow cdclk squasher to be reconfigured live drm/i915: Nuke {pipe,plane}_to_crtc_mapping[] drm/i915: Relocate intel_crtc_for_plane() drm/i915: s/intel_get_first_crtc/intel_first_crtc/ drm/i915: Move pipe/transcoder/abox masks under intel_device_info.display arch/x86/kernel/early-quirks.c | 1 + drivers/gpu/drm/i915/Makefile | 1 + drivers/gpu/drm/i915/display/g4x_dp.c | 1 + drivers/gpu/drm/i915/display/g4x_hdmi.c | 1 + drivers/gpu/drm/i915/display/i9xx_plane.c | 15 +- drivers/gpu/drm/i915/display/intel_atomic.c | 1 + drivers/gpu/drm/i915/display/intel_atomic_plane.c | 7 +- drivers/gpu/drm/i915/display/intel_audio.c | 3 +- drivers/gpu/drm/i915/display/intel_bios.c | 14 +- drivers/gpu/drm/i915/display/intel_cdclk.c | 200 +++- drivers/gpu/drm/i915/display/intel_cdclk.h | 10 +- drivers/gpu/drm/i915/display/intel_color.c | 23 +- drivers/gpu/drm/i915/display/intel_crt.c | 6 +- drivers/gpu/drm/i915/display/intel_crtc.c | 48 +- drivers/gpu/drm/i915/display/intel_crtc.h | 7 + drivers/gpu/drm/i915/display/intel_ddi.c | 16 + drivers/gpu/drm/i915/display/intel_ddi_buf_trans.c | 94 +- drivers/gpu/drm/i915/display/intel_display.c | 153 ++- drivers/gpu/drm/i915/display/intel_display.h | 30 +- .../gpu/drm/i915/display/intel_display_debugfs.c | 54 +- drivers/gpu/drm/i915/display/intel_display_power.c | 4 +- drivers/gpu/drm/i915/display/intel_display_trace.c | 9 + drivers/gpu/drm/i915/display/intel_display_trace.h | 587 ++++++++++ drivers/gpu/drm/i915/display/intel_display_types.h | 79 +- drivers/gpu/drm/i915/display/intel_dmc.c | 10 +- drivers/gpu/drm/i915/display/intel_dp.c | 14 +- drivers/gpu/drm/i915/display/intel_dp.h | 2 + .../gpu/drm/i915/display/intel_dp_aux_backlight.c | 6 + .../gpu/drm/i915/display/intel_dp_link_training.c | 2 +- drivers/gpu/drm/i915/display/intel_dpll.c | 2 +- drivers/gpu/drm/i915/display/intel_dsi.c | 2 + drivers/gpu/drm/i915/display/intel_fb.c | 11 + drivers/gpu/drm/i915/display/intel_fb.h | 2 + drivers/gpu/drm/i915/display/intel_fb_pin.c | 10 +- drivers/gpu/drm/i915/display/intel_fbc.c | 1177 ++++++++++---------- drivers/gpu/drm/i915/display/intel_fbc.h | 16 +- drivers/gpu/drm/i915/display/intel_fdi.c | 5 +- drivers/gpu/drm/i915/display/intel_fifo_underrun.c | 14 +- drivers/gpu/drm/i915/display/intel_frontbuffer.c | 7 +- drivers/gpu/drm/i915/display/intel_frontbuffer.h | 2 +- drivers/gpu/drm/i915/display/intel_plane_initial.c | 5 +- drivers/gpu/drm/i915/display/intel_psr.h | 11 +- drivers/gpu/drm/i915/display/intel_quirks.c | 1 + drivers/gpu/drm/i915/display/intel_sdvo.c | 2 +- drivers/gpu/drm/i915/display/intel_snps_phy.c | 2 + drivers/gpu/drm/i915/display/intel_sprite.c | 34 +- drivers/gpu/drm/i915/display/intel_tv.c | 8 +- drivers/gpu/drm/i915/display/intel_vbt_defs.h | 7 +- drivers/gpu/drm/i915/display/intel_vdsc.c | 17 +- drivers/gpu/drm/i915/display/skl_universal_plane.c | 61 +- drivers/gpu/drm/i915/gem/i915_gem_mman.c | 1 + drivers/gpu/drm/i915/gt/intel_reset.c | 2 +- drivers/gpu/drm/i915/gt/selftest_gt_pm.c | 4 +- drivers/gpu/drm/i915/gt/uc/intel_uc.c | 2 +- drivers/gpu/drm/i915/gvt/fb_decoder.c | 2 +- drivers/gpu/drm/i915/i915_active_types.h | 2 - drivers/gpu/drm/i915/i915_debugfs.c | 1 - drivers/gpu/drm/i915/i915_driver.c | 1 - drivers/gpu/drm/i915/i915_drv.h | 210 +--- drivers/gpu/drm/i915/i915_irq.c | 8 +- drivers/gpu/drm/i915/i915_mm.c | 28 +- drivers/gpu/drm/i915/i915_mm.h | 35 + drivers/gpu/drm/i915/i915_pci.c | 91 +- drivers/gpu/drm/i915/i915_reg.h | 48 +- drivers/gpu/drm/i915/i915_trace.h | 577 +--------- drivers/gpu/drm/i915/intel_device_info.c | 31 +- drivers/gpu/drm/i915/intel_device_info.h | 12 +- drivers/gpu/drm/i915/intel_pch.c | 1 + drivers/gpu/drm/i915/intel_pch.h | 1 + drivers/gpu/drm/i915/intel_pm.c | 41 +- drivers/gpu/drm/i915/intel_pm_types.h | 76 ++ drivers/gpu/drm/i915/pxp/intel_pxp.c | 5 + drivers/gpu/drm/i915/pxp/intel_pxp.h | 15 +- drivers/gpu/drm/i915/pxp/intel_pxp_types.h | 2 - include/drm/i915_pciids.h | 9 + 75 files changed, 2104 insertions(+), 1895 deletions(-) create mode 100644 drivers/gpu/drm/i915/display/intel_display_trace.c create mode 100644 drivers/gpu/drm/i915/display/intel_display_trace.h create mode 100644 drivers/gpu/drm/i915/i915_mm.h create mode 100644 drivers/gpu/drm/i915/intel_pm_types.h -- Jani Nikula, Intel Open Source Graphics Center