[PULL] drm-intel-next

Rodrigo Vivi
2018-06-25T16:56:22Z

Hi Dave,

Here goes another pull request for 4.19.

Highlights here to Ice Lake Display enabling, and to preparation for
full-ppgtt enabling for older gens, and to hangcheck and gpu reset
improvements in general.

drm-intel-next-2018-06-20:

Chris is doing many reworks that allow us to get full-ppgtt supported
on all platforms back to HSW. As well many other fix and improvements,
Including:
- Use GEM suspend when aborting initialization (Chris)
- Change i915_gem_fault to return vm_fault_t (Chris)
- Expand VMA to Non gem object entities (Chris)
- Improve logs for load failure, but quite logging on fault injection to avoid noise on CI (Chris)
- Other page directory handling fixes and improvements for gen6 (Chris)
- Other gtt clean-up removing redundancies and unused checks (Chris)
- Reorder aliasing ppgtt fini (Chris)
- Refactor of unsetting obg->mm.pages (Chris)
- Apply batch location restrictions before pinning (Chris)
- Ringbuffer fixes for context restore (Chris)
- Execlist fixes on freeing error pointer on allocation error (Chris)
- Make closing request flush mandatory (Chris)
- Move GEM sanitize from resume_early to resume (Chris)
- Improve debug dumps (Chris)
- Silent compiler for selftest (Chris)
- Other execlists changes to improve hangcheck and reset.
- Many gtt page directory fixes and improvements (Chris)
- Reorg context workarounds (Chris)
- Avoid ERR_PTR dereference on selftest (Chris)

Other GEM related work:
- Stop trying to reset GPU if reset failed (Mika)
- Add HW workaround for KBL to fix GPU reset (Mika)
- Fix context ban and hang accounting for client (Mika)
- Fixes on OA perf (Michel, Jani)
- Refactor on GuC log mechanisms (Piotr)
- Enable provoking vertex fix on Gen9 system (Kenneth)

More ICL patches for Display enabling:
- ICL - 10-bit support for HDMI (RK)
- ICL - Start adding TBT PLL (Paulo)
- ICL - DDI HDMK level selection (Manasi)
- ICL - GMBUS GPIO pin mapping fix (Mahesh)
- ICL - Adding DP_AUX_E support (James)
- ICL - Display interrupts handling (DK)

Other display fixes and improvements:
- Fix sprite destination color keying on SKL+ (Ville)
- Fixes and improvements on PCH detection, specially for non PCH systems (Jani)
- Document PCH_NOP (Lucas)
- Allow DBLSCAN user modes with eDP/LVDS/DSI (Ville)
- Opregion and ACPI cleanup and organization (Jani)
- Kill delays when activation psr (Rodrigo)
- ...and a consequent fix of the psr activation flow (DK)
- Fix HDMI infoframe setting (Imre)
- Fix Display interrupts and modes on old gens (Ville)
- Start switching to kernel unsigned int types (Jani)
- Introduction to Amber Lake and Whiskey Lake platforms (Jose)
- Audio clock fixes for HBR3 (RK)
- Standardize i915_reg.h definitions according to our doc and checkpatch (Paulo)
- Remove unused timespec_to_jiffies_timeout function (Arnd)
- Increase the scope of PSR wake fix for other VBTs out there (Vathsala)
- Improve debug msgs with prop name/id (Ville)
- Other clean up on unecessary cursor size defines (Ville)
- Enforce max hdisplay/hblank_start limits on HSW/BDW (Ville)
- Make ELD pointers constant (Jani)
- Fix for PSR VBT parse (Colin)
- Add warn about unsupported CDCLK rates (Imre)

Thanks,
Rodrigo.

The following changes since commit 14c3f8425080a1ff97df7b81f7c339bf42c427a3:

drm/i915: Update DRIVER_DATE to 20180606 (2018-06-06 15:10:47 -0700)

are available in the Git repository at:

git://anongit.freedesktop.org/drm/drm-intel tags/drm-intel-next-2018-06-20

for you to fetch changes up to e1cacec9d50d7299893eeab2d895189f3db625da:

