mbox

[PULL] drm-intel-next

Message ID 20161129101603.bss7zl35rnmyhipa@phenom.ffwll.local
State New
Headers show

Pull-request

git://anongit.freedesktop.org/git/drm-intel tags/drm-intel-next-2016-11-21

Message

Daniel Vetter Nov. 29, 2016, 10:16 a.m. UTC
Hi Dave,

Final 4.10 updates:

- fine-tune fb flushing and tracking (Chris Wilson)
- refactor state check dumper code for more conciseness (Tvrtko)
- roll out dev_priv all over the place (Tvrkto)
- finally remove __i915__ magic macro (Tvrtko)
- more gvt bugfixes (Zhenyu&team)
- better opregion CADL handling (Jani)
- refactor/clean up wm programming (Maarten)
- gpu scheduler + priority boosting for flips as first user (Chris
  Wilson)
- make fbc use more atomic (Paulo)
- initial kvm-gvt framework, but not yet complete (Zhenyu&team)

As discussed on irc, there's most likely going to be a super-late gvt pull
request in the merge window because the kvm maintainer didn't want to do a
shared topic branch because reasons. Annoying, but since gvt overall is
new in 4.10, and more so kvm-gvt support the risk should be nil.

Cheers, Daniel


The following changes since commit b7c0e47d98249c2ddf21ea197b651093c6aaee00:

  Merge tag 'drm-vc4-next-2016-11-16' of https://github.com/anholt/linux into drm-next (2016-11-17 09:43:56 +1000)

are available in the git repository at:

  git://anongit.freedesktop.org/git/drm-intel tags/drm-intel-next-2016-11-21

for you to fetch changes up to e9cbc4bd0140e1d4e0172e2fe8fe07ba278e5980:

  drm/i915: Update DRIVER_DATE to 20161121 (2016-11-21 09:45:03 +0100)

----------------------------------------------------------------
Final 4.10 updates:

- fine-tune fb flushing and tracking (Chris Wilson)
- refactor state check dumper code for more conciseness (Tvrtko)
- roll out dev_priv all over the place (Tvrkto)
- finally remove __i915__ magic macro (Tvrtko)
- more gvt bugfixes (Zhenyu&team)
- better opregion CADL handling (Jani)
- refactor/clean up wm programming (Maarten)
- gpu scheduler + priority boosting for flips as first user (Chris
  Wilson)
- make fbc use more atomic (Paulo)
- initial kvm-gvt framework, but not yet complete (Zhenyu&team)

----------------------------------------------------------------
Arnd Bergmann (1):
      drm/i915: avoid harmless empty-body warning

Bing Niu (1):
      drm/i915/gvt: don't rely on guest PPGTT entry to free old shadow data

Chris Wilson (26):
      drm/i915: Remove chipset flush after cache flush
      drm/i915: Spin until breadcrumb threads are complete
      drm/i915: Only wait upon the execution timeline when unlocked
      drm/i915: Stop skipping the final clflush back to system pages
      drm/i915: Fix test on inputs for vma_compare()
      drm/i915: Give each sw_fence its own lockclass
      drm/i915: Create distinct lockclasses for execution vs user timelines
      drm/i915: Split request submit/execute phase into two
      drm/i915: Defer transfer onto execution timeline to actual hw submission
      drm/i915: Remove engine->execlist_lock
      drm/i915/scheduler: Signal the arrival of a new request
      drm/i915/scheduler: Record all dependencies upon request construction
      drm/i915/scheduler: Execute requests in order of priorities
      drm/i915: Store the execution priority on the context
      drm/i915/scheduler: Boost priorities for flips
      drm/i915: Add execution priority boosting for mmioflips
      drm/i915/execlists: Use a local lock for dfs_link access
      drm/i915: Demote i915_gem_open() debugging from DRIVER to USER
      drm/i915: Remove stolen object spam
      drm/i915: Add a few more sanity checks for stolen handling
      drm/i915: Move frontbuffer CS write tracking from ggtt vma to object
      drm/i915: Be more careful to drop the GT wakeref
      drm/i915: Check that each request phase is completed before retiring
      drm/i915: Don't touch NULL sg on i915_gem_object_get_pages_gtt() error
      drm/i915: Always flush the dirty CPU cache when pinning the scanout
      drm/i915: Skip final clflush if LLC is coherent

