[PULL] drm-intel-next

Rodrigo Vivi
2017-12-18T19:50:47Z

Hi Dave,

I expect to have one more pile next week for rc6. But for now consider
already applying this one.

On this one here we had one backmerge for a reconciliation drm_print.h
between us and drm-misc-next. But that should be transparent to you.

On the GVT side it is worth to highlight that among other things
listed below we received a VFIO addition of a new ABI for mdev display
dma-buf operation, which have been reviewed by VFIO devs and acked by its
maintainer including "acked to push through gvt merge".

We also have x86/early-quirks changes coming from us, but acked by X86
Maintainers.

Here goes drm-intel-next-2017-12-14:

- Fix documentation build issues (Randy, Markus)
- Fix timestamp frequency calculation for perf on CNL (Lionel)
- New DMC firmware for Skylake (Anusha)
- GTT flush fixes and other GGTT write track and refactors (Chris)
- Taint kernel when GPU reset fails (Chris)
- Display workarounds organization (Lucas)
- GuC and HuC initialization clean-up and fixes (Michal)
- Other fixes around GuC submission (Michal)
- Execlist clean-ups like caching ELSP reg offset and improving log readability (Chri\
s)
- Many other improvements on our logs and dumps (Chris)
- Restore GT performance in headless mode with DMC loaded (Tvrtko)
- Stop updating legacy fb parameters since FBC is not using anymore (Daniel)
- More selftest improvements (Chris)
- Preemption fixes and improvements (Chris)
- x86/early-quirks improvements for Intel graphics stolen memory. (Joonas, Matthew)
- Other improvements on Stolen Memory code to be resource centric. (Matthew)
- Improvements and fixes on fence allocation/release (Chris).

GVT:

- fixes for two coverity scan errors (Colin)
- mmio switch code refine (Changbin)
- more virtual display dmabuf fixes (Tina/Gustavo)
- misc cleanups (Pei)
- VFIO mdev display dmabuf interface and gvt support (Tina)
- VFIO mdev opregion support/fixes (Tina/Xiong/Chris)
- workload scheduling optimization (Changbin)
- preemption fix and temporal workaround (Zhenyu)
- and misc fixes after refactor (Chris)

Thanks,
Rodrigo.

The following changes since commit 3f1f0b1c57dd617e9b0ded50efb8d6c011b85b20:

Merge tag 'drm-intel-next-2017-12-01' of git://anongit.freedesktop.org/drm/drm-intel into drm-next (2017-12-08 08:41:22 +1000)

are available in the git repository at:

git://anongit.freedesktop.org/drm/drm-intel tags/drm-intel-next-2017-12-14

for you to fetch changes up to ee5b5bf351ec8cd8f11c631cb76b30f602e866ee:

drm/i915: Update DRIVER_DATE to 20171214 (2017-12-14 12:10:02 -0800)

----------------------------------------------------------------
- Fix documentation build issues (Randy, Markus)
- Fix timestamp frequency calculation for perf on CNL (Lionel)
- New DMC firmware for Skylake (Anusha)
- GTT flush fixes and other GGTT write track and refactors (Chris)
- Taint kernel when GPU reset fails (Chris)
- Display workarounds organization (Lucas)
- GuC and HuC initialization clean-up and fixes (Michal)
- Other fixes around GuC submission (Michal)
- Execlist clean-ups like caching ELSP reg offset and improving log readability (Chri\
s)
- Many other improvements on our logs and dumps (Chris)
- Restore GT performance in headless mode with DMC loaded (Tvrtko)
- Stop updating legacy fb parameters since FBC is not using anymore (Daniel)
- More selftest improvements (Chris)
- Preemption fixes and improvements (Chris)
- x86/early-quirks improvements for Intel graphics stolen memory. (Joonas, Matthew)
- Other improvements on Stolen Memory code to be resource centric. (Matthew)
- Improvements and fixes on fence allocation/release (Chris).

GVT:

- fixes for two coverity scan errors (Colin)
- mmio switch code refine (Changbin)
- more virtual display dmabuf fixes (Tina/Gustavo)
- misc cleanups (Pei)
- VFIO mdev display dmabuf interface and gvt support (Tina)
- VFIO mdev opregion support/fixes (Tina/Xiong/Chris)
- workload scheduling optimization (Changbin)
- preemption fix and temporal workaround (Zhenyu)
- and misc fixes after refactor (Chris)