drm/i915: Update DRIVER_DATE to 20180620 (2018-06-20 14:10:48 -0700)

----------------------------------------------------------------
Chris is doing many reworks that allow us to get full-ppgtt supported
on all platforms back to HSW. As well many other fix and improvements,
Including:
- Use GEM suspend when aborting initialization (Chris)
- Change i915_gem_fault to return vm_fault_t (Chris)
- Expand VMA to Non gem object entities (Chris)
- Improve logs for load failure, but quite logging on fault injection to avoid noise on CI (Chris)
- Other page directory handling fixes and improvements for gen6 (Chris)
- Other gtt clean-up removing redundancies and unused checks (Chris)
- Reorder aliasing ppgtt fini (Chris)
- Refactor of unsetting obg->mm.pages (Chris)
- Apply batch location restrictions before pinning (Chris)
- Ringbuffer fixes for context restore (Chris)
- Execlist fixes on freeing error pointer on allocation error (Chris)
- Make closing request flush mandatory (Chris)
- Move GEM sanitize from resume_early to resume (Chris)
- Improve debug dumps (Chris)
- Silent compiler for selftest (Chris)
- Other execlists changes to improve hangcheck and reset.
- Many gtt page directory fixes and improvements (Chris)
- Reorg context workarounds (Chris)
- Avoid ERR_PTR dereference on selftest (Chris)

Other GEM related work:
- Stop trying to reset GPU if reset failed (Mika)
- Add HW workaround for KBL to fix GPU reset (Mika)
- Fix context ban and hang accounting for client (Mika)
- Fixes on OA perf (Michel, Jani)
- Refactor on GuC log mechanisms (Piotr)
- Enable provoking vertex fix on Gen9 system (Kenneth)

More ICL patches for Display enabling:
- ICL - 10-bit support for HDMI (RK)
- ICL - Start adding TBT PLL (Paulo)
- ICL - DDI HDMK level selection (Manasi)
- ICL - GMBUS GPIO pin mapping fix (Mahesh)
- ICL - Adding DP_AUX_E support (James)
- ICL - Display interrupts handling (DK)

Other display fixes and improvements:
- Fix sprite destination color keying on SKL+ (Ville)
- Fixes and improvements on PCH detection, specially for non PCH systems (Jani)
- Document PCH_NOP (Lucas)
- Allow DBLSCAN user modes with eDP/LVDS/DSI (Ville)
- Opregion and ACPI cleanup and organization (Jani)
- Kill delays when activation psr (Rodrigo)
- ...and a consequent fix of the psr activation flow (DK)
- Fix HDMI infoframe setting (Imre)
- Fix Display interrupts and modes on old gens (Ville)
- Start switching to kernel unsigned int types (Jani)
- Introduction to Amber Lake and Whiskey Lake platforms (Jose)
- Audio clock fixes for HBR3 (RK)
- Standardize i915_reg.h definitions according to our doc and checkpatch (Paulo)
- Remove unused timespec_to_jiffies_timeout function (Arnd)
- Increase the scope of PSR wake fix for other VBTs out there (Vathsala)
- Improve debug msgs with prop name/id (Ville)
- Other clean up on unecessary cursor size defines (Ville)
- Enforce max hdisplay/hblank_start limits on HSW/BDW (Ville)
- Make ELD pointers constant (Jani)
- Fix for PSR VBT parse (Colin)
- Add warn about unsupported CDCLK rates (Imre)

----------------------------------------------------------------
Arnd Bergmann (1):
i915: remove timespec_to_jiffies_timeout