Daniel Vetter (6):
      Merge tag 'gvt-next-2016-11-07' of https://github.com/01org/gvt-linux into drm-intel-next-queued
      Merge tag 'for-kvmgt' of git://git.kernel.org/pub/scm/virt/kvm/kvm into drm-intel-next-queued
      Merge tag 'gvt-next-kvmgt-framework' of https://github.com/01org/gvt-linux into drm-intel-next-queued
      Merge remote-tracking branch 'airlied/drm-next' into drm-intel-next-queued
      Merge tag 'gvt-next-2016-11-17' of https://github.com/01org/gvt-linux into drm-intel-next-queued
      drm/i915: Update DRIVER_DATE to 20161121

Du, Changbin (3):
      drm/i915/gvt: emulate vgpu engine reset control behavior
      drm/i915/gvt: fix crash in vgpu_reset_execlist
      drm/i915/gvt: fix mem leakage in setup_vgpu_mmio for vgpu reset

Jani Nikula (4):
      drm/i915: rename preliminary_hw_support to alpha_support
      drm/i915/gvt: drop checks for early Skylake revisions
      drm/i915: make i915 the source of acpi device ids for _DOD
      drm/i915/opregion: fill in the CADL from connector list, not DIDL

Jike Song (7):
      kvm/page_track: call notifiers with kvm_page_track_notifier_node
      kvm/page_track: export symbols for external usage
      drm/i915/gvt: remove obsolete code for old kvmgt opregion
      drm/i915/gvt: introduce host_init/host_exit to MPT
      drm/i915/gvt: allow several MPT methods to be NULL
      drm/i915/gvt: refactor intel_gvt_io_emulation_ops to be intel_gvt_ops
      drm/i915/gvt: add KVMGT support

Joonas Lahtinen (3):
      drm/i915: Remove two sloppy inline functions from .h
      drm/i915: Split out i915_vma.c
      drm/i915: Update i915_driver_load kerneldoc

Maarten Lankhorst (10):
      drm/i915: Convert intel_hdmi to use atomic state
      drm/i915: Pass atomic state to intel_audio_codec_enable, v2.
      drm/edid: Remove drm_select_eld
      drm/i915: Update atomic modeset state synchronously, v2.
      drm/i915: Pass atomic state to verify_connector_state
      drm/i915: Add an atomic evasion step to watermark programming, v4.
      drm/i915/gen9+: Program watermarks as a separate step during evasion, v3.
      drm/i915/gen9+: Preserve old allocation from crtc_state.
      drm/i915/gen9+: Kill off hw_ddb from intel_crtc.
      drm/i915: Enable support for nonblocking modeset

Matthew Auld (3):
      drm/i915: add i915_address_space_fini
      drm/i915: don't leak global_timeline
      drm/i915: i915_pages_create_for_stolen should return err ptr

Min He (1):
      drm/i915: fix the dequeue logic for single_port_submission context

Paulo Zanoni (7):
      drm/i915/gen9: fix the WM memory bandwidth WA for Y tiling cases
      drm/i915/fbc: move the intel_fbc_can_choose() call out of the loop
      drm/i915/fbc: replace a loop with drm_atomic_get_existing_crtc_state()
      drm/i915/fbc: extract intel_fbc_can_enable()
      drm/i915/fbc: inline intel_fbc_can_choose()
      drm/i915/fbc: use drm_atomic_get_existing_crtc_state when appropriate
      drm/i915/fbc: convert intel_fbc.c to use INTEL_GEN()

Pei Zhang (2):
      drm/i915/gvt: fix deadlock in workload_thread
      drm/i915/gvt: check workload empty before real scan

