Message ID | 20200430124904.GA100924@jlahtine-desk.ger.corp.intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [PULL] drm-intel-next | expand |
Ping for merging this? If there are no issues, I'd prefer to pull in next gvt-next and tag the final pull sooner than later. Regards, Joonas Quoting Joonas Lahtinen (2020-04-30 15:49:04) > Hi Dave & Daniel, > > Fix for performance regression GitLab #1698: Iris Plus 655 and > 4K screen. Missing workarounds for Tigerlake, and a fix for > DP display audio WA. Unbreaking enable_dpcd_backlight, fixes > to power code for Icelake+. > > Improvements to the soft-RC6 code to improve power efficiency, > a fix for the timestamp corruption on Tigerlake and plenty of > smaller fixes for CI found corner cases. > > Lots of refactoring that prep for upcoming changes, so I expect > the next PR to be quite busy. > > Includes gvt-next-2020-04-22: Removes left non-upstream xen support > bits which will be kept out of tree instead. And several guest > context shadow optimizations. > > Regards, Joonas > > PS. Noticed the ack for locking rules, thanks! Will merge it. > > *** > > drm-intel-next-2020-04-30: > > Driver Changes: > > - Fix GitLab #1698: Performance regression with Linux 5.7-rc1 on > Iris Plus 655 and 4K screen (Chris) > - Add Wa_14011059788 for Tigerlake (Matt A) > - Add per ctx batchbuffer wa for timestamp for Gen12 (Mika) > - Use indirect ctx bb to load cmd buffer control value > from context image to avoid corruption (Mika) > - Enable DP Display Audio WA (Uma, Jani) > - Update forcewake firmware ranges for Icelake (Radhakrishna) > - Add missing deinitialization cases of load failure for display (Jose) > - Implement TC cold sequences for Icelake and Tigerlake (Jose) > - Unbreak enable_dpcd_backlight modparam (Lyude) > - Move the late flush_submission in retire to the end (Chris) > - Demote "Reducing compressed framebufer size" message to info (Peter) > - Push MST link retraining to the hotplug work (Ville) > - Hold obj->vma.lock over for_each_ggtt_vma() (Chris) > - Fix timeout handling during TypeC AUX power well enabling for ICL (Imre) > - Fix skl+ non-scaled pfit modes (Ville) > - Prefer soft-rc6 over RPS DOWN_TIMEOUT (Chris) > - Sanitize GT first before poisoning HWSP (Chris) > - Fix up clock RPS frequency readout (Chris) > - Avoid reusing the same logical CCID (Chris) > - Avoid dereferencing a dead context (Chris) > - Always enable busy-stats for execlists (Chris) > - Apply the aggressive downclocking to parking (Chris) > - Restore aggressive post-boost downclocking (Chris) > > - Scrub execlists state on resume (Chris) > - Add debugfs attributes for LPSP (Ansuman) > - Improvements to kernel selftests (Chris, Mika) > - Add tiled blits selftest (Zbigniew) > - Fix error handling in __live_lrc_indirect_ctx_bb() (Dan) > - Add pre/post plane updates for SAGV (Stanislav) > - Add ICL PG3 PW ID for EHL (Anshuman) > - Fix Sphinx build duplicate label warning (Jani) > - Error log non-zero audio power refcount after unbind (Jani) > - Remove object_is_locked assertion from unpin_from_display_plane (Chris) > - Use single set of AUX powerwell ops for gen11+ (Matt R) > - Prefer drm_WARN_ON over WARN_ON (Pankaj) > - Poison residual state [HWSP] across resume (Chris, Tvrtko) > - Convert request-before-CS assertion to debug (Chris) > - Carefully order virtual_submission_tasklet (Chris) > - Check carefully for an idle engine in wait-for-idle (Chris) > - Only close vma we open (Chris) > - Trace RPS events (Chris) > - Use the RPM config register to determine clk frequencies (Chris) > - Drop rq->ring->vma peeking from error capture (Chris) > - Check preempt-timeout target before submit_ports (Chris) > - Check HWSP cacheline is valid before acquiring (Chris) > - Use proper fault mask in interrupt postinstall too (Matt R) > - Keep a no-frills swappable copy of the default context state (Chris) > > - Add atomic helpers for bandwidth (Stanislav) > - Refactor setting dma info to a common helper from device info (Michael) > - Refactor DDI transcoder code for clairty (Ville) > - Extend PG3 power well ID to ICL (Anshuman) > - Refactor PFIT code for readability and future extensibility (Ville) > - Clarify code split between intel_ddi.c and intel_dp.c (Ville) > - Move out code to return the digital_port of the aux ch (Jose) > - Move rps.enabled/active and use of RPS interrupts to flags (Chris) > - Remove superfluous inlines and dead code (Jani) > - Re-disable -Wframe-address from top-level Makefile (Nick) > - Static checker and spelling fixes (Colin, Nathan) > - Split long lines (Ville) > > The following changes since commit b06ef327e26367b9286a2079b31cde8d2161c0d8: > > drm/i915: Update DRIVER_DATE to 20200417 (2020-04-17 09:35:00 +0300) > > are available in the Git repository at: > > git://anongit.freedesktop.org/drm/drm-intel tags/drm-intel-next-2020-04-30 > > for you to fetch changes up to 230982d8d8df7f9d9aa216840ea2db1df6ad5d37: > > drm/i915: Update DRIVER_DATE to 20200430 (2020-04-30 11:13:21 +0300) > > ---------------------------------------------------------------- > Driver Changes: > > - Fix GitLab #1698: Performance regression with Linux 5.7-rc1 on > Iris Plus 655 and 4K screen (Chris) > - Add Wa_14011059788 for Tigerlake (Matt A) > - Add per ctx batchbuffer wa for timestamp for Gen12 (Mika) > - Use indirect ctx bb to load cmd buffer control value > from context image to avoid corruption (Mika) > - Enable DP Display Audio WA (Uma, Jani) > - Update forcewake firmware ranges for Icelake (Radhakrishna) > - Add missing deinitialization cases of load failure for display (Jose) > - Implement TC cold sequences for Icelake and Tigerlake (Jose) > - Unbreak enable_dpcd_backlight modparam (Lyude) > - Move the late flush_submission in retire to the end (Chris) > - Demote "Reducing compressed framebufer size" message to info (Peter) > - Push MST link retraining to the hotplug work (Ville) > - Hold obj->vma.lock over for_each_ggtt_vma() (Chris) > - Fix timeout handling during TypeC AUX power well enabling for ICL (Imre) > - Fix skl+ non-scaled pfit modes (Ville) > - Prefer soft-rc6 over RPS DOWN_TIMEOUT (Chris) > - Sanitize GT first before poisoning HWSP (Chris) > - Fix up clock RPS frequency readout (Chris) > - Avoid reusing the same logical CCID (Chris) > - Avoid dereferencing a dead context (Chris) > - Always enable busy-stats for execlists (Chris) > - Apply the aggressive downclocking to parking (Chris) > - Restore aggressive post-boost downclocking (Chris) > > - Scrub execlists state on resume (Chris) > - Add debugfs attributes for LPSP (Ansuman) > - Improvements to kernel selftests (Chris, Mika) > - Add tiled blits selftest (Zbigniew) > - Fix error handling in __live_lrc_indirect_ctx_bb() (Dan) > - Add pre/post plane updates for SAGV (Stanislav) > - Add ICL PG3 PW ID for EHL (Anshuman) > - Fix Sphinx build duplicate label warning (Jani) > - Error log non-zero audio power refcount after unbind (Jani) > - Remove object_is_locked assertion from unpin_from_display_plane (Chris) > - Use single set of AUX powerwell ops for gen11+ (Matt R) > - Prefer drm_WARN_ON over WARN_ON (Pankaj) > - Poison residual state [HWSP] across resume (Chris, Tvrtko) > - Convert request-before-CS assertion to debug (Chris) > - Carefully order virtual_submission_tasklet (Chris) > - Check carefully for an idle engine in wait-for-idle (Chris) > - Only close vma we open (Chris) > - Trace RPS events (Chris) > - Use the RPM config register to determine clk frequencies (Chris) > - Drop rq->ring->vma peeking from error capture (Chris) > - Check preempt-timeout target before submit_ports (Chris) > - Check HWSP cacheline is valid before acquiring (Chris) > - Use proper fault mask in interrupt postinstall too (Matt R) > - Keep a no-frills swappable copy of the default context state (Chris) > > - Add atomic helpers for bandwidth (Stanislav) > - Refactor setting dma info to a common helper from device info (Michael) > - Refactor DDI transcoder code for clairty (Ville) > - Extend PG3 power well ID to ICL (Anshuman) > - Refactor PFIT code for readability and future extensibility (Ville) > - Clarify code split between intel_ddi.c and intel_dp.c (Ville) > - Move out code to return the digital_port of the aux ch (Jose) > - Move rps.enabled/active and use of RPS interrupts to flags (Chris) > - Remove superfluous inlines and dead code (Jani) > - Re-disable -Wframe-address from top-level Makefile (Nick) > - Static checker and spelling fixes (Colin, Nathan) > - Split long lines (Ville) > > ---------------------------------------------------------------- > Anshuman Gupta (5): > drm/i915: Power well id for ICL PG3 > drm/i915: Add i915_lpsp_capability debugfs > drm/i915: Add connector dbgfs for all connectors > drm/i915: Add i915_lpsp_status debugfs attribute > drm/i915: Add ICL PG3 PW ID for EHL > > Chris Wilson (46): > drm/i915/gt: Scrub execlists state on resume > drm/i915/selftests: Delay spinner before waiting for an interrupt > drm/i915/selftests: Take the engine wakeref around __rps_up_interrupt > drm/i915/selftests: Move gpu energy measurement into its own little lib > drm/i915/selftests: Check power consumption at min/max frequencies > drm/i915/gem: Remove object_is_locked assertion from unpin_from_display_plane > drm/i915/gt: Move the late flush_submission in retire to the end > drm/i915/selftests: Verify frequency scaling with RPS > drm/i915/selftests: Skip energy consumption tests if not controlling freq > drm/i915/selftests: Check RPS controls > drm/i915/selftests: Split RPS frequency measurement > drm/i915/selftests: Show the pcode frequency table on error > drm/i915/selftests: Exercise dynamic reclocking with RPS > drm/i915/selftests: Show the pstate limits on any failure to reset min > drm/i915/selftests: Show the full scaling curve on failure > drm/i915/selftests: Disable C-states when measuring RPS frequency response > drm/i915/gt: Poison residual state [HWSP] across resume. > drm/i915/selftests: Unroll the CS frequency loop > drm/i915/selftests: Disable heartbeat around RPS interrupt testing > drm/i915/selftests: Try to detect rollback during batchbuffer preemption > drm/i915/gem: Hold obj->vma.lock over for_each_ggtt_vma() > drm/i915/execlists: Drop request-before-CS assertion > drm/i915/gt: Carefully order virtual_submission_tasklet > drm/i915/gt: Check carefully for an idle engine in wait-for-idle > drm/i915/selftests: Add request throughput measurement to perf > drm/i915: Only close vma we open > drm/i915/gt: Prefer soft-rc6 over RPS DOWN_TIMEOUT > drm/i915/gt: Trace RPS events > drm/i915/gt: Use the RPM config register to determine clk frequencies > drm/i915: Drop rq->ring->vma peeking from error capture > drm/i915/execlists: Check preempt-timeout target before submit_ports > drm/i915/gt: Check cacheline is valid before acquiring > drm/i915/gt: Sanitize GT first > drm/i915/gt: Fix up clock frequency > drm/i915/selftests: Tweak the tolerance for clock ticks to 12.5% > drm/i915/execlists: Avoid reusing the same logical CCID > drm/i915/execlists: Track inflight CCID > drm/i915/execlists: Verify we don't submit two identical CCIDs > drm/i915: Avoid dereferencing a dead context > drm/i915/gt: Keep a no-frills swappable copy of the default context state > drm/i915/gt: Always enable busy-stats for execlists > drm/i915/gt: Move rps.enabled/active to flags > drm/i915/gt: Track use of RPS interrupts in flags > drm/i915/gt: Switch to manual evaluation of RPS > drm/i915/gt: Apply the aggressive downclocking to parking > drm/i915/gt: Restore aggressive post-boost downclocking > > Christoph Hellwig (1): > i915/gvt: remove unused xen bits > > Colin Ian King (2): > drm/i915: remove redundant assignment to variable test_result > drm/i915/gt: fix spelling mistake "evalution" -> "evaluation" > > Dan Carpenter (1): > drm/i915/selftests: fix error handling in __live_lrc_indirect_ctx_bb() > > Imre Deak (1): > drm/i915/icl: Fix timeout handling during TypeC AUX power well enabling > > Jani Nikula (5): > drm/i915: fix Sphinx build duplicate label warning > drm/i915/audio: error log non-zero audio power refcount after unbind > drm/i915/hdmi: remove unused intel_hdmi_hdcp2_protocol() > drm/i915: drop a bunch of superfluous inlines > drm/i915/audio: fix compressed_bpp check > > Joonas Lahtinen (2): > Merge tag 'gvt-next-2020-04-22' of https://github.com/intel/gvt-linux into drm-intel-next-queued > drm/i915: Update DRIVER_DATE to 20200430 > > José Roberto de Souza (10): > drm/i915: Add missing deinitialization cases of load failure > drm/i915/display: Move out code to return the digital_port of the aux ch > drm/i915/display: Add intel_legacy_aux_to_power_domain() > drm/i915/display: Split hsw_power_well_enable() into two > drm/i915/tc/icl: Implement TC cold sequences > drm/i915/tc: Skip ref held check for TC legacy aux power wells > drm/i915/tc/tgl: Implement TC cold sequences > drm/i915/tc: Catch TC users accessing FIA registers without enable aux > drm/i915/tc: Do not warn when aux power well of static TC ports timeout > drm/i915/display: Load DP_TP_CTL/STATUS offset before use it > > Lyude Paul (1): > drm/i915/dpcd_bl: Unbreak enable_dpcd_backlight modparam > > Matt Atwood (1): > drm/i915/tgl: Wa_14011059788 > > Matt Roper (2): > drm/i915: Use single set of AUX powerwell ops for gen11+ > drm/i915: Use proper fault mask in interrupt postinstall too > > Michael J. Ruhl (1): > drm/i915: Refactor setting dma info to a common helper > > Mika Kuoppala (6): > drm/i915/selftests: Add context batchbuffers registers to live_lrc_fixed > drm/i915: Make define for lrc state offset > drm/i915: Add engine scratch register to live_lrc_fixed > drm/i915: Add per ctx batchbuffer wa for timestamp > drm/i915: Add live selftests for indirect ctx batchbuffers > drm/i915: Use indirect ctx bb to mend CMD_BUF_CCTL > > Nathan Chancellor (1): > drm/i915/gt: Avoid uninitialized use of rpcurupei in frequency_show > > Nick Desaulniers (1): > drm/i915: re-disable -Wframe-address > > Pankaj Bharadiya (9): > drm/i915/display/icl_dsi: Prefer drm_WARN_ON over WARN_ON > drm/i915/display/atomic_plane: Prefer drm_WARN_ON over WARN_ON > drm/i915/display/ddi: Prefer drm_WARN* over WARN* > drm/i915/display/display: Prefer drm_WARN_ON over WARN_ON > drm/i915/display/dpll_mgr: Prefer drm_WARN_ON over WARN_ON > drm/i915/display/frontbuffer: Prefer drm_WARN_ON over WARN_ON > drm/i915/display/global_state: Prefer drm_WARN* over WARN* > drm/i915/display/overlay: Prefer drm_WARN_ON over WARN_ON > drm/i915/display/vlv_dsi: Prefer drm_WARN_ON over WARN_ON > > Peter Jones (1): > Make the "Reducing compressed framebufer size" message be DRM_INFO_ONCE() > > Radhakrishna Sripada (1): > drm/i915/icl: Update forcewake firmware ranges > > Stanislav Lisovskiy (3): > drm/i915: Add intel_atomic_get_bw_*_state helpers > drm/i915: Prepare to extract gen specific functions from intel_can_enable_sagv > drm/i915: Add pre/post plane updates for SAGV > > Uma Shankar (1): > drm/i915/display: Enable DP Display Audio WA > > Ville Syrjälä (16): > drm/i915: Pass encoder to intel_ddi_enable_pipe_clock() > drm/i915: Move the TRANS_DDI_FUNC_CTL enable to a later point > drm/i915: Push TRANS_DDI_FUNC_CTL into the encoder->enable() hook > drm/i915: Pass encoder all the way to intel_ddi_transcoder_func_reg_val_get() > drm/i915: Flatten intel_dp_check_mst_status() a bit > drm/i915: Push MST link retraining to the hotplug work > 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 > drm/i915: Introduce .set_link_train() vfunc > drm/i915: Introduce .set_signal_levels() vfunc > drm/i915: Introduce .set_idle_link_train() vfunc > drm/i915: Split some long lines > > Xiyu Yang (1): > drm/i915/selftests: Fix i915_address_space refcnt leak > > Yan Zhao (3): > drm/i915/gvt: access shadow ctx via its virtual address directly > drm/i915/gvt: combine access to consecutive guest context pages > drm/i915/gvt: skip populate shadow context if guest context not changed > > Zbigniew Kempczy\u0144ski (1): > drm/i915/selftests: Add tiled blits selftest > > drivers/char/agp/intel-gtt.c | 17 +- > drivers/gpu/drm/i915/Makefile | 6 +- > drivers/gpu/drm/i915/display/icl_dsi.c | 21 +- > drivers/gpu/drm/i915/display/intel_atomic_plane.c | 4 +- > drivers/gpu/drm/i915/display/intel_audio.c | 145 +++ > drivers/gpu/drm/i915/display/intel_bw.c | 24 +- > drivers/gpu/drm/i915/display/intel_bw.h | 9 + > drivers/gpu/drm/i915/display/intel_connector.c | 3 + > drivers/gpu/drm/i915/display/intel_crt.c | 4 +- > drivers/gpu/drm/i915/display/intel_ddi.c | 244 +++-- > drivers/gpu/drm/i915/display/intel_ddi.h | 6 +- > drivers/gpu/drm/i915/display/intel_display.c | 374 ++++--- > drivers/gpu/drm/i915/display/intel_display.h | 3 +- > .../gpu/drm/i915/display/intel_display_debugfs.c | 100 ++ > drivers/gpu/drm/i915/display/intel_display_power.c | 534 ++++----- > drivers/gpu/drm/i915/display/intel_display_power.h | 5 +- > drivers/gpu/drm/i915/display/intel_display_types.h | 6 +- > drivers/gpu/drm/i915/display/intel_dp.c | 608 ++++++----- > .../gpu/drm/i915/display/intel_dp_aux_backlight.c | 1 + > drivers/gpu/drm/i915/display/intel_dp_mst.c | 4 +- > drivers/gpu/drm/i915/display/intel_dpll_mgr.c | 8 +- > drivers/gpu/drm/i915/display/intel_dsb.c | 6 +- > drivers/gpu/drm/i915/display/intel_dsi_vbt.c | 2 +- > drivers/gpu/drm/i915/display/intel_fbc.c | 5 +- > drivers/gpu/drm/i915/display/intel_frontbuffer.c | 6 +- > drivers/gpu/drm/i915/display/intel_global_state.c | 4 +- > drivers/gpu/drm/i915/display/intel_gmbus.c | 3 +- > drivers/gpu/drm/i915/display/intel_hdcp.c | 23 +- > drivers/gpu/drm/i915/display/intel_hdmi.c | 56 +- > drivers/gpu/drm/i915/display/intel_lvds.c | 16 +- > drivers/gpu/drm/i915/display/intel_overlay.c | 6 +- > drivers/gpu/drm/i915/display/intel_panel.c | 140 +-- > drivers/gpu/drm/i915/display/intel_panel.h | 10 +- > drivers/gpu/drm/i915/display/intel_tc.c | 95 +- > drivers/gpu/drm/i915/display/vlv_dsi.c | 11 +- > drivers/gpu/drm/i915/gem/i915_gem_context.c | 4 +- > drivers/gpu/drm/i915/gem/i915_gem_domain.c | 7 +- > drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c | 2 +- > drivers/gpu/drm/i915/gem/i915_gem_object.c | 4 +- > drivers/gpu/drm/i915/gem/i915_gem_tiling.c | 20 +- > drivers/gpu/drm/i915/gem/selftests/huge_pages.c | 95 +- > .../drm/i915/gem/selftests/i915_gem_client_blt.c | 595 ++++++++++ > .../gpu/drm/i915/gem/selftests/i915_gem_context.c | 1 - > drivers/gpu/drm/i915/gt/debugfs_gt_pm.c | 64 +- > drivers/gpu/drm/i915/gt/intel_context_sseu.c | 3 +- > drivers/gpu/drm/i915/gt/intel_context_types.h | 10 +- > drivers/gpu/drm/i915/gt/intel_engine.h | 3 - > drivers/gpu/drm/i915/gt/intel_engine_cs.c | 82 +- > drivers/gpu/drm/i915/gt/intel_engine_pm.c | 10 +- > drivers/gpu/drm/i915/gt/intel_engine_types.h | 41 +- > drivers/gpu/drm/i915/gt/intel_ggtt.c | 15 - > drivers/gpu/drm/i915/gt/intel_gpu_commands.h | 3 +- > drivers/gpu/drm/i915/gt/intel_gt.c | 63 +- > drivers/gpu/drm/i915/gt/intel_gt_clock_utils.c | 102 ++ > drivers/gpu/drm/i915/gt/intel_gt_clock_utils.h | 27 + > drivers/gpu/drm/i915/gt/intel_gt_pm.c | 10 +- > drivers/gpu/drm/i915/gt/intel_gt_requests.c | 20 +- > drivers/gpu/drm/i915/gt/intel_gt_types.h | 9 +- > drivers/gpu/drm/i915/gt/intel_lrc.c | 703 ++++++++---- > drivers/gpu/drm/i915/gt/intel_lrc.h | 1 + > drivers/gpu/drm/i915/gt/intel_lrc_reg.h | 6 +- > drivers/gpu/drm/i915/gt/intel_renderstate.c | 4 +- > drivers/gpu/drm/i915/gt/intel_ring_submission.c | 16 +- > drivers/gpu/drm/i915/gt/intel_rps.c | 350 ++++-- > drivers/gpu/drm/i915/gt/intel_rps.h | 60 ++ > drivers/gpu/drm/i915/gt/intel_rps_types.h | 14 +- > drivers/gpu/drm/i915/gt/intel_timeline.c | 19 +- > drivers/gpu/drm/i915/gt/intel_timeline.h | 2 + > drivers/gpu/drm/i915/gt/selftest_context.c | 2 +- > drivers/gpu/drm/i915/gt/selftest_gt_pm.c | 6 + > drivers/gpu/drm/i915/gt/selftest_lrc.c | 534 ++++++++- > drivers/gpu/drm/i915/gt/selftest_rc6.c | 25 +- > drivers/gpu/drm/i915/gt/selftest_rps.c | 1134 +++++++++++++++++++- > drivers/gpu/drm/i915/gt/selftest_rps.h | 6 + > drivers/gpu/drm/i915/gt/shmem_utils.c | 173 +++ > drivers/gpu/drm/i915/gt/shmem_utils.h | 23 + > drivers/gpu/drm/i915/gt/st_shmem_utils.c | 63 ++ > drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c | 2 +- > drivers/gpu/drm/i915/gvt/gtt.c | 15 + > drivers/gpu/drm/i915/gvt/gvt.c | 1 - > drivers/gpu/drm/i915/gvt/gvt.h | 5 + > drivers/gpu/drm/i915/gvt/hypercall.h | 2 - > drivers/gpu/drm/i915/gvt/scheduler.c | 136 ++- > drivers/gpu/drm/i915/i915_debugfs.c | 39 +- > drivers/gpu/drm/i915/i915_drv.c | 119 +- > drivers/gpu/drm/i915/i915_drv.h | 4 +- > drivers/gpu/drm/i915/i915_gpu_error.c | 43 +- > drivers/gpu/drm/i915/i915_gpu_error.h | 1 - > drivers/gpu/drm/i915/i915_irq.c | 6 +- > drivers/gpu/drm/i915/i915_pci.c | 14 + > drivers/gpu/drm/i915/i915_perf.c | 8 +- > drivers/gpu/drm/i915/i915_pmu.c | 32 +- > drivers/gpu/drm/i915/i915_reg.h | 54 +- > drivers/gpu/drm/i915/i915_vma.c | 38 +- > drivers/gpu/drm/i915/intel_device_info.c | 1 + > drivers/gpu/drm/i915/intel_device_info.h | 2 + > drivers/gpu/drm/i915/intel_pm.c | 88 +- > drivers/gpu/drm/i915/intel_pm.h | 2 + > drivers/gpu/drm/i915/intel_sideband.c | 4 +- > drivers/gpu/drm/i915/intel_uncore.c | 31 +- > drivers/gpu/drm/i915/intel_wopcm.c | 22 +- > drivers/gpu/drm/i915/selftests/i915_gem_gtt.c | 32 +- > .../gpu/drm/i915/selftests/i915_mock_selftests.h | 1 + > .../gpu/drm/i915/selftests/i915_perf_selftests.h | 1 + > drivers/gpu/drm/i915/selftests/i915_request.c | 572 +++++++++- > drivers/gpu/drm/i915/selftests/i915_vma.c | 2 +- > drivers/gpu/drm/i915/selftests/librapl.c | 24 + > drivers/gpu/drm/i915/selftests/librapl.h | 13 + > 108 files changed, 6193 insertions(+), 1961 deletions(-) > create mode 100644 drivers/gpu/drm/i915/gt/intel_gt_clock_utils.c > create mode 100644 drivers/gpu/drm/i915/gt/intel_gt_clock_utils.h > create mode 100644 drivers/gpu/drm/i915/gt/shmem_utils.c > create mode 100644 drivers/gpu/drm/i915/gt/shmem_utils.h > create mode 100644 drivers/gpu/drm/i915/gt/st_shmem_utils.c > create mode 100644 drivers/gpu/drm/i915/selftests/librapl.c > create mode 100644 drivers/gpu/drm/i915/selftests/librapl.h
On Thu, 14 May 2020 at 03:10, Joonas Lahtinen <joonas.lahtinen@linux.intel.com> wrote: > > Ping for merging this? If there are no issues, I'd prefer to pull in > next gvt-next and tag the final pull sooner than later. Can you check that I'm correct and this isn;'t in patchwork. I've checked both the dri-devel and intel-gfx patchworks for it. Dave. > > Regards, Joonas > > Quoting Joonas Lahtinen (2020-04-30 15:49:04) > > Hi Dave & Daniel, > > > > Fix for performance regression GitLab #1698: Iris Plus 655 and > > 4K screen. Missing workarounds for Tigerlake, and a fix for > > DP display audio WA. Unbreaking enable_dpcd_backlight, fixes > > to power code for Icelake+. > > > > Improvements to the soft-RC6 code to improve power efficiency, > > a fix for the timestamp corruption on Tigerlake and plenty of > > smaller fixes for CI found corner cases. > > > > Lots of refactoring that prep for upcoming changes, so I expect > > the next PR to be quite busy. > > > > Includes gvt-next-2020-04-22: Removes left non-upstream xen support > > bits which will be kept out of tree instead. And several guest > > context shadow optimizations. > > > > Regards, Joonas > > > > PS. Noticed the ack for locking rules, thanks! Will merge it. > > > > *** > > > > drm-intel-next-2020-04-30: > > > > Driver Changes: > > > > - Fix GitLab #1698: Performance regression with Linux 5.7-rc1 on > > Iris Plus 655 and 4K screen (Chris) > > - Add Wa_14011059788 for Tigerlake (Matt A) > > - Add per ctx batchbuffer wa for timestamp for Gen12 (Mika) > > - Use indirect ctx bb to load cmd buffer control value > > from context image to avoid corruption (Mika) > > - Enable DP Display Audio WA (Uma, Jani) > > - Update forcewake firmware ranges for Icelake (Radhakrishna) > > - Add missing deinitialization cases of load failure for display (Jose) > > - Implement TC cold sequences for Icelake and Tigerlake (Jose) > > - Unbreak enable_dpcd_backlight modparam (Lyude) > > - Move the late flush_submission in retire to the end (Chris) > > - Demote "Reducing compressed framebufer size" message to info (Peter) > > - Push MST link retraining to the hotplug work (Ville) > > - Hold obj->vma.lock over for_each_ggtt_vma() (Chris) > > - Fix timeout handling during TypeC AUX power well enabling for ICL (Imre) > > - Fix skl+ non-scaled pfit modes (Ville) > > - Prefer soft-rc6 over RPS DOWN_TIMEOUT (Chris) > > - Sanitize GT first before poisoning HWSP (Chris) > > - Fix up clock RPS frequency readout (Chris) > > - Avoid reusing the same logical CCID (Chris) > > - Avoid dereferencing a dead context (Chris) > > - Always enable busy-stats for execlists (Chris) > > - Apply the aggressive downclocking to parking (Chris) > > - Restore aggressive post-boost downclocking (Chris) > > > > - Scrub execlists state on resume (Chris) > > - Add debugfs attributes for LPSP (Ansuman) > > - Improvements to kernel selftests (Chris, Mika) > > - Add tiled blits selftest (Zbigniew) > > - Fix error handling in __live_lrc_indirect_ctx_bb() (Dan) > > - Add pre/post plane updates for SAGV (Stanislav) > > - Add ICL PG3 PW ID for EHL (Anshuman) > > - Fix Sphinx build duplicate label warning (Jani) > > - Error log non-zero audio power refcount after unbind (Jani) > > - Remove object_is_locked assertion from unpin_from_display_plane (Chris) > > - Use single set of AUX powerwell ops for gen11+ (Matt R) > > - Prefer drm_WARN_ON over WARN_ON (Pankaj) > > - Poison residual state [HWSP] across resume (Chris, Tvrtko) > > - Convert request-before-CS assertion to debug (Chris) > > - Carefully order virtual_submission_tasklet (Chris) > > - Check carefully for an idle engine in wait-for-idle (Chris) > > - Only close vma we open (Chris) > > - Trace RPS events (Chris) > > - Use the RPM config register to determine clk frequencies (Chris) > > - Drop rq->ring->vma peeking from error capture (Chris) > > - Check preempt-timeout target before submit_ports (Chris) > > - Check HWSP cacheline is valid before acquiring (Chris) > > - Use proper fault mask in interrupt postinstall too (Matt R) > > - Keep a no-frills swappable copy of the default context state (Chris) > > > > - Add atomic helpers for bandwidth (Stanislav) > > - Refactor setting dma info to a common helper from device info (Michael) > > - Refactor DDI transcoder code for clairty (Ville) > > - Extend PG3 power well ID to ICL (Anshuman) > > - Refactor PFIT code for readability and future extensibility (Ville) > > - Clarify code split between intel_ddi.c and intel_dp.c (Ville) > > - Move out code to return the digital_port of the aux ch (Jose) > > - Move rps.enabled/active and use of RPS interrupts to flags (Chris) > > - Remove superfluous inlines and dead code (Jani) > > - Re-disable -Wframe-address from top-level Makefile (Nick) > > - Static checker and spelling fixes (Colin, Nathan) > > - Split long lines (Ville) > > > > The following changes since commit b06ef327e26367b9286a2079b31cde8d2161c0d8: > > > > drm/i915: Update DRIVER_DATE to 20200417 (2020-04-17 09:35:00 +0300) > > > > are available in the Git repository at: > > > > git://anongit.freedesktop.org/drm/drm-intel tags/drm-intel-next-2020-04-30 > > > > for you to fetch changes up to 230982d8d8df7f9d9aa216840ea2db1df6ad5d37: > > > > drm/i915: Update DRIVER_DATE to 20200430 (2020-04-30 11:13:21 +0300) > > > > ---------------------------------------------------------------- > > Driver Changes: > > > > - Fix GitLab #1698: Performance regression with Linux 5.7-rc1 on > > Iris Plus 655 and 4K screen (Chris) > > - Add Wa_14011059788 for Tigerlake (Matt A) > > - Add per ctx batchbuffer wa for timestamp for Gen12 (Mika) > > - Use indirect ctx bb to load cmd buffer control value > > from context image to avoid corruption (Mika) > > - Enable DP Display Audio WA (Uma, Jani) > > - Update forcewake firmware ranges for Icelake (Radhakrishna) > > - Add missing deinitialization cases of load failure for display (Jose) > > - Implement TC cold sequences for Icelake and Tigerlake (Jose) > > - Unbreak enable_dpcd_backlight modparam (Lyude) > > - Move the late flush_submission in retire to the end (Chris) > > - Demote "Reducing compressed framebufer size" message to info (Peter) > > - Push MST link retraining to the hotplug work (Ville) > > - Hold obj->vma.lock over for_each_ggtt_vma() (Chris) > > - Fix timeout handling during TypeC AUX power well enabling for ICL (Imre) > > - Fix skl+ non-scaled pfit modes (Ville) > > - Prefer soft-rc6 over RPS DOWN_TIMEOUT (Chris) > > - Sanitize GT first before poisoning HWSP (Chris) > > - Fix up clock RPS frequency readout (Chris) > > - Avoid reusing the same logical CCID (Chris) > > - Avoid dereferencing a dead context (Chris) > > - Always enable busy-stats for execlists (Chris) > > - Apply the aggressive downclocking to parking (Chris) > > - Restore aggressive post-boost downclocking (Chris) > > > > - Scrub execlists state on resume (Chris) > > - Add debugfs attributes for LPSP (Ansuman) > > - Improvements to kernel selftests (Chris, Mika) > > - Add tiled blits selftest (Zbigniew) > > - Fix error handling in __live_lrc_indirect_ctx_bb() (Dan) > > - Add pre/post plane updates for SAGV (Stanislav) > > - Add ICL PG3 PW ID for EHL (Anshuman) > > - Fix Sphinx build duplicate label warning (Jani) > > - Error log non-zero audio power refcount after unbind (Jani) > > - Remove object_is_locked assertion from unpin_from_display_plane (Chris) > > - Use single set of AUX powerwell ops for gen11+ (Matt R) > > - Prefer drm_WARN_ON over WARN_ON (Pankaj) > > - Poison residual state [HWSP] across resume (Chris, Tvrtko) > > - Convert request-before-CS assertion to debug (Chris) > > - Carefully order virtual_submission_tasklet (Chris) > > - Check carefully for an idle engine in wait-for-idle (Chris) > > - Only close vma we open (Chris) > > - Trace RPS events (Chris) > > - Use the RPM config register to determine clk frequencies (Chris) > > - Drop rq->ring->vma peeking from error capture (Chris) > > - Check preempt-timeout target before submit_ports (Chris) > > - Check HWSP cacheline is valid before acquiring (Chris) > > - Use proper fault mask in interrupt postinstall too (Matt R) > > - Keep a no-frills swappable copy of the default context state (Chris) > > > > - Add atomic helpers for bandwidth (Stanislav) > > - Refactor setting dma info to a common helper from device info (Michael) > > - Refactor DDI transcoder code for clairty (Ville) > > - Extend PG3 power well ID to ICL (Anshuman) > > - Refactor PFIT code for readability and future extensibility (Ville) > > - Clarify code split between intel_ddi.c and intel_dp.c (Ville) > > - Move out code to return the digital_port of the aux ch (Jose) > > - Move rps.enabled/active and use of RPS interrupts to flags (Chris) > > - Remove superfluous inlines and dead code (Jani) > > - Re-disable -Wframe-address from top-level Makefile (Nick) > > - Static checker and spelling fixes (Colin, Nathan) > > - Split long lines (Ville) > > > > ---------------------------------------------------------------- > > Anshuman Gupta (5): > > drm/i915: Power well id for ICL PG3 > > drm/i915: Add i915_lpsp_capability debugfs > > drm/i915: Add connector dbgfs for all connectors > > drm/i915: Add i915_lpsp_status debugfs attribute > > drm/i915: Add ICL PG3 PW ID for EHL > > > > Chris Wilson (46): > > drm/i915/gt: Scrub execlists state on resume > > drm/i915/selftests: Delay spinner before waiting for an interrupt > > drm/i915/selftests: Take the engine wakeref around __rps_up_interrupt > > drm/i915/selftests: Move gpu energy measurement into its own little lib > > drm/i915/selftests: Check power consumption at min/max frequencies > > drm/i915/gem: Remove object_is_locked assertion from unpin_from_display_plane > > drm/i915/gt: Move the late flush_submission in retire to the end > > drm/i915/selftests: Verify frequency scaling with RPS > > drm/i915/selftests: Skip energy consumption tests if not controlling freq > > drm/i915/selftests: Check RPS controls > > drm/i915/selftests: Split RPS frequency measurement > > drm/i915/selftests: Show the pcode frequency table on error > > drm/i915/selftests: Exercise dynamic reclocking with RPS > > drm/i915/selftests: Show the pstate limits on any failure to reset min > > drm/i915/selftests: Show the full scaling curve on failure > > drm/i915/selftests: Disable C-states when measuring RPS frequency response > > drm/i915/gt: Poison residual state [HWSP] across resume. > > drm/i915/selftests: Unroll the CS frequency loop > > drm/i915/selftests: Disable heartbeat around RPS interrupt testing > > drm/i915/selftests: Try to detect rollback during batchbuffer preemption > > drm/i915/gem: Hold obj->vma.lock over for_each_ggtt_vma() > > drm/i915/execlists: Drop request-before-CS assertion > > drm/i915/gt: Carefully order virtual_submission_tasklet > > drm/i915/gt: Check carefully for an idle engine in wait-for-idle > > drm/i915/selftests: Add request throughput measurement to perf > > drm/i915: Only close vma we open > > drm/i915/gt: Prefer soft-rc6 over RPS DOWN_TIMEOUT > > drm/i915/gt: Trace RPS events > > drm/i915/gt: Use the RPM config register to determine clk frequencies > > drm/i915: Drop rq->ring->vma peeking from error capture > > drm/i915/execlists: Check preempt-timeout target before submit_ports > > drm/i915/gt: Check cacheline is valid before acquiring > > drm/i915/gt: Sanitize GT first > > drm/i915/gt: Fix up clock frequency > > drm/i915/selftests: Tweak the tolerance for clock ticks to 12.5% > > drm/i915/execlists: Avoid reusing the same logical CCID > > drm/i915/execlists: Track inflight CCID > > drm/i915/execlists: Verify we don't submit two identical CCIDs > > drm/i915: Avoid dereferencing a dead context > > drm/i915/gt: Keep a no-frills swappable copy of the default context state > > drm/i915/gt: Always enable busy-stats for execlists > > drm/i915/gt: Move rps.enabled/active to flags > > drm/i915/gt: Track use of RPS interrupts in flags > > drm/i915/gt: Switch to manual evaluation of RPS > > drm/i915/gt: Apply the aggressive downclocking to parking > > drm/i915/gt: Restore aggressive post-boost downclocking > > > > Christoph Hellwig (1): > > i915/gvt: remove unused xen bits > > > > Colin Ian King (2): > > drm/i915: remove redundant assignment to variable test_result > > drm/i915/gt: fix spelling mistake "evalution" -> "evaluation" > > > > Dan Carpenter (1): > > drm/i915/selftests: fix error handling in __live_lrc_indirect_ctx_bb() > > > > Imre Deak (1): > > drm/i915/icl: Fix timeout handling during TypeC AUX power well enabling > > > > Jani Nikula (5): > > drm/i915: fix Sphinx build duplicate label warning > > drm/i915/audio: error log non-zero audio power refcount after unbind > > drm/i915/hdmi: remove unused intel_hdmi_hdcp2_protocol() > > drm/i915: drop a bunch of superfluous inlines > > drm/i915/audio: fix compressed_bpp check > > > > Joonas Lahtinen (2): > > Merge tag 'gvt-next-2020-04-22' of https://github.com/intel/gvt-linux into drm-intel-next-queued > > drm/i915: Update DRIVER_DATE to 20200430 > > > > José Roberto de Souza (10): > > drm/i915: Add missing deinitialization cases of load failure > > drm/i915/display: Move out code to return the digital_port of the aux ch > > drm/i915/display: Add intel_legacy_aux_to_power_domain() > > drm/i915/display: Split hsw_power_well_enable() into two > > drm/i915/tc/icl: Implement TC cold sequences > > drm/i915/tc: Skip ref held check for TC legacy aux power wells > > drm/i915/tc/tgl: Implement TC cold sequences > > drm/i915/tc: Catch TC users accessing FIA registers without enable aux > > drm/i915/tc: Do not warn when aux power well of static TC ports timeout > > drm/i915/display: Load DP_TP_CTL/STATUS offset before use it > > > > Lyude Paul (1): > > drm/i915/dpcd_bl: Unbreak enable_dpcd_backlight modparam > > > > Matt Atwood (1): > > drm/i915/tgl: Wa_14011059788 > > > > Matt Roper (2): > > drm/i915: Use single set of AUX powerwell ops for gen11+ > > drm/i915: Use proper fault mask in interrupt postinstall too > > > > Michael J. Ruhl (1): > > drm/i915: Refactor setting dma info to a common helper > > > > Mika Kuoppala (6): > > drm/i915/selftests: Add context batchbuffers registers to live_lrc_fixed > > drm/i915: Make define for lrc state offset > > drm/i915: Add engine scratch register to live_lrc_fixed > > drm/i915: Add per ctx batchbuffer wa for timestamp > > drm/i915: Add live selftests for indirect ctx batchbuffers > > drm/i915: Use indirect ctx bb to mend CMD_BUF_CCTL > > > > Nathan Chancellor (1): > > drm/i915/gt: Avoid uninitialized use of rpcurupei in frequency_show > > > > Nick Desaulniers (1): > > drm/i915: re-disable -Wframe-address > > > > Pankaj Bharadiya (9): > > drm/i915/display/icl_dsi: Prefer drm_WARN_ON over WARN_ON > > drm/i915/display/atomic_plane: Prefer drm_WARN_ON over WARN_ON > > drm/i915/display/ddi: Prefer drm_WARN* over WARN* > > drm/i915/display/display: Prefer drm_WARN_ON over WARN_ON > > drm/i915/display/dpll_mgr: Prefer drm_WARN_ON over WARN_ON > > drm/i915/display/frontbuffer: Prefer drm_WARN_ON over WARN_ON > > drm/i915/display/global_state: Prefer drm_WARN* over WARN* > > drm/i915/display/overlay: Prefer drm_WARN_ON over WARN_ON > > drm/i915/display/vlv_dsi: Prefer drm_WARN_ON over WARN_ON > > > > Peter Jones (1): > > Make the "Reducing compressed framebufer size" message be DRM_INFO_ONCE() > > > > Radhakrishna Sripada (1): > > drm/i915/icl: Update forcewake firmware ranges > > > > Stanislav Lisovskiy (3): > > drm/i915: Add intel_atomic_get_bw_*_state helpers > > drm/i915: Prepare to extract gen specific functions from intel_can_enable_sagv > > drm/i915: Add pre/post plane updates for SAGV > > > > Uma Shankar (1): > > drm/i915/display: Enable DP Display Audio WA > > > > Ville Syrjälä (16): > > drm/i915: Pass encoder to intel_ddi_enable_pipe_clock() > > drm/i915: Move the TRANS_DDI_FUNC_CTL enable to a later point > > drm/i915: Push TRANS_DDI_FUNC_CTL into the encoder->enable() hook > > drm/i915: Pass encoder all the way to intel_ddi_transcoder_func_reg_val_get() > > drm/i915: Flatten intel_dp_check_mst_status() a bit > > drm/i915: Push MST link retraining to the hotplug work > > 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 > > drm/i915: Introduce .set_link_train() vfunc > > drm/i915: Introduce .set_signal_levels() vfunc > > drm/i915: Introduce .set_idle_link_train() vfunc > > drm/i915: Split some long lines > > > > Xiyu Yang (1): > > drm/i915/selftests: Fix i915_address_space refcnt leak > > > > Yan Zhao (3): > > drm/i915/gvt: access shadow ctx via its virtual address directly > > drm/i915/gvt: combine access to consecutive guest context pages > > drm/i915/gvt: skip populate shadow context if guest context not changed > > > > Zbigniew Kempczy\u0144ski (1): > > drm/i915/selftests: Add tiled blits selftest > > > > drivers/char/agp/intel-gtt.c | 17 +- > > drivers/gpu/drm/i915/Makefile | 6 +- > > drivers/gpu/drm/i915/display/icl_dsi.c | 21 +- > > drivers/gpu/drm/i915/display/intel_atomic_plane.c | 4 +- > > drivers/gpu/drm/i915/display/intel_audio.c | 145 +++ > > drivers/gpu/drm/i915/display/intel_bw.c | 24 +- > > drivers/gpu/drm/i915/display/intel_bw.h | 9 + > > drivers/gpu/drm/i915/display/intel_connector.c | 3 + > > drivers/gpu/drm/i915/display/intel_crt.c | 4 +- > > drivers/gpu/drm/i915/display/intel_ddi.c | 244 +++-- > > drivers/gpu/drm/i915/display/intel_ddi.h | 6 +- > > drivers/gpu/drm/i915/display/intel_display.c | 374 ++++--- > > drivers/gpu/drm/i915/display/intel_display.h | 3 +- > > .../gpu/drm/i915/display/intel_display_debugfs.c | 100 ++ > > drivers/gpu/drm/i915/display/intel_display_power.c | 534 ++++----- > > drivers/gpu/drm/i915/display/intel_display_power.h | 5 +- > > drivers/gpu/drm/i915/display/intel_display_types.h | 6 +- > > drivers/gpu/drm/i915/display/intel_dp.c | 608 ++++++----- > > .../gpu/drm/i915/display/intel_dp_aux_backlight.c | 1 + > > drivers/gpu/drm/i915/display/intel_dp_mst.c | 4 +- > > drivers/gpu/drm/i915/display/intel_dpll_mgr.c | 8 +- > > drivers/gpu/drm/i915/display/intel_dsb.c | 6 +- > > drivers/gpu/drm/i915/display/intel_dsi_vbt.c | 2 +- > > drivers/gpu/drm/i915/display/intel_fbc.c | 5 +- > > drivers/gpu/drm/i915/display/intel_frontbuffer.c | 6 +- > > drivers/gpu/drm/i915/display/intel_global_state.c | 4 +- > > drivers/gpu/drm/i915/display/intel_gmbus.c | 3 +- > > drivers/gpu/drm/i915/display/intel_hdcp.c | 23 +- > > drivers/gpu/drm/i915/display/intel_hdmi.c | 56 +- > > drivers/gpu/drm/i915/display/intel_lvds.c | 16 +- > > drivers/gpu/drm/i915/display/intel_overlay.c | 6 +- > > drivers/gpu/drm/i915/display/intel_panel.c | 140 +-- > > drivers/gpu/drm/i915/display/intel_panel.h | 10 +- > > drivers/gpu/drm/i915/display/intel_tc.c | 95 +- > > drivers/gpu/drm/i915/display/vlv_dsi.c | 11 +- > > drivers/gpu/drm/i915/gem/i915_gem_context.c | 4 +- > > drivers/gpu/drm/i915/gem/i915_gem_domain.c | 7 +- > > drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c | 2 +- > > drivers/gpu/drm/i915/gem/i915_gem_object.c | 4 +- > > drivers/gpu/drm/i915/gem/i915_gem_tiling.c | 20 +- > > drivers/gpu/drm/i915/gem/selftests/huge_pages.c | 95 +- > > .../drm/i915/gem/selftests/i915_gem_client_blt.c | 595 ++++++++++ > > .../gpu/drm/i915/gem/selftests/i915_gem_context.c | 1 - > > drivers/gpu/drm/i915/gt/debugfs_gt_pm.c | 64 +- > > drivers/gpu/drm/i915/gt/intel_context_sseu.c | 3 +- > > drivers/gpu/drm/i915/gt/intel_context_types.h | 10 +- > > drivers/gpu/drm/i915/gt/intel_engine.h | 3 - > > drivers/gpu/drm/i915/gt/intel_engine_cs.c | 82 +- > > drivers/gpu/drm/i915/gt/intel_engine_pm.c | 10 +- > > drivers/gpu/drm/i915/gt/intel_engine_types.h | 41 +- > > drivers/gpu/drm/i915/gt/intel_ggtt.c | 15 - > > drivers/gpu/drm/i915/gt/intel_gpu_commands.h | 3 +- > > drivers/gpu/drm/i915/gt/intel_gt.c | 63 +- > > drivers/gpu/drm/i915/gt/intel_gt_clock_utils.c | 102 ++ > > drivers/gpu/drm/i915/gt/intel_gt_clock_utils.h | 27 + > > drivers/gpu/drm/i915/gt/intel_gt_pm.c | 10 +- > > drivers/gpu/drm/i915/gt/intel_gt_requests.c | 20 +- > > drivers/gpu/drm/i915/gt/intel_gt_types.h | 9 +- > > drivers/gpu/drm/i915/gt/intel_lrc.c | 703 ++++++++---- > > drivers/gpu/drm/i915/gt/intel_lrc.h | 1 + > > drivers/gpu/drm/i915/gt/intel_lrc_reg.h | 6 +- > > drivers/gpu/drm/i915/gt/intel_renderstate.c | 4 +- > > drivers/gpu/drm/i915/gt/intel_ring_submission.c | 16 +- > > drivers/gpu/drm/i915/gt/intel_rps.c | 350 ++++-- > > drivers/gpu/drm/i915/gt/intel_rps.h | 60 ++ > > drivers/gpu/drm/i915/gt/intel_rps_types.h | 14 +- > > drivers/gpu/drm/i915/gt/intel_timeline.c | 19 +- > > drivers/gpu/drm/i915/gt/intel_timeline.h | 2 + > > drivers/gpu/drm/i915/gt/selftest_context.c | 2 +- > > drivers/gpu/drm/i915/gt/selftest_gt_pm.c | 6 + > > drivers/gpu/drm/i915/gt/selftest_lrc.c | 534 ++++++++- > > drivers/gpu/drm/i915/gt/selftest_rc6.c | 25 +- > > drivers/gpu/drm/i915/gt/selftest_rps.c | 1134 +++++++++++++++++++- > > drivers/gpu/drm/i915/gt/selftest_rps.h | 6 + > > drivers/gpu/drm/i915/gt/shmem_utils.c | 173 +++ > > drivers/gpu/drm/i915/gt/shmem_utils.h | 23 + > > drivers/gpu/drm/i915/gt/st_shmem_utils.c | 63 ++ > > drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c | 2 +- > > drivers/gpu/drm/i915/gvt/gtt.c | 15 + > > drivers/gpu/drm/i915/gvt/gvt.c | 1 - > > drivers/gpu/drm/i915/gvt/gvt.h | 5 + > > drivers/gpu/drm/i915/gvt/hypercall.h | 2 - > > drivers/gpu/drm/i915/gvt/scheduler.c | 136 ++- > > drivers/gpu/drm/i915/i915_debugfs.c | 39 +- > > drivers/gpu/drm/i915/i915_drv.c | 119 +- > > drivers/gpu/drm/i915/i915_drv.h | 4 +- > > drivers/gpu/drm/i915/i915_gpu_error.c | 43 +- > > drivers/gpu/drm/i915/i915_gpu_error.h | 1 - > > drivers/gpu/drm/i915/i915_irq.c | 6 +- > > drivers/gpu/drm/i915/i915_pci.c | 14 + > > drivers/gpu/drm/i915/i915_perf.c | 8 +- > > drivers/gpu/drm/i915/i915_pmu.c | 32 +- > > drivers/gpu/drm/i915/i915_reg.h | 54 +- > > drivers/gpu/drm/i915/i915_vma.c | 38 +- > > drivers/gpu/drm/i915/intel_device_info.c | 1 + > > drivers/gpu/drm/i915/intel_device_info.h | 2 + > > drivers/gpu/drm/i915/intel_pm.c | 88 +- > > drivers/gpu/drm/i915/intel_pm.h | 2 + > > drivers/gpu/drm/i915/intel_sideband.c | 4 +- > > drivers/gpu/drm/i915/intel_uncore.c | 31 +- > > drivers/gpu/drm/i915/intel_wopcm.c | 22 +- > > drivers/gpu/drm/i915/selftests/i915_gem_gtt.c | 32 +- > > .../gpu/drm/i915/selftests/i915_mock_selftests.h | 1 + > > .../gpu/drm/i915/selftests/i915_perf_selftests.h | 1 + > > drivers/gpu/drm/i915/selftests/i915_request.c | 572 +++++++++- > > drivers/gpu/drm/i915/selftests/i915_vma.c | 2 +- > > drivers/gpu/drm/i915/selftests/librapl.c | 24 + > > drivers/gpu/drm/i915/selftests/librapl.h | 13 + > > 108 files changed, 6193 insertions(+), 1961 deletions(-) > > create mode 100644 drivers/gpu/drm/i915/gt/intel_gt_clock_utils.c > > create mode 100644 drivers/gpu/drm/i915/gt/intel_gt_clock_utils.h > > create mode 100644 drivers/gpu/drm/i915/gt/shmem_utils.c > > create mode 100644 drivers/gpu/drm/i915/gt/shmem_utils.h > > create mode 100644 drivers/gpu/drm/i915/gt/st_shmem_utils.c > > create mode 100644 drivers/gpu/drm/i915/selftests/librapl.c > > create mode 100644 drivers/gpu/drm/i915/selftests/librapl.h
Quoting Dave Airlie (2020-05-14 04:28:17) > On Thu, 14 May 2020 at 03:10, Joonas Lahtinen > <joonas.lahtinen@linux.intel.com> wrote: > > > > Ping for merging this? If there are no issues, I'd prefer to pull in > > next gvt-next and tag the final pull sooner than later. > > Can you check that I'm correct and this isn;'t in patchwork. I've > checked both the dri-devel and intel-gfx patchworks for it. We don't have drm-intel-next going to CI separately as it's a point in time from drm-intel-next-queued. dinq testing seems to be daily today, but indeed, I do get a for that day 404: https://intel-gfx-ci.01.org/tree/drm-intel-next-queued/dinq-20200430/combined-alt.html I could not locate drm-tip results for that DRIVER_DATE update either. Tomi and Arek, can you take a look? All drm-intel-next-fixes tags will still get a separate run, so should be easier to find. Regards, Joonas > Dave. > > > > Regards, Joonas > > > > Quoting Joonas Lahtinen (2020-04-30 15:49:04) > > > Hi Dave & Daniel, > > > > > > Fix for performance regression GitLab #1698: Iris Plus 655 and > > > 4K screen. Missing workarounds for Tigerlake, and a fix for > > > DP display audio WA. Unbreaking enable_dpcd_backlight, fixes > > > to power code for Icelake+. > > > > > > Improvements to the soft-RC6 code to improve power efficiency, > > > a fix for the timestamp corruption on Tigerlake and plenty of > > > smaller fixes for CI found corner cases. > > > > > > Lots of refactoring that prep for upcoming changes, so I expect > > > the next PR to be quite busy. > > > > > > Includes gvt-next-2020-04-22: Removes left non-upstream xen support > > > bits which will be kept out of tree instead. And several guest > > > context shadow optimizations. > > > > > > Regards, Joonas > > > > > > PS. Noticed the ack for locking rules, thanks! Will merge it. > > > > > > *** > > > > > > drm-intel-next-2020-04-30: > > > > > > Driver Changes: > > > > > > - Fix GitLab #1698: Performance regression with Linux 5.7-rc1 on > > > Iris Plus 655 and 4K screen (Chris) > > > - Add Wa_14011059788 for Tigerlake (Matt A) > > > - Add per ctx batchbuffer wa for timestamp for Gen12 (Mika) > > > - Use indirect ctx bb to load cmd buffer control value > > > from context image to avoid corruption (Mika) > > > - Enable DP Display Audio WA (Uma, Jani) > > > - Update forcewake firmware ranges for Icelake (Radhakrishna) > > > - Add missing deinitialization cases of load failure for display (Jose) > > > - Implement TC cold sequences for Icelake and Tigerlake (Jose) > > > - Unbreak enable_dpcd_backlight modparam (Lyude) > > > - Move the late flush_submission in retire to the end (Chris) > > > - Demote "Reducing compressed framebufer size" message to info (Peter) > > > - Push MST link retraining to the hotplug work (Ville) > > > - Hold obj->vma.lock over for_each_ggtt_vma() (Chris) > > > - Fix timeout handling during TypeC AUX power well enabling for ICL (Imre) > > > - Fix skl+ non-scaled pfit modes (Ville) > > > - Prefer soft-rc6 over RPS DOWN_TIMEOUT (Chris) > > > - Sanitize GT first before poisoning HWSP (Chris) > > > - Fix up clock RPS frequency readout (Chris) > > > - Avoid reusing the same logical CCID (Chris) > > > - Avoid dereferencing a dead context (Chris) > > > - Always enable busy-stats for execlists (Chris) > > > - Apply the aggressive downclocking to parking (Chris) > > > - Restore aggressive post-boost downclocking (Chris) > > > > > > - Scrub execlists state on resume (Chris) > > > - Add debugfs attributes for LPSP (Ansuman) > > > - Improvements to kernel selftests (Chris, Mika) > > > - Add tiled blits selftest (Zbigniew) > > > - Fix error handling in __live_lrc_indirect_ctx_bb() (Dan) > > > - Add pre/post plane updates for SAGV (Stanislav) > > > - Add ICL PG3 PW ID for EHL (Anshuman) > > > - Fix Sphinx build duplicate label warning (Jani) > > > - Error log non-zero audio power refcount after unbind (Jani) > > > - Remove object_is_locked assertion from unpin_from_display_plane (Chris) > > > - Use single set of AUX powerwell ops for gen11+ (Matt R) > > > - Prefer drm_WARN_ON over WARN_ON (Pankaj) > > > - Poison residual state [HWSP] across resume (Chris, Tvrtko) > > > - Convert request-before-CS assertion to debug (Chris) > > > - Carefully order virtual_submission_tasklet (Chris) > > > - Check carefully for an idle engine in wait-for-idle (Chris) > > > - Only close vma we open (Chris) > > > - Trace RPS events (Chris) > > > - Use the RPM config register to determine clk frequencies (Chris) > > > - Drop rq->ring->vma peeking from error capture (Chris) > > > - Check preempt-timeout target before submit_ports (Chris) > > > - Check HWSP cacheline is valid before acquiring (Chris) > > > - Use proper fault mask in interrupt postinstall too (Matt R) > > > - Keep a no-frills swappable copy of the default context state (Chris) > > > > > > - Add atomic helpers for bandwidth (Stanislav) > > > - Refactor setting dma info to a common helper from device info (Michael) > > > - Refactor DDI transcoder code for clairty (Ville) > > > - Extend PG3 power well ID to ICL (Anshuman) > > > - Refactor PFIT code for readability and future extensibility (Ville) > > > - Clarify code split between intel_ddi.c and intel_dp.c (Ville) > > > - Move out code to return the digital_port of the aux ch (Jose) > > > - Move rps.enabled/active and use of RPS interrupts to flags (Chris) > > > - Remove superfluous inlines and dead code (Jani) > > > - Re-disable -Wframe-address from top-level Makefile (Nick) > > > - Static checker and spelling fixes (Colin, Nathan) > > > - Split long lines (Ville) > > > > > > The following changes since commit b06ef327e26367b9286a2079b31cde8d2161c0d8: > > > > > > drm/i915: Update DRIVER_DATE to 20200417 (2020-04-17 09:35:00 +0300) > > > > > > are available in the Git repository at: > > > > > > git://anongit.freedesktop.org/drm/drm-intel tags/drm-intel-next-2020-04-30 > > > > > > for you to fetch changes up to 230982d8d8df7f9d9aa216840ea2db1df6ad5d37: > > > > > > drm/i915: Update DRIVER_DATE to 20200430 (2020-04-30 11:13:21 +0300) > > > > > > ---------------------------------------------------------------- > > > Driver Changes: > > > > > > - Fix GitLab #1698: Performance regression with Linux 5.7-rc1 on > > > Iris Plus 655 and 4K screen (Chris) > > > - Add Wa_14011059788 for Tigerlake (Matt A) > > > - Add per ctx batchbuffer wa for timestamp for Gen12 (Mika) > > > - Use indirect ctx bb to load cmd buffer control value > > > from context image to avoid corruption (Mika) > > > - Enable DP Display Audio WA (Uma, Jani) > > > - Update forcewake firmware ranges for Icelake (Radhakrishna) > > > - Add missing deinitialization cases of load failure for display (Jose) > > > - Implement TC cold sequences for Icelake and Tigerlake (Jose) > > > - Unbreak enable_dpcd_backlight modparam (Lyude) > > > - Move the late flush_submission in retire to the end (Chris) > > > - Demote "Reducing compressed framebufer size" message to info (Peter) > > > - Push MST link retraining to the hotplug work (Ville) > > > - Hold obj->vma.lock over for_each_ggtt_vma() (Chris) > > > - Fix timeout handling during TypeC AUX power well enabling for ICL (Imre) > > > - Fix skl+ non-scaled pfit modes (Ville) > > > - Prefer soft-rc6 over RPS DOWN_TIMEOUT (Chris) > > > - Sanitize GT first before poisoning HWSP (Chris) > > > - Fix up clock RPS frequency readout (Chris) > > > - Avoid reusing the same logical CCID (Chris) > > > - Avoid dereferencing a dead context (Chris) > > > - Always enable busy-stats for execlists (Chris) > > > - Apply the aggressive downclocking to parking (Chris) > > > - Restore aggressive post-boost downclocking (Chris) > > > > > > - Scrub execlists state on resume (Chris) > > > - Add debugfs attributes for LPSP (Ansuman) > > > - Improvements to kernel selftests (Chris, Mika) > > > - Add tiled blits selftest (Zbigniew) > > > - Fix error handling in __live_lrc_indirect_ctx_bb() (Dan) > > > - Add pre/post plane updates for SAGV (Stanislav) > > > - Add ICL PG3 PW ID for EHL (Anshuman) > > > - Fix Sphinx build duplicate label warning (Jani) > > > - Error log non-zero audio power refcount after unbind (Jani) > > > - Remove object_is_locked assertion from unpin_from_display_plane (Chris) > > > - Use single set of AUX powerwell ops for gen11+ (Matt R) > > > - Prefer drm_WARN_ON over WARN_ON (Pankaj) > > > - Poison residual state [HWSP] across resume (Chris, Tvrtko) > > > - Convert request-before-CS assertion to debug (Chris) > > > - Carefully order virtual_submission_tasklet (Chris) > > > - Check carefully for an idle engine in wait-for-idle (Chris) > > > - Only close vma we open (Chris) > > > - Trace RPS events (Chris) > > > - Use the RPM config register to determine clk frequencies (Chris) > > > - Drop rq->ring->vma peeking from error capture (Chris) > > > - Check preempt-timeout target before submit_ports (Chris) > > > - Check HWSP cacheline is valid before acquiring (Chris) > > > - Use proper fault mask in interrupt postinstall too (Matt R) > > > - Keep a no-frills swappable copy of the default context state (Chris) > > > > > > - Add atomic helpers for bandwidth (Stanislav) > > > - Refactor setting dma info to a common helper from device info (Michael) > > > - Refactor DDI transcoder code for clairty (Ville) > > > - Extend PG3 power well ID to ICL (Anshuman) > > > - Refactor PFIT code for readability and future extensibility (Ville) > > > - Clarify code split between intel_ddi.c and intel_dp.c (Ville) > > > - Move out code to return the digital_port of the aux ch (Jose) > > > - Move rps.enabled/active and use of RPS interrupts to flags (Chris) > > > - Remove superfluous inlines and dead code (Jani) > > > - Re-disable -Wframe-address from top-level Makefile (Nick) > > > - Static checker and spelling fixes (Colin, Nathan) > > > - Split long lines (Ville) > > > > > > ---------------------------------------------------------------- > > > Anshuman Gupta (5): > > > drm/i915: Power well id for ICL PG3 > > > drm/i915: Add i915_lpsp_capability debugfs > > > drm/i915: Add connector dbgfs for all connectors > > > drm/i915: Add i915_lpsp_status debugfs attribute > > > drm/i915: Add ICL PG3 PW ID for EHL > > > > > > Chris Wilson (46): > > > drm/i915/gt: Scrub execlists state on resume > > > drm/i915/selftests: Delay spinner before waiting for an interrupt > > > drm/i915/selftests: Take the engine wakeref around __rps_up_interrupt > > > drm/i915/selftests: Move gpu energy measurement into its own little lib > > > drm/i915/selftests: Check power consumption at min/max frequencies > > > drm/i915/gem: Remove object_is_locked assertion from unpin_from_display_plane > > > drm/i915/gt: Move the late flush_submission in retire to the end > > > drm/i915/selftests: Verify frequency scaling with RPS > > > drm/i915/selftests: Skip energy consumption tests if not controlling freq > > > drm/i915/selftests: Check RPS controls > > > drm/i915/selftests: Split RPS frequency measurement > > > drm/i915/selftests: Show the pcode frequency table on error > > > drm/i915/selftests: Exercise dynamic reclocking with RPS > > > drm/i915/selftests: Show the pstate limits on any failure to reset min > > > drm/i915/selftests: Show the full scaling curve on failure > > > drm/i915/selftests: Disable C-states when measuring RPS frequency response > > > drm/i915/gt: Poison residual state [HWSP] across resume. > > > drm/i915/selftests: Unroll the CS frequency loop > > > drm/i915/selftests: Disable heartbeat around RPS interrupt testing > > > drm/i915/selftests: Try to detect rollback during batchbuffer preemption > > > drm/i915/gem: Hold obj->vma.lock over for_each_ggtt_vma() > > > drm/i915/execlists: Drop request-before-CS assertion > > > drm/i915/gt: Carefully order virtual_submission_tasklet > > > drm/i915/gt: Check carefully for an idle engine in wait-for-idle > > > drm/i915/selftests: Add request throughput measurement to perf > > > drm/i915: Only close vma we open > > > drm/i915/gt: Prefer soft-rc6 over RPS DOWN_TIMEOUT > > > drm/i915/gt: Trace RPS events > > > drm/i915/gt: Use the RPM config register to determine clk frequencies > > > drm/i915: Drop rq->ring->vma peeking from error capture > > > drm/i915/execlists: Check preempt-timeout target before submit_ports > > > drm/i915/gt: Check cacheline is valid before acquiring > > > drm/i915/gt: Sanitize GT first > > > drm/i915/gt: Fix up clock frequency > > > drm/i915/selftests: Tweak the tolerance for clock ticks to 12.5% > > > drm/i915/execlists: Avoid reusing the same logical CCID > > > drm/i915/execlists: Track inflight CCID > > > drm/i915/execlists: Verify we don't submit two identical CCIDs > > > drm/i915: Avoid dereferencing a dead context > > > drm/i915/gt: Keep a no-frills swappable copy of the default context state > > > drm/i915/gt: Always enable busy-stats for execlists > > > drm/i915/gt: Move rps.enabled/active to flags > > > drm/i915/gt: Track use of RPS interrupts in flags > > > drm/i915/gt: Switch to manual evaluation of RPS > > > drm/i915/gt: Apply the aggressive downclocking to parking > > > drm/i915/gt: Restore aggressive post-boost downclocking > > > > > > Christoph Hellwig (1): > > > i915/gvt: remove unused xen bits > > > > > > Colin Ian King (2): > > > drm/i915: remove redundant assignment to variable test_result > > > drm/i915/gt: fix spelling mistake "evalution" -> "evaluation" > > > > > > Dan Carpenter (1): > > > drm/i915/selftests: fix error handling in __live_lrc_indirect_ctx_bb() > > > > > > Imre Deak (1): > > > drm/i915/icl: Fix timeout handling during TypeC AUX power well enabling > > > > > > Jani Nikula (5): > > > drm/i915: fix Sphinx build duplicate label warning > > > drm/i915/audio: error log non-zero audio power refcount after unbind > > > drm/i915/hdmi: remove unused intel_hdmi_hdcp2_protocol() > > > drm/i915: drop a bunch of superfluous inlines > > > drm/i915/audio: fix compressed_bpp check > > > > > > Joonas Lahtinen (2): > > > Merge tag 'gvt-next-2020-04-22' of https://github.com/intel/gvt-linux into drm-intel-next-queued > > > drm/i915: Update DRIVER_DATE to 20200430 > > > > > > José Roberto de Souza (10): > > > drm/i915: Add missing deinitialization cases of load failure > > > drm/i915/display: Move out code to return the digital_port of the aux ch > > > drm/i915/display: Add intel_legacy_aux_to_power_domain() > > > drm/i915/display: Split hsw_power_well_enable() into two > > > drm/i915/tc/icl: Implement TC cold sequences > > > drm/i915/tc: Skip ref held check for TC legacy aux power wells > > > drm/i915/tc/tgl: Implement TC cold sequences > > > drm/i915/tc: Catch TC users accessing FIA registers without enable aux > > > drm/i915/tc: Do not warn when aux power well of static TC ports timeout > > > drm/i915/display: Load DP_TP_CTL/STATUS offset before use it > > > > > > Lyude Paul (1): > > > drm/i915/dpcd_bl: Unbreak enable_dpcd_backlight modparam > > > > > > Matt Atwood (1): > > > drm/i915/tgl: Wa_14011059788 > > > > > > Matt Roper (2): > > > drm/i915: Use single set of AUX powerwell ops for gen11+ > > > drm/i915: Use proper fault mask in interrupt postinstall too > > > > > > Michael J. Ruhl (1): > > > drm/i915: Refactor setting dma info to a common helper > > > > > > Mika Kuoppala (6): > > > drm/i915/selftests: Add context batchbuffers registers to live_lrc_fixed > > > drm/i915: Make define for lrc state offset > > > drm/i915: Add engine scratch register to live_lrc_fixed > > > drm/i915: Add per ctx batchbuffer wa for timestamp > > > drm/i915: Add live selftests for indirect ctx batchbuffers > > > drm/i915: Use indirect ctx bb to mend CMD_BUF_CCTL > > > > > > Nathan Chancellor (1): > > > drm/i915/gt: Avoid uninitialized use of rpcurupei in frequency_show > > > > > > Nick Desaulniers (1): > > > drm/i915: re-disable -Wframe-address > > > > > > Pankaj Bharadiya (9): > > > drm/i915/display/icl_dsi: Prefer drm_WARN_ON over WARN_ON > > > drm/i915/display/atomic_plane: Prefer drm_WARN_ON over WARN_ON > > > drm/i915/display/ddi: Prefer drm_WARN* over WARN* > > > drm/i915/display/display: Prefer drm_WARN_ON over WARN_ON > > > drm/i915/display/dpll_mgr: Prefer drm_WARN_ON over WARN_ON > > > drm/i915/display/frontbuffer: Prefer drm_WARN_ON over WARN_ON > > > drm/i915/display/global_state: Prefer drm_WARN* over WARN* > > > drm/i915/display/overlay: Prefer drm_WARN_ON over WARN_ON > > > drm/i915/display/vlv_dsi: Prefer drm_WARN_ON over WARN_ON > > > > > > Peter Jones (1): > > > Make the "Reducing compressed framebufer size" message be DRM_INFO_ONCE() > > > > > > Radhakrishna Sripada (1): > > > drm/i915/icl: Update forcewake firmware ranges > > > > > > Stanislav Lisovskiy (3): > > > drm/i915: Add intel_atomic_get_bw_*_state helpers > > > drm/i915: Prepare to extract gen specific functions from intel_can_enable_sagv > > > drm/i915: Add pre/post plane updates for SAGV > > > > > > Uma Shankar (1): > > > drm/i915/display: Enable DP Display Audio WA > > > > > > Ville Syrjälä (16): > > > drm/i915: Pass encoder to intel_ddi_enable_pipe_clock() > > > drm/i915: Move the TRANS_DDI_FUNC_CTL enable to a later point > > > drm/i915: Push TRANS_DDI_FUNC_CTL into the encoder->enable() hook > > > drm/i915: Pass encoder all the way to intel_ddi_transcoder_func_reg_val_get() > > > drm/i915: Flatten intel_dp_check_mst_status() a bit > > > drm/i915: Push MST link retraining to the hotplug work > > > 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 > > > drm/i915: Introduce .set_link_train() vfunc > > > drm/i915: Introduce .set_signal_levels() vfunc > > > drm/i915: Introduce .set_idle_link_train() vfunc > > > drm/i915: Split some long lines > > > > > > Xiyu Yang (1): > > > drm/i915/selftests: Fix i915_address_space refcnt leak > > > > > > Yan Zhao (3): > > > drm/i915/gvt: access shadow ctx via its virtual address directly > > > drm/i915/gvt: combine access to consecutive guest context pages > > > drm/i915/gvt: skip populate shadow context if guest context not changed > > > > > > Zbigniew Kempczy\u0144ski (1): > > > drm/i915/selftests: Add tiled blits selftest > > > > > > drivers/char/agp/intel-gtt.c | 17 +- > > > drivers/gpu/drm/i915/Makefile | 6 +- > > > drivers/gpu/drm/i915/display/icl_dsi.c | 21 +- > > > drivers/gpu/drm/i915/display/intel_atomic_plane.c | 4 +- > > > drivers/gpu/drm/i915/display/intel_audio.c | 145 +++ > > > drivers/gpu/drm/i915/display/intel_bw.c | 24 +- > > > drivers/gpu/drm/i915/display/intel_bw.h | 9 + > > > drivers/gpu/drm/i915/display/intel_connector.c | 3 + > > > drivers/gpu/drm/i915/display/intel_crt.c | 4 +- > > > drivers/gpu/drm/i915/display/intel_ddi.c | 244 +++-- > > > drivers/gpu/drm/i915/display/intel_ddi.h | 6 +- > > > drivers/gpu/drm/i915/display/intel_display.c | 374 ++++--- > > > drivers/gpu/drm/i915/display/intel_display.h | 3 +- > > > .../gpu/drm/i915/display/intel_display_debugfs.c | 100 ++ > > > drivers/gpu/drm/i915/display/intel_display_power.c | 534 ++++----- > > > drivers/gpu/drm/i915/display/intel_display_power.h | 5 +- > > > drivers/gpu/drm/i915/display/intel_display_types.h | 6 +- > > > drivers/gpu/drm/i915/display/intel_dp.c | 608 ++++++----- > > > .../gpu/drm/i915/display/intel_dp_aux_backlight.c | 1 + > > > drivers/gpu/drm/i915/display/intel_dp_mst.c | 4 +- > > > drivers/gpu/drm/i915/display/intel_dpll_mgr.c | 8 +- > > > drivers/gpu/drm/i915/display/intel_dsb.c | 6 +- > > > drivers/gpu/drm/i915/display/intel_dsi_vbt.c | 2 +- > > > drivers/gpu/drm/i915/display/intel_fbc.c | 5 +- > > > drivers/gpu/drm/i915/display/intel_frontbuffer.c | 6 +- > > > drivers/gpu/drm/i915/display/intel_global_state.c | 4 +- > > > drivers/gpu/drm/i915/display/intel_gmbus.c | 3 +- > > > drivers/gpu/drm/i915/display/intel_hdcp.c | 23 +- > > > drivers/gpu/drm/i915/display/intel_hdmi.c | 56 +- > > > drivers/gpu/drm/i915/display/intel_lvds.c | 16 +- > > > drivers/gpu/drm/i915/display/intel_overlay.c | 6 +- > > > drivers/gpu/drm/i915/display/intel_panel.c | 140 +-- > > > drivers/gpu/drm/i915/display/intel_panel.h | 10 +- > > > drivers/gpu/drm/i915/display/intel_tc.c | 95 +- > > > drivers/gpu/drm/i915/display/vlv_dsi.c | 11 +- > > > drivers/gpu/drm/i915/gem/i915_gem_context.c | 4 +- > > > drivers/gpu/drm/i915/gem/i915_gem_domain.c | 7 +- > > > drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c | 2 +- > > > drivers/gpu/drm/i915/gem/i915_gem_object.c | 4 +- > > > drivers/gpu/drm/i915/gem/i915_gem_tiling.c | 20 +- > > > drivers/gpu/drm/i915/gem/selftests/huge_pages.c | 95 +- > > > .../drm/i915/gem/selftests/i915_gem_client_blt.c | 595 ++++++++++ > > > .../gpu/drm/i915/gem/selftests/i915_gem_context.c | 1 - > > > drivers/gpu/drm/i915/gt/debugfs_gt_pm.c | 64 +- > > > drivers/gpu/drm/i915/gt/intel_context_sseu.c | 3 +- > > > drivers/gpu/drm/i915/gt/intel_context_types.h | 10 +- > > > drivers/gpu/drm/i915/gt/intel_engine.h | 3 - > > > drivers/gpu/drm/i915/gt/intel_engine_cs.c | 82 +- > > > drivers/gpu/drm/i915/gt/intel_engine_pm.c | 10 +- > > > drivers/gpu/drm/i915/gt/intel_engine_types.h | 41 +- > > > drivers/gpu/drm/i915/gt/intel_ggtt.c | 15 - > > > drivers/gpu/drm/i915/gt/intel_gpu_commands.h | 3 +- > > > drivers/gpu/drm/i915/gt/intel_gt.c | 63 +- > > > drivers/gpu/drm/i915/gt/intel_gt_clock_utils.c | 102 ++ > > > drivers/gpu/drm/i915/gt/intel_gt_clock_utils.h | 27 + > > > drivers/gpu/drm/i915/gt/intel_gt_pm.c | 10 +- > > > drivers/gpu/drm/i915/gt/intel_gt_requests.c | 20 +- > > > drivers/gpu/drm/i915/gt/intel_gt_types.h | 9 +- > > > drivers/gpu/drm/i915/gt/intel_lrc.c | 703 ++++++++---- > > > drivers/gpu/drm/i915/gt/intel_lrc.h | 1 + > > > drivers/gpu/drm/i915/gt/intel_lrc_reg.h | 6 +- > > > drivers/gpu/drm/i915/gt/intel_renderstate.c | 4 +- > > > drivers/gpu/drm/i915/gt/intel_ring_submission.c | 16 +- > > > drivers/gpu/drm/i915/gt/intel_rps.c | 350 ++++-- > > > drivers/gpu/drm/i915/gt/intel_rps.h | 60 ++ > > > drivers/gpu/drm/i915/gt/intel_rps_types.h | 14 +- > > > drivers/gpu/drm/i915/gt/intel_timeline.c | 19 +- > > > drivers/gpu/drm/i915/gt/intel_timeline.h | 2 + > > > drivers/gpu/drm/i915/gt/selftest_context.c | 2 +- > > > drivers/gpu/drm/i915/gt/selftest_gt_pm.c | 6 + > > > drivers/gpu/drm/i915/gt/selftest_lrc.c | 534 ++++++++- > > > drivers/gpu/drm/i915/gt/selftest_rc6.c | 25 +- > > > drivers/gpu/drm/i915/gt/selftest_rps.c | 1134 +++++++++++++++++++- > > > drivers/gpu/drm/i915/gt/selftest_rps.h | 6 + > > > drivers/gpu/drm/i915/gt/shmem_utils.c | 173 +++ > > > drivers/gpu/drm/i915/gt/shmem_utils.h | 23 + > > > drivers/gpu/drm/i915/gt/st_shmem_utils.c | 63 ++ > > > drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c | 2 +- > > > drivers/gpu/drm/i915/gvt/gtt.c | 15 + > > > drivers/gpu/drm/i915/gvt/gvt.c | 1 - > > > drivers/gpu/drm/i915/gvt/gvt.h | 5 + > > > drivers/gpu/drm/i915/gvt/hypercall.h | 2 - > > > drivers/gpu/drm/i915/gvt/scheduler.c | 136 ++- > > > drivers/gpu/drm/i915/i915_debugfs.c | 39 +- > > > drivers/gpu/drm/i915/i915_drv.c | 119 +- > > > drivers/gpu/drm/i915/i915_drv.h | 4 +- > > > drivers/gpu/drm/i915/i915_gpu_error.c | 43 +- > > > drivers/gpu/drm/i915/i915_gpu_error.h | 1 - > > > drivers/gpu/drm/i915/i915_irq.c | 6 +- > > > drivers/gpu/drm/i915/i915_pci.c | 14 + > > > drivers/gpu/drm/i915/i915_perf.c | 8 +- > > > drivers/gpu/drm/i915/i915_pmu.c | 32 +- > > > drivers/gpu/drm/i915/i915_reg.h | 54 +- > > > drivers/gpu/drm/i915/i915_vma.c | 38 +- > > > drivers/gpu/drm/i915/intel_device_info.c | 1 + > > > drivers/gpu/drm/i915/intel_device_info.h | 2 + > > > drivers/gpu/drm/i915/intel_pm.c | 88 +- > > > drivers/gpu/drm/i915/intel_pm.h | 2 + > > > drivers/gpu/drm/i915/intel_sideband.c | 4 +- > > > drivers/gpu/drm/i915/intel_uncore.c | 31 +- > > > drivers/gpu/drm/i915/intel_wopcm.c | 22 +- > > > drivers/gpu/drm/i915/selftests/i915_gem_gtt.c | 32 +- > > > .../gpu/drm/i915/selftests/i915_mock_selftests.h | 1 + > > > .../gpu/drm/i915/selftests/i915_perf_selftests.h | 1 + > > > drivers/gpu/drm/i915/selftests/i915_request.c | 572 +++++++++- > > > drivers/gpu/drm/i915/selftests/i915_vma.c | 2 +- > > > drivers/gpu/drm/i915/selftests/librapl.c | 24 + > > > drivers/gpu/drm/i915/selftests/librapl.h | 13 + > > > 108 files changed, 6193 insertions(+), 1961 deletions(-) > > > create mode 100644 drivers/gpu/drm/i915/gt/intel_gt_clock_utils.c > > > create mode 100644 drivers/gpu/drm/i915/gt/intel_gt_clock_utils.h > > > create mode 100644 drivers/gpu/drm/i915/gt/shmem_utils.c > > > create mode 100644 drivers/gpu/drm/i915/gt/shmem_utils.h > > > create mode 100644 drivers/gpu/drm/i915/gt/st_shmem_utils.c > > > create mode 100644 drivers/gpu/drm/i915/selftests/librapl.c > > > create mode 100644 drivers/gpu/drm/i915/selftests/librapl.h