Chris Wilson (43):
drm/i915/gvt: Use offsetofend() rather than offsetof + sizeof
drm/i915: Use GEM suspend when aborting initialisation
drm/i915: Change i915_gem_fault() to return vm_fault_t
drm/i915: Prepare for non-object vma
drm/i915: Decouple vma vfuncs from vm
drm/i915/gtt: Push allocation to hw ppgtt constructor
drm/i915: Mark the GPU as wedged without error on fault injection
drm/i915/gtt: Fix unwind length passed to gen6_ppgtt_clear_range
drm/i915/gtt: Remove redundant hsw_mm_switch()
drm/i915/gtt: Remove vgpu check for gen6
drm/i915/gtt: Reorder aliasing_ppgtt fini
drm/i915: Squash GEM load failure message (again)
drm/i915: Refactor unsettting obj->mm.pages
drm/i915: Apply batch location restrictions before pinning
drm/i915/ringbuffer: Brute force context restore
drm/i915/ringbuffer: Fix context restore upon reset
drm/i915: Wrap around the tail offset before setting ring->tail
drm/i915/execlists: Avoid putting the error pointer
drm/i915/gtt: Invalidate GGTT caches after writing the gen6 page directories
drm/i915/ringbuffer: Serialize load of PD_DIR
drm/i915/gtt: Subclass gen6_hw_ppgtt
drm/i915/gtt: Onionify error handling for gen6_ppgtt_create
drm/i915/gtt: Make gen6 page directories evictable
drm/i915: Make closing request flush mandatory
drm/i915: Move GEM sanitize from resume_early to resume
drm/i915: Dump the ringbuffer of the active request for debugging
drm/i915: Make the hexdump row offset visually distinct
drm/i915: Show CCID in engine dumps
drm/i915/gtt: Only keep gen6 page directories pinned while active
drm/i915/selftests: Initialise request to silence a compiler
drm/i915/execlists: Push the tasklet kick after reset to reset_finish
drm/i915: Declare the driver wedged if hangcheck makes no progress
drm/i915/gtt: Lazily allocate page directories for gen7
drm/i915/gtt: Free unused page tables on unbind the context
drm/i915/gtt: Cache the PTE encoding of the scratch page
drm/i915/gtt: Reduce a pair of runtime asserts
drm/i915: Keep the ctx workarounds tightly packed
drm/i915: Be irqsafe inside reset
drm/i915/execlists: Reset the CSB head tracking on reset/sanitization
drm/i915: Fix fallout of fake reset along resume
drm/i915: Only show debug for state changes when banning
drm/i915/execlists: Pull the w/a LRI emission into a helper
drm/i915/selftests: Avoid ERR_PTR dereference

Colin Ian King (1):
drm/i915/psr: fix copy-paste error with setting of tp2_wakeup_time_us

Colin Xu (14):
drm/i915/gvt: Use vgpu_lock to protect per vgpu access
drm/i915/gvt: Use sched_lock to protect gvt scheduler logic.
drm/i915/gvt: Add D_BXT device type define for BXT.
drm/i915/gvt: Add MEDIA_POOL_STATE for BXT.
drm/i915/gvt: Enable device info initialization for BXT.
drm/i915/gvt: Enable gtt initialization for BXT.
drm/i915/gvt: Enable irq initialization for BXT.
drm/i915/gvt: Enable mmio context init and switch for BXT.
drm/i915/gvt: Enable cmd_parser support for BXT.
drm/i915/gvt: Enable force wake support for BXT.
drm/i915/gvt: Enable virtual display support for BXT.
drm/i915/gvt: Enable dma_buf support for BXT.
drm/i915/gvt: Add mmio handler for for BXT.
drm/i915: Enable KVMGT for BXT.

Dhinakaran Pandiyan (4):
drm/i915/icl: GSE interrupt moves from DE_MISC to GU_MISC
drm/i915/icl: Support for TC North Display interrupts
drm/i915/icl: Handle hotplug interrupts for DP over TBT
drm/i915/psr: Fix warning in intel_psr_activate()

Imre Deak (6):
drm/i915/skl: Add warn about unsupported CDCLK rates
drm/i915/ddi: s/crtc->config/old_crtc_state in haswell_crtc_disable()
drm/i915/ddi: Push pipe clock enabling to encoders
drm/i915/ddi: Check transcoder instead of port when setting HDMI infoframe
drm/i915/ddi: Set HDMI infoframes with pipe clocks enabled
drm/i915/ddi: Removed unused var from hsw_write_infoframe()

James Ausmus (1):
drm/i915/icl: DP_AUX_E is valid on ICL+