Ping Gao (7):
      drm/i915/gvt: remove unused variable 'execlist'
      drm/i915/gvt: add write vreg in MMIO DMA_CTRL handler
      drm/i915/gvt: correct the emulation in TLB control handler
      drm/i915/gvt: update misc ctl regs base on stepping info
      drm/i915/gvt: implement scratch page table tree for shadow PPGTT
      drm/i915/gvt: emulate right behavior for tlb_control
      drm/i915/gvt: add more MMIO regs with command access flag

Praveen Paneri (1):
      drm/i915/bxt: Broxton decoupled MMIO

Tvrtko Ursulin (32):
      drm/i915: Trim the object sg table
      drm/i915: Assorted dev_priv cleanups
      drm/i915: More assorted dev_priv cleanups
      drm/i915: Further assorted dev_priv cleanups
      drm/i915: Pass dev_priv to INTEL_INFO everywhere apart from the gen use
      drm/i915: Convert i915_drv.c to INTEL_GEN
      drm/i915: Fix gen9 forcewake range table
      drm/i915: dev_priv and a small cascade of cleanups in i915_gem.c
      drm/i915: Use dev_priv in INTEL_INFO in i915_gem_execbuffer.c
      drm/i915: Use dev_priv in INTEL_INFO in i915_gem_fence_reg.c
      drm/i915: dev_priv cleanup in i915_gem_gtt.c
      drm/i915: dev_priv cleanup in i915_gem_stolen.c
      drm/i915: dev_priv cleanup in i915_gem_tiling.c
      drm/i915: dev_priv cleanup in i915_gpu_error.c
      drm/i915: dev_priv cleanup in i915_irq.c
      drm/i915: dev_priv cleanup in i915_suspend.c
      drm/i915: Assorted INTEL_INFO(dev) cleanups
      drm/i915: dev_priv cleanup in intel_dp.c
      drm/i915: dev_priv cleanup in intel_pm.c
      drm/i915: dev_priv cleanup in intel_display.c
      drm/i915: Fix for_each_pipe argument in vlv_display_power_well_init
      drm/i915: Remove __I915__ magic macro
      drm/i915: Make scaler updates less chatty
      drm/i915: Extract intel_link_m_n config printing into a helper
      drm/i915: Dump FDI config only where applicable
      drm/i915: Don't log pipe config kernel pointer and duplicated pipe name
      drm/i915: Compact a few pipe config debug lines
      drm/i915: Only dump scaler config where supported
      drm/i915: Only dump possible panel fitter config for the platform
      drm/i915: Introduce enableddisabled helper
      drm/i915: Waterproof verification of gen9 forcewake table ranges
      drm/i915: Only dump dp_m2_n2 configuration when drrs is used

Ville Syrjälä (10):
      drm/i915: Grab the rotation from the passed plane state for VLV sprites
      drm/i915: Fix error handling for cursor/sprite plane create failure
      drm/i915: Use intel_fb_gtt_offset() also for gen2/3 primary plane
      drm/i915: Assume non-DP++ port if dvo_port is HDMI and there's no AUX ch specified in the VBT
      drm/i915: Use & instead if == to check for rotations
      drm/i915: Clean up rotation DSPCNTR/DVSCNTR/etc. setup
      drm/i915: Add horizontal mirroring support for CHV pipe B planes
      drm/i915: Kill dp_encoder_is_mst
      drm/i915: Simplify DP port limited color range bit platform checks
      drm/i915: Remove some duplicated plane swapping logic

Xiaoguang Chen (3):
      KVM: x86: add track_flush_slot page track notifier
      drm/i915/gvt: use kmap instead of kmap_atomic around guest memory access
      drm/i915/gvt: clear guest opregion