----------------------------------------------------------------
Anusha Srivatsa (1):
drm/i915/skl: DMC firmware for skylake v1.27

Changbin Du (6):
drm/i915/gvt: Convert macro queue_workload to a function
drm/i915/gvt: Kick scheduler when new workload queued
drm/i915/gvt: Refine the ring mmio list definition
drm/i915/gvt: Select appropriate mmio list at initialization time
drm/i915/gvt: Remove MMIO barrier in MMIO switch
drm/i915/gvt: Rename file render.{c, h} to mmio_context.{c, h}

Chris Wilson (31):
drm/i915/gvt: Cleanup unwanted public symbols
drm/i915/gvt: Fix out-of-bounds buffer write into opregion->signature[]
drm/i915: Flush pending GTT writes before unbinding
drm/i915: Taint (TAINT_WARN) the kernel if the GPU reset fails
drm/i915: Remove vma from object on destroy, not close
drm/i915: Track GGTT writes on the vma
drm/i915: Refactor common list iteration over GGTT vma
drm/i915/execlists: Cache ELSP register offset
drm/i915: Drop fb reference on load_detect_pipe failure path
drm/i915: Use snprintf to avoid line-break when pretty-printing engines
drm/i915: Make engine state pretty-printer header configurable
drm/i915: Include engine state on detecting a missed breadcrumb/seqno
drm/i915: Include the global reset count for intel_engine_dump()
drm/i915: Add is-wedged flag to intel_engine_dump()
drm/i915: Remove debugfs/i915_seqno_info
drm/i915: Stop showing seqno info from debugfs/i915_interrupt_info
agp/intel: Flush all chipset writes after updating the GGTT
drm/i915/selftests: Free mock_i915->drm.mode_config
drm/i915: Stop listening to request resubmission from the signaler kthread
drm/i915: Only report a wakeup if the waiter was truly asleep
drm/i915: Print an error message for a reset failure on gen2
drm/i915: Downgrade misleading "Memory usable" message
drm/i915: Bump timeout for wait_for_engines()
drm/i915: Dump the engine state before declaring wedged from wait_for_engines()
drm/i915/fence: Use rcu to defer freeing of irq_work
drm/i915: Don't check #active_requests from i915_gem_wait_for_idle()
drm/i915: Mark up potential allocation paths within i915_sw_fence as might_sleep
drm/i915: Allow fence allocations to fail
drm/i915: Ratelimit request allocation under oom
drm/i915: Unwind i915_gem_init() failure
drm/i915: Show engine state when hangcheck detects a stall

Colin Ian King (2):
drm/i915/gvt: Add missing breaks in switch statement
drm/i915/gvt: fix off-by-one comparison of ring_id

Daniel Vetter (1):
intel/atomic: Stop updating legacy fb parameters

Gustavo A. R. Silva (1):
drm/i915/gvt/fb_decoder: Fix out-of-bounds read

Joonas Lahtinen (1):
x86/early-quirks: Extend Intel graphics stolen memory placement to 64bit

Lionel Landwerlin (2):
drm/i915/cnl: only divide up base frequency with crystal source
drm/i915: make CS frequency read support missing more obvious

Lucas De Marchi (2):
drm/i915: follow single notation for workaround number
drm/i915: add platform tag to WA

Markus Heiser (1):
docs: fix, intel_guc_loader.c has been moved to intel_guc_fw.c

Matthew Auld (8):
x86/early-quirks: export the stolen region as a resource
x86/early-quirks: replace the magical increment start values
drm/i915: nuke the duplicated stolen discovery
drm/i915: make dsm struct resource centric
drm/i915: make reserved struct resource centric
drm/i915: make mappable struct resource centric
drm/i915: give stolen_usable_size a more suitable home
drm/i915: prefer resource_size_t for everything stolen

Michal Wajdeczko (7):
drm/i915/huc: Move firmware selection to init_early
drm/i915/guc: Move firmware selection to init_early
drm/i915/guc: Introduce USES_GUC_xxx helper macros
drm/i915/uc: Don't fetch GuC firmware if no plan to use GuC
drm/i915/uc: Don't use -EIO to report missing firmware
drm/i915/guc: Combine enable_guc_loading|submission modparams
drm/i915/huc: Load HuC only if requested

Michał Winiarski (7):
drm/i915/guc: Move shared data allocation away from submission path
drm/i915/guc: Move GuC workqueue allocations outside of the mutex
drm/i915/guc: Extract guc_init from guc_init_hw
drm/i915/guc: Call invalidate after changing the vfunc
drm/i915/guc: Extract doorbell creation from client allocation
drm/i915/guc: Extract clients allocation to submission_init
drm/i915/guc: Extract doorbell verification into a function