Jani Nikula (15):
drm/i915: fix guest virtual PCH detection on non-PCH systems
drm/i915: clean up virtual PCH special case handling
drm/i915: be more strict about HAS_PCH_NOP() usage
drm/i915: fix PCH_NOP setting for non-PCH platforms
drm/i915/perf: make oa format tables const
drm/i915/opregion: move acpi notifier to dev_priv
drm/i915/dsm: remove unnecessary dsm priv structure
drm/i915/vbt: switch to kernel unsigned int types
drm/i915/hdmi: switch to kernel unsigned int types
drm/i915/uncore: switch to kernel unsigned int types
drm/i915/dvo: switch to kernel unsigned int types
drm/i915/backlight: switch to kernel unsigned int types
drm/i915/audio: switch to kernel unsigned int types
drm/i915/lspcon: switch to kernel unsigned int types
drm/i915/audio: constify ELD pointers

José Roberto de Souza (2):
drm/i915/whl: Introducing Whiskey Lake platform
drm/i915/aml: Introducing Amber Lake platform

Kenneth Graunke (1):
drm/i915: Enable provoking vertex fix on Gen9 systems.

Lucas De Marchi (1):
drm/i915: document PCH_NOP

Mahesh Kumar (1):
drm/i915/icl: fix gmbus gpio pin mapping

Manasi Navare (3):
drm/i915/icl: Add DDI HDMI level selection for ICL
drm/i915/icl: Add allowed DP rates for Icelake
drm/i915/dp: Add support for HBR3 and TPS4 during link training

Michel Thierry (2):
drm/i915/perf: use the lrc_desc to get the ctx hw id in gen8-10
drm/i915/perf: fix gen11 engine class shift

Mika Kuoppala (3):
drm/i915: Cancel reset preparations on failed resets
drm/i915: Add WaKBLVECSSemaphoreWaitPoll
drm/i915: Fix context ban and hang accounting for client

Paulo Zanoni (8):
drm/i915/icl: add icelake_get_ddi_pll()
drm/i915/icl: unconditionally init DDI for every port
drm/i915/icl: start adding the TBT pll
drm/i915/icl: implement DVFS for ICL
drm/i915/icl: update VBT's child_device_config flags2 field
drm/i915/i915_reg.h: fix the checkpatch SPACING issues
drm/i915/i915_reg.h: fix the checkpatch SPACE_BEFORE_TAB issues
drm/i915/i915_reg.h: fix the checkpatch MACRO_ARG_PRECEDENCE issues

Piotr Piorkowski (6):
drm/i915/guc: Refactoring preparation of the GUC_CTL_DEBUG parameter
drm/i915/guc: Refactoring preparation of the GUC_CTL_FEATURE parameter
drm/i915/guc: Refactoring preparation of the GUC_CTL_LOG_PARAMS parameter
drm/i915/guc: Refactoring preparation of the GUC_CTL_CTXINFO parameter
drm/i915/guc: Move defines with size of GuC logs to intel_guc_log.h
drm/i915/guc: Add support for define guc_log_size in megabytes.

Piotr Piórkowski (1):
drm/i915/guc: Don't store runtime GuC log level in modparam

Radhakrishna Sripada (2):
drm/i915/audio: Add 810 MHz clock entries to dp_aud_n_m table
drm/i915/icl: Add 10-bit support for hdmi

Rodrigo Vivi (3):
drm/i915/psr: Kill delays when activating psr back.
Merge tag 'gvt-next-2018-06-19' of https://github.com/intel/gvt-linux into drm-intel-next-queued
drm/i915: Update DRIVER_DATE to 20180620

Tina Zhang (1):
drm/i915/gvt: Deliver guest cursor hotspot info

Vathsala Nagaraju (1):
drm/i915/psr: Adds psrwake options for all platforms

Ville Syrjälä (10):
drm/i915: Fix sprite destination colorkeying on SKL+
drm/i915: Allow DBLSCAN user modes with eDP/LVDS/DSI
drm/i915: Fix PIPESTAT irq ack on i965/g4x
drm/i915: Disallow interlaced modes on g4x DP outputs
drm/i915: Turn off g4x DP port in .post_disable()
drm/i915: s/IS_G4X && !IS_GM45/IS_G45/
drm/i915: Print prop name/id when rejecting it
drm/i915: Nuke the cursor size defines
drm/i915: Check timings against hardware maximums
drm/i915: Enforce max hdisplay/hblank_start limits on HSW/BDW FDI