Zhenyu Wang (5):
      drm/i915/gvt: Fix shift for cmd data size
      drm/i915/gvt: Fix workload status after wait
      drm/i915/gvt: add intel vgpu types support
      drm/i915/gvt: Fix static checker warning on intel_gvt_i2c_handle_aux_ch_write()
      drm/i915/gvt: remove unresolved vfio pin/unpin pages interface dependency

 arch/x86/include/asm/kvm_page_track.h              |  14 +-
 arch/x86/kvm/mmu.c                                 |  11 +-
 arch/x86/kvm/page_track.c                          |  31 +-
 arch/x86/kvm/x86.c                                 |   2 +-
 drivers/gpu/drm/drm_edid.c                         |  26 -
 drivers/gpu/drm/i915/Kconfig                       |  26 +-
 drivers/gpu/drm/i915/Makefile                      |   3 +-
 drivers/gpu/drm/i915/gvt/Makefile                  |   7 +-
 drivers/gpu/drm/i915/gvt/cfg_space.c               |  12 +-
 drivers/gpu/drm/i915/gvt/cmd_parser.c              |   7 +-
 drivers/gpu/drm/i915/gvt/edid.c                    |   3 +-
 drivers/gpu/drm/i915/gvt/edid.h                    |   2 +-
 drivers/gpu/drm/i915/gvt/execlist.c                |  24 +-
 drivers/gpu/drm/i915/gvt/execlist.h                |   2 +-
 drivers/gpu/drm/i915/gvt/gtt.c                     | 202 ++++---
 drivers/gpu/drm/i915/gvt/gtt.h                     |  40 +-
 drivers/gpu/drm/i915/gvt/gvt.c                     |  29 +-
 drivers/gpu/drm/i915/gvt/gvt.h                     |  63 +-
 drivers/gpu/drm/i915/gvt/handlers.c                |  73 ++-
 drivers/gpu/drm/i915/gvt/hypercall.h               |  14 +-
 drivers/gpu/drm/i915/gvt/kvmgt.c                   | 597 +++++++++++++++++++
 drivers/gpu/drm/i915/gvt/mmio.c                    |   6 +-
 drivers/gpu/drm/i915/gvt/mmio.h                    |   9 +-
 drivers/gpu/drm/i915/gvt/mpt.h                     |  55 +-
 drivers/gpu/drm/i915/gvt/opregion.c                |  34 +-
 drivers/gpu/drm/i915/gvt/render.c                  |   2 +
 drivers/gpu/drm/i915/gvt/sched_policy.c            |   2 -
 drivers/gpu/drm/i915/gvt/scheduler.c               |  51 +-
 drivers/gpu/drm/i915/gvt/vgpu.c                    | 180 +++++-
 drivers/gpu/drm/i915/i915_debugfs.c                |  18 +-
 drivers/gpu/drm/i915/i915_drv.c                    |  32 +-
 drivers/gpu/drm/i915/i915_drv.h                    | 543 ++++--------------
 drivers/gpu/drm/i915/i915_gem.c                    | 608 ++++++--------------
 drivers/gpu/drm/i915/i915_gem.h                    |   2 +-
 drivers/gpu/drm/i915/i915_gem_context.c            |   1 +
 drivers/gpu/drm/i915/i915_gem_execbuffer.c         |  13 +-
 .../{i915_gem_fence.c => i915_gem_fence_reg.c}     |  12 +-
 drivers/gpu/drm/i915/i915_gem_fence_reg.h          |  51 ++
 drivers/gpu/drm/i915/i915_gem_gtt.c                | 579 +++++--------------
 drivers/gpu/drm/i915/i915_gem_gtt.h                | 235 +-------
 drivers/gpu/drm/i915/i915_gem_object.h             | 338 +++++++++++
 drivers/gpu/drm/i915/i915_gem_request.c            | 206 +++++--
 drivers/gpu/drm/i915/i915_gem_request.h            |  74 ++-
 drivers/gpu/drm/i915/i915_gem_stolen.c             |  39 +-
 drivers/gpu/drm/i915/i915_gem_tiling.c             |  12 +-
 drivers/gpu/drm/i915/i915_gem_timeline.c           |  33 +-
 drivers/gpu/drm/i915/i915_gem_timeline.h           |   1 +
 drivers/gpu/drm/i915/i915_gem_userptr.c            |   3 +-
 drivers/gpu/drm/i915/i915_gpu_error.c              |  39 +-
 drivers/gpu/drm/i915/i915_guc_submission.c         |  15 +-
 drivers/gpu/drm/i915/i915_irq.c                    |  32 +-
 drivers/gpu/drm/i915/i915_params.c                 |   9 +-
 drivers/gpu/drm/i915/i915_params.h                 |   2 +-
 drivers/gpu/drm/i915/i915_pci.c                    |   8 +-
 drivers/gpu/drm/i915/i915_reg.h                    |   7 +
 drivers/gpu/drm/i915/i915_suspend.c                |  24 +-
 drivers/gpu/drm/i915/i915_sw_fence.c               |   7 +-
 drivers/gpu/drm/i915/i915_sw_fence.h               |  17 +-
 drivers/gpu/drm/i915/i915_vma.c                    | 638 +++++++++++++++++++++
 drivers/gpu/drm/i915/i915_vma.h                    | 341 +++++++++++
 drivers/gpu/drm/i915/intel_atomic_plane.c          |   9 +
 drivers/gpu/drm/i915/intel_audio.c                 |  17 +-
 drivers/gpu/drm/i915/intel_bios.c                  |  30 +-
 drivers/gpu/drm/i915/intel_breadcrumbs.c           |  31 +-
 drivers/gpu/drm/i915/intel_color.c                 |  36 +-
 drivers/gpu/drm/i915/intel_crt.c                   |  23 +-
 drivers/gpu/drm/i915/intel_ddi.c                   |  12 +-
 drivers/gpu/drm/i915/intel_display.c               | 598 ++++++++++---------
 drivers/gpu/drm/i915/intel_dp.c                    |  52 +-
 drivers/gpu/drm/i915/intel_dp_mst.c                |   1 -
 drivers/gpu/drm/i915/intel_dpll_mgr.c              |   5 +-
 drivers/gpu/drm/i915/intel_drv.h                   |  28 +-
 drivers/gpu/drm/i915/intel_dsi_panel_vbt.c         |   8 +-
 drivers/gpu/drm/i915/intel_engine_cs.c             |   7 +-
 drivers/gpu/drm/i915/intel_fbc.c                   |  83 ++-
 drivers/gpu/drm/i915/intel_fbdev.c                 |  10 +-
 drivers/gpu/drm/i915/intel_frontbuffer.h           |   5 +-
 drivers/gpu/drm/i915/intel_guc_loader.c            |  10 +-
 drivers/gpu/drm/i915/intel_hdmi.c                  |  50 +-
 drivers/gpu/drm/i915/intel_hotplug.c               |   2 +-
 drivers/gpu/drm/i915/intel_lrc.c                   | 187 +++++-
 drivers/gpu/drm/i915/intel_lvds.c                  |   7 +-
 drivers/gpu/drm/i915/intel_opregion.c              | 139 ++---
 drivers/gpu/drm/i915/intel_panel.c                 |  12 +-
 drivers/gpu/drm/i915/intel_pm.c                    | 170 +++---
 drivers/gpu/drm/i915/intel_psr.c                   |   6 +-
 drivers/gpu/drm/i915/intel_ringbuffer.c            |   2 +
 drivers/gpu/drm/i915/intel_ringbuffer.h            |  16 +-
 drivers/gpu/drm/i915/intel_runtime_pm.c            |   4 +-
 drivers/gpu/drm/i915/intel_sdvo.c                  |  11 +-
 drivers/gpu/drm/i915/intel_sprite.c                |  59 +-
 drivers/gpu/drm/i915/intel_tv.c                    |   5 +-
 drivers/gpu/drm/i915/intel_uncore.c                | 121 +++-
 drivers/gpu/drm/i915/intel_vbt_defs.h              |   3 +-
 include/drm/drm_edid.h                             |   1 -
 include/uapi/drm/i915_drm.h                        |   5 +
 96 files changed, 4442 insertions(+), 2789 deletions(-)
 create mode 100644 drivers/gpu/drm/i915/gvt/kvmgt.c
 rename drivers/gpu/drm/i915/{i915_gem_fence.c => i915_gem_fence_reg.c} (98%)
 create mode 100644 drivers/gpu/drm/i915/i915_gem_fence_reg.h
 create mode 100644 drivers/gpu/drm/i915/i915_gem_object.h
 create mode 100644 drivers/gpu/drm/i915/i915_vma.c
 create mode 100644 drivers/gpu/drm/i915/i915_vma.h