Pei Zhang (2):
drm/i915/gvt/kvmgt: fill info for ROM/VGA region
drm/i915/gvt: refine function emulate_mmio_read/write

Randy Dunlap (1):
documentation/gpu/i915: fix docs build error after file rename

Rodrigo Vivi (4):
Merge tag 'gvt-next-2017-12-05' of https://github.com/intel/gvt-linux into drm-intel-next-queued
Merge airlied/drm-next into drm-intel-next-queued
Merge tag 'gvt-next-2017-12-14' of https://github.com/intel/gvt-linux into drm-intel-next-queued
drm/i915: Update DRIVER_DATE to 20171214

Sebastian Andrzej Siewior (1):
drm/i915: properly init lockdep class

Tina Zhang (8):
drm/i915/gvt: Add opregion support
drm/i915/gvt: Add framebuffer decoder support
vfio: ABI for mdev display dma-buf operation
drm/i915/gvt: Dmabuf support for GVT-g
drm/i915/gvt: Handle orphan dmabuf_objs
drm/i915/gvt: Introduce KBL to dma-buf on Gvt-g
drm/i915/gvt: Free dmabuf_obj list in intel_vgpu_dmabuf_cleanup
drm/i915/gvt: Refine dmabuf_obj cleanup process

Tvrtko Ursulin (1):
drm/i915: Restore GT performance in headless mode with DMC loaded

Xiong Zhang (1):
drm/i915/gvt: Alloc and Init guest opregion at vgpu creation

Zhenyu Wang (2):
drm/i915/gvt: Don't mark vgpu context as inactive when preempted
drm/i915/gvt: set max priority for gvt context