Xinyun Liu (3):
drm/i915/gvt: Avoid dereference a potential null pointer
drm/i915/gvt: removed unnecessary boundary check
drm/i915/gvt: use array to avoid potential buffer overflow

Zhenyu Wang (1):
Merge tag 'drm-intel-next-2018-06-06' into gvt-next

drivers/gpu/drm/i915/dvo_ch7017.c | 20 +-
drivers/gpu/drm/i915/dvo_ch7xxx.c | 22 +-
drivers/gpu/drm/i915/dvo_ivch.c | 26 +-
drivers/gpu/drm/i915/dvo_ns2501.c | 44 +-
drivers/gpu/drm/i915/dvo_sil164.c | 10 +-
drivers/gpu/drm/i915/dvo_tfp410.c | 16 +-
drivers/gpu/drm/i915/gvt/cmd_parser.c | 43 +-
drivers/gpu/drm/i915/gvt/display.c | 58 +-
drivers/gpu/drm/i915/gvt/dmabuf.c | 26 +-
drivers/gpu/drm/i915/gvt/edid.c | 20 +-
drivers/gpu/drm/i915/gvt/execlist.h | 13 +-
drivers/gpu/drm/i915/gvt/fb_decoder.c | 15 +-
drivers/gpu/drm/i915/gvt/firmware.c | 2 +-
drivers/gpu/drm/i915/gvt/gtt.c | 11 +-
drivers/gpu/drm/i915/gvt/gvt.c | 27 +-
drivers/gpu/drm/i915/gvt/gvt.h | 16 +
drivers/gpu/drm/i915/gvt/handlers.c | 399 ++-
drivers/gpu/drm/i915/gvt/interrupt.c | 17 +-
drivers/gpu/drm/i915/gvt/mmio.c | 12 +-
drivers/gpu/drm/i915/gvt/mmio.h | 11 +-
drivers/gpu/drm/i915/gvt/mmio_context.c | 16 +-
drivers/gpu/drm/i915/gvt/page_track.c | 5 +-
drivers/gpu/drm/i915/gvt/sched_policy.c | 36 +-
drivers/gpu/drm/i915/gvt/scheduler.c | 25 +-
drivers/gpu/drm/i915/gvt/vgpu.c | 56 +-
drivers/gpu/drm/i915/i915_debugfs.c | 36 +-
drivers/gpu/drm/i915/i915_drv.c | 56 +-
drivers/gpu/drm/i915/i915_drv.h | 56 +-
drivers/gpu/drm/i915/i915_gem.c | 181 +-
drivers/gpu/drm/i915/i915_gem_context.c | 11 +-
drivers/gpu/drm/i915/i915_gem_execbuffer.c | 53 +-
drivers/gpu/drm/i915/i915_gem_gtt.c | 704 ++---
drivers/gpu/drm/i915/i915_gem_gtt.h | 57 +-
drivers/gpu/drm/i915/i915_gpu_error.c | 3 +
drivers/gpu/drm/i915/i915_irq.c | 182 +-
drivers/gpu/drm/i915/i915_pci.c | 5 +-
drivers/gpu/drm/i915/i915_perf.c | 18 +-
drivers/gpu/drm/i915/i915_pvinfo.h | 5 +-
drivers/gpu/drm/i915/i915_reg.h | 3300 ++++++++++----------
drivers/gpu/drm/i915/i915_request.c | 20 +-
drivers/gpu/drm/i915/i915_request.h | 7 +-
drivers/gpu/drm/i915/i915_trace.h | 33 -
drivers/gpu/drm/i915/i915_vma.c | 107 +-
drivers/gpu/drm/i915/i915_vma.h | 10 +-
drivers/gpu/drm/i915/intel_acpi.c | 27 +-
drivers/gpu/drm/i915/intel_atomic.c | 6 +-
drivers/gpu/drm/i915/intel_atomic_plane.c | 6 +-
drivers/gpu/drm/i915/intel_audio.c | 48 +-
drivers/gpu/drm/i915/intel_bios.c | 12 +-
drivers/gpu/drm/i915/intel_cdclk.c | 56 +-
drivers/gpu/drm/i915/intel_crt.c | 35 +-
drivers/gpu/drm/i915/intel_ddi.c | 39 +-
drivers/gpu/drm/i915/intel_display.c | 122 +-
drivers/gpu/drm/i915/intel_display.h | 3 +-
drivers/gpu/drm/i915/intel_dp.c | 78 +-
drivers/gpu/drm/i915/intel_dp_aux_backlight.c | 12 +-
drivers/gpu/drm/i915/intel_dp_link_training.c | 39 +-
drivers/gpu/drm/i915/intel_dp_mst.c | 6 +
drivers/gpu/drm/i915/intel_dpll_mgr.c | 20 +-
drivers/gpu/drm/i915/intel_dpll_mgr.h | 14 +-
drivers/gpu/drm/i915/intel_drv.h | 7 +-
drivers/gpu/drm/i915/intel_dsi.c | 6 +
drivers/gpu/drm/i915/intel_dvo.c | 8 +-
drivers/gpu/drm/i915/intel_engine_cs.c | 75 +-
drivers/gpu/drm/i915/intel_guc.c | 115 +-
drivers/gpu/drm/i915/intel_guc_fwif.h | 20 +-
drivers/gpu/drm/i915/intel_guc_log.c | 70 +-
drivers/gpu/drm/i915/intel_guc_log.h | 26 +-
drivers/gpu/drm/i915/intel_gvt.c | 2 +
drivers/gpu/drm/i915/intel_hangcheck.c | 17 +-
drivers/gpu/drm/i915/intel_hdmi.c | 104 +-
drivers/gpu/drm/i915/intel_i2c.c | 14 +-
drivers/gpu/drm/i915/intel_lrc.c | 89 +-
drivers/gpu/drm/i915/intel_lspcon.c | 2 +-
drivers/gpu/drm/i915/intel_lvds.c | 5 +
drivers/gpu/drm/i915/intel_opregion.c | 31 +-
drivers/gpu/drm/i915/intel_opregion.h | 1 +
drivers/gpu/drm/i915/intel_panel.c | 8 +-
drivers/gpu/drm/i915/intel_psr.c | 30 +-
drivers/gpu/drm/i915/intel_ringbuffer.c | 239 +-
drivers/gpu/drm/i915/intel_ringbuffer.h | 39 +-
drivers/gpu/drm/i915/intel_runtime_pm.c | 2 +
drivers/gpu/drm/i915/intel_sdvo.c | 6 +
drivers/gpu/drm/i915/intel_sprite.c | 64 +-
drivers/gpu/drm/i915/intel_tv.c | 12 +-
drivers/gpu/drm/i915/intel_uc.c | 2 +-
drivers/gpu/drm/i915/intel_uncore.c | 16 +-
drivers/gpu/drm/i915/intel_uncore.h | 22 +-
drivers/gpu/drm/i915/intel_vbt_defs.h | 6 +-
drivers/gpu/drm/i915/intel_workarounds.c | 76 +-
drivers/gpu/drm/i915/selftests/huge_pages.c | 2 +-
.../gpu/drm/i915/selftests/i915_gem_coherency.c | 4 +-
drivers/gpu/drm/i915/selftests/i915_gem_context.c | 8 +-
drivers/gpu/drm/i915/selftests/i915_gem_gtt.c | 18 +-
drivers/gpu/drm/i915/selftests/i915_request.c | 6 +-
drivers/gpu/drm/i915/selftests/intel_hangcheck.c | 16 +-
drivers/gpu/drm/i915/selftests/intel_lrc.c | 2 +-
drivers/gpu/drm/i915/selftests/intel_workarounds.c | 2 +-
drivers/gpu/drm/i915/selftests/mock_gtt.c | 18 +-
include/drm/i915_pciids.h | 37 +-
100 files changed, 4453 insertions(+), 3087 deletions(-)
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org