Documentation/gpu/i915.rst | 5 +-
arch/x86/kernel/early-quirks.c | 86 ++--
drivers/char/agp/intel-gtt.c | 16 +-
drivers/gpu/drm/i915/gvt/Makefile | 3 +-
drivers/gpu/drm/i915/gvt/cfg_space.c | 3 +-
drivers/gpu/drm/i915/gvt/display.c | 2 +-
drivers/gpu/drm/i915/gvt/display.h | 2 +
drivers/gpu/drm/i915/gvt/dmabuf.c | 537 +++++++++++++++++++++
drivers/gpu/drm/i915/gvt/dmabuf.h | 67 +++
drivers/gpu/drm/i915/gvt/execlist.c | 8 +-
drivers/gpu/drm/i915/gvt/fb_decoder.c | 514 ++++++++++++++++++++
drivers/gpu/drm/i915/gvt/fb_decoder.h | 169 +++++++
drivers/gpu/drm/i915/gvt/gvt.c | 4 +
drivers/gpu/drm/i915/gvt/gvt.h | 23 +-
drivers/gpu/drm/i915/gvt/handlers.c | 6 +-
drivers/gpu/drm/i915/gvt/hypercall.h | 3 +
drivers/gpu/drm/i915/gvt/kvmgt.c | 167 ++++++-
drivers/gpu/drm/i915/gvt/mmio.c | 36 +-
.../gpu/drm/i915/gvt/{render.c => mmio_context.c} | 262 +++++-----
.../gpu/drm/i915/gvt/{render.h => mmio_context.h} | 9 +
drivers/gpu/drm/i915/gvt/mpt.h | 45 ++
drivers/gpu/drm/i915/gvt/opregion.c | 137 ++++--
drivers/gpu/drm/i915/gvt/sched_policy.c | 5 +
drivers/gpu/drm/i915/gvt/sched_policy.h | 2 +
drivers/gpu/drm/i915/gvt/scheduler.c | 21 +-
drivers/gpu/drm/i915/gvt/scheduler.h | 7 +-
drivers/gpu/drm/i915/gvt/vgpu.c | 17 +-
drivers/gpu/drm/i915/i915_debugfs.c | 48 +-
drivers/gpu/drm/i915/i915_drv.c | 29 +-
drivers/gpu/drm/i915/i915_drv.h | 53 +-
drivers/gpu/drm/i915/i915_gem.c | 200 +++++---
drivers/gpu/drm/i915/i915_gem_clflush.c | 2 +-
drivers/gpu/drm/i915/i915_gem_context.c | 6 +-
drivers/gpu/drm/i915/i915_gem_execbuffer.c | 2 +-
drivers/gpu/drm/i915/i915_gem_gtt.c | 106 ++--
drivers/gpu/drm/i915/i915_gem_gtt.h | 19 +-
drivers/gpu/drm/i915/i915_gem_object.h | 2 +
drivers/gpu/drm/i915/i915_gem_request.c | 39 +-
drivers/gpu/drm/i915/i915_gem_request.h | 2 +
drivers/gpu/drm/i915/i915_gem_stolen.c | 275 ++++-------
drivers/gpu/drm/i915/i915_gem_tiling.c | 10 +-
drivers/gpu/drm/i915/i915_gem_timeline.c | 5 +-
drivers/gpu/drm/i915/i915_gpu_error.c | 2 +-
drivers/gpu/drm/i915/i915_irq.c | 2 +-
drivers/gpu/drm/i915/i915_params.c | 11 +-
drivers/gpu/drm/i915/i915_params.h | 7 +-
drivers/gpu/drm/i915/i915_sw_fence.c | 6 +-
drivers/gpu/drm/i915/i915_vma.c | 34 +-
drivers/gpu/drm/i915/i915_vma.h | 35 +-
drivers/gpu/drm/i915/intel_breadcrumbs.c | 73 ++-
drivers/gpu/drm/i915/intel_csr.c | 4 +-
drivers/gpu/drm/i915/intel_device_info.c | 18 +-
drivers/gpu/drm/i915/intel_display.c | 39 +-
drivers/gpu/drm/i915/intel_engine_cs.c | 50 +-
drivers/gpu/drm/i915/intel_fbc.c | 13 +-
drivers/gpu/drm/i915/intel_fbdev.c | 3 +-
drivers/gpu/drm/i915/intel_guc.c | 111 ++++-
drivers/gpu/drm/i915/intel_guc.h | 4 +
drivers/gpu/drm/i915/intel_guc_fw.c | 63 +--
drivers/gpu/drm/i915/intel_guc_fw.h | 2 +-
drivers/gpu/drm/i915/intel_guc_log.c | 29 +-
drivers/gpu/drm/i915/intel_guc_submission.c | 300 +++---------
drivers/gpu/drm/i915/intel_guc_submission.h | 2 +
drivers/gpu/drm/i915/intel_gvt.c | 2 +-
drivers/gpu/drm/i915/intel_hangcheck.c | 7 +-
drivers/gpu/drm/i915/intel_hdmi.c | 2 +-
drivers/gpu/drm/i915/intel_huc.c | 81 ++--
drivers/gpu/drm/i915/intel_huc.h | 6 +-
drivers/gpu/drm/i915/intel_lrc.c | 13 +-
drivers/gpu/drm/i915/intel_overlay.c | 4 +-
drivers/gpu/drm/i915/intel_pm.c | 35 +-
drivers/gpu/drm/i915/intel_ringbuffer.h | 10 +-
drivers/gpu/drm/i915/intel_runtime_pm.c | 5 +
drivers/gpu/drm/i915/intel_uc.c | 249 +++++++---
drivers/gpu/drm/i915/intel_uc.h | 23 +
drivers/gpu/drm/i915/intel_uc_fw.c | 2 +-
drivers/gpu/drm/i915/intel_uc_fw.h | 5 +
drivers/gpu/drm/i915/selftests/i915_gem_gtt.c | 4 +-
drivers/gpu/drm/i915/selftests/intel_guc.c | 112 ++---
drivers/gpu/drm/i915/selftests/intel_hangcheck.c | 7 +-
drivers/gpu/drm/i915/selftests/mock_gem_device.c | 7 +-
drivers/gpu/drm/i915/selftests/mock_gtt.c | 4 +-
include/drm/i915_drm.h | 3 +
include/drm/intel-gtt.h | 3 +-
include/uapi/linux/vfio.h | 62 +++
85 files changed, 3102 insertions(+), 1306 deletions(-)
create mode 100644 drivers/gpu/drm/i915/gvt/dmabuf.c
create mode 100644 drivers/gpu/drm/i915/gvt/dmabuf.h
create mode 100644 drivers/gpu/drm/i915/gvt/fb_decoder.c
create mode 100644 drivers/gpu/drm/i915/gvt/fb_decoder.h
rename drivers/gpu/drm/i915/gvt/{render.c => mmio_context.c} (53%)
rename drivers/gpu/drm/i915/gvt/{render.h => mmio_context.h} (91%)
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org