[PULL] drm-intel-next

Daniel Vetter
2017-04-07T16:58:51Z

Hi Dave,

drm-intel-next-2017-04-03:
Last 4.12 feature pile:

GVT updates:
- Add mdev attribute group for per-vgpu info
- Time slice based vGPU scheduling QoS support (Gao Ping)
- Initial KBL support for E3 server (Han Xu)
- other misc.

i915:
- lots and lots of small fixes and improvements all over
- refactor fw_domain code (Chris Wilson)
- improve guc code (Oscar Mateo)
- refactor cursor/sprite code, precompute more for less overhead in
the critical path (Ville)
- refactor guc/huc fw loading code a bit (Michal Wajdeczko)

Note: There's was a small mixup in the script, which is fixed again, but
caused some fun with the tagging of this one here. drm-tip says there's
some conflicts with -rc because git is confused, we should have resolved
them all already.

Cheers, Daniel

The following changes since commit 8bcad07a45637fb88e799466e4eee83859e8ffd3:

drm/i915/gvt: fix error return check for copy_gma_to_hva() (2017-03-29 13:38:01 +1000)

are available in the git repository at:

git://anongit.freedesktop.org/git/drm-intel tags/drm-intel-testing-2017-04-03

for you to fetch changes up to ba515d3407dccfe3b4597f4afdaaf2ef1beb48e1:

drm/i915: Update DRIVER_DATE to 20170403 (2017-04-03 07:52:18 +0200)

----------------------------------------------------------------
Last 4.12 feature pile:

GVT updates:
- Add mdev attribute group for per-vgpu info
- Time slice based vGPU scheduling QoS support (Gao Ping)
- Initial KBL support for E3 server (Han Xu)
- other misc.

i915:
- lots and lots of small fixes and improvements all over
- refactor fw_domain code (Chris Wilson)
- improve guc code (Oscar Mateo)
- refactor cursor/sprite code, precompute more for less overhead in
the critical path (Ville)
- refactor guc/huc fw loading code a bit (Michal Wajdeczko)

----------------------------------------------------------------
Arnd Bergmann (1):
drm/i915: split out check for noncontiguous pfn range

Ben Widawsky (1):
drm/i915: Use LINEAR modifier instead of NONE

Chris Wilson (46):
drm/i915: Reset tasklet back to execlists after disabling guc
drm/i915: Skip force-wake for uncached mmio flush of GGTT writes
drm/i915: Protect intel_engine_wakeup() for call from irq context
drm/i915: intel_engine_init_global_seqno() requires atomic kmap
drm/i915/execlists: Split the atomic test_and_clear_bit for irq handler
drm/i915: Remove intel_ring.last_retired_head
drm/i915: Prefer to report ENOMEM rather than incur the oom for gfx allocations
drm/i915: Actually pass the reclaim gfp_t along to shmemfs!
drm/i915: Remove superfluous hw_flags from mi_set_context()
drm/i915: Restore marking context objects as dirty on pinning
drm/i915: Eliminate per-fw_domain i915 backpointer
drm/i915: Use correct fw_domains during initialisation
drm/i915: Use correct fw_domains during reset
drm/i915: Skip unused fw_domains
drm/i915: Remove posting-read for forcewake put
drm/i915: All fw_domains share the same set/clear/reset values
drm/i915: Drop uncore spinlock for reading debugfs forcewake counters
drm/i915: Wait for all fences before installing an exclusive clflush fence
drm/i915/execlists: Relax the locked clear_bit(IRQ_EXECLIST)
drm/i915/guc: Refactor the retrieval of guc_process_desc
drm/i915: Disable MI_SET_CONTEXT psmi w/a for bdw
drm/i915: Fix semaphore emission for BDW+ RCS ringbuffer emission
drm/i915/execlists: Trim irq handler
drm/i915: Check we have an wake device before flushing GTT writes
drm/i915: Limit number of reads to stabilize rc6 counter reads
drm/i915: Align "unfenced" tiled access on gen2, early gen3
drm/i915: Fixup intel_write_status_page() for old CPUs without clflush
drm/i915: Remove unused intel_flush_status_page()
drm/i915: Use BIT() for computing the engine's flag
drm/i915/execlists: Wrap tail pointer after reset tweaking
drm/i915: Assert that the request->tail fits within the ring
drm/i915: Refactor tests for validity of RING_TAIL
drm/i915: Mark manually wedged engines as guilty
drm/i915: Take rpm wakelock around debugfs/i915_gpu_info
drm/i915: Avoid lock dropping between rescheduling
Revert "drm/i915: Skip execlists_dequeue() early if the list is empty"
drm/i915: Ironlake do_idle_maps w/a may be called w/o struct_mutex
drm/i915: Use a dummy timeline name for a signaled fence
drm/i915: Drop verbose and archaic "ring" from our internal engine names
drm/i915: Do request retirement before marking engines as wedged
drm/i915: Suppress busy status for engines if wedged
drm/i915: Move retire-requests into i915_gem_wait_for_idle()
drm/i915: Wait for all engines to be idle as part of i915_gem_wait_for_idle()
drm/i915: Remove redudant wait for each engine to idle from seqno wrap
drm/i915: Combine reset_all_global_seqno() loops into one
drm/i915: Clear gt.active_requests before checking idle status

Daniel Vetter (5):
Merge remote-tracking branch 'airlied/drm-next' into drm-intel-next-queued
Merge remote-tracking branch 'airlied/drm-next' into drm-intel-next-queued
Merge remote-tracking branch 'airlied/drm-next' into drm-intel-next-queued
Merge tag 'gvt-next-2017-03-30' of https://github.com/01org/gvt-linux into drm-intel-next-queued
drm/i915: Update DRIVER_DATE to 20170403

Daniele Ceraolo Spurio (1):
drm/i915/guc: limit forcewake to blitter domain in guc_send

Imre Deak (1):
drm/i915: WARN if the core runtime PM get helpers fail

Jani Nikula (5):
drm/i915: update the firmware download URL
drm/i915/dp: reduce link M/N parameters
drm/i915/opregion: bail out early for systems with no opregion VBT
drm/i915/opregion: try to validate RVDA VBT only if it's there
drm/i915/opregion: debug log about invalid ACPI OpRegion VBT

Joonas Lahtinen (1):
drm/i915/guc: Sanitize GuC client initialization

Matthew Auld (2):
drm/i915/perf: destroy stream on sample_flags mismatch
drm/i915/perf: remove user triggerable warn

Michal Wajdeczko (8):
drm/i915/uc: Make intel_uc_prepare_fw() static
drm/i915: Move WARN_ON/MISSING_CASE macros to i915_utils.h
drm/i915/uc: Move intel_uc_fw_status_repr() to intel_uc.h
drm/i915/uc: Add intel_uc_fw_type_repr()
drm/i915/uc: Add intel_uc_fw_fini()
drm/i915/huc: Remove unused intel_huc_fini()
drm/i915/uc: Move fw path check to fetch_uc_fw()
drm/i915/uc: Drop use of MISSING_CASE on trivial enums

Oscar Mateo (12):
drm/i915/guc: Keep the ctx_pool_vaddr mapped, for easy access
drm/i915/guc: Add onion teardown to the GuC setup
drm/i915/guc: The Additional Data Struct (ADS) should get enabled together with GuC submission
drm/i915/guc: Break out the GuC log extras into their own "runtime" struct
drm/i915/guc: Make intel_guc_send a function pointer
drm/i915/guc: Improve the GuC documentation & comments about proxy submissions
drm/i915/guc: Wait for doorbell to be inactive before deallocating
drm/i915/guc: A little bit more of doorbell sanitization
drm/i915/guc: Refactor the concept "GuC context descriptor" into "GuC stage descriptor"
drm/i915/guc: Split out the mmio_white_list struct
drm/i915/guc: Move guc_interrupts_release next to guc_interrupts_capture
drm/i915/guc: Take enable_guc_loading check out of GEM core code

Pandiyan, Dhinakaran (2):
drm/i915/glk: Apply cdclk workaround for DP audio
drm/i915: Implement cdclk restrictions based on Azalia BCLK

Paulo Zanoni (3):
drm/i915: simplify intel_ddi_pll_select()
drm/i915: kill intel_ddi_pll_select()
drm/i915: make a few DDI functions static

Pei Zhang (1):
drm/i915/gvt: make dpcd_fix_data supports DP1.2

Ping Gao (7):
drm/i915/gvt: use hrtimer replace delayed_work in scheduler
drm/i915/gvt: add some statistic routine for scheduler
drm/i915/gvt: factor out the scheduler
drm/i915/gvt: define weight according to vGPU type
drm/i915/gvt: add basic function for weight control
drm/i915/gvt: create an idle vGPU
drm/i915/gvt: control the scheduler by timeslice usage

Shashank Sharma (2):
drm/i915: enable scrambling
drm/i915: allow HDMI 2.0 clock rates

Tamara Diaconita (1):
drivers: gpu: drm: i915L intel_lpe_audio: Fix kerneldoc comments

Tina Zhang (2):
drm/i915/gvt: remove workload from intel_shadow_wa_ctx structure
drm/i915/gvt: remove the redundant info NULL check

Tvrtko Ursulin (2):
drm/i915/guc: Correct the request_in tracepoint position
drm/i915: Spinlocks in tasklets can use spin_(un)lock_irq

Ville Syrjälä (14):
drm/i915: Extract intel_wm_plane_visible()
drm/i915: Fix SKL cursor watermarks
drm/i915: Extract skl_plane_ctl()
drm/i915: Use skl_plane_ctl() for the SKL "sprite" planes
drm/i915: Extract vlv_sprite_ctl()
drm/i915: Extract ivb_sprite_ctl()
drm/i915: Extract ilk_sprite_ctl()
drm/i915: Extract i845_cursor_ctl() and i9xx_cursor_ctl()
drm/i915: Extract i9xx_plane_ctl() and ironlake_plane_ctl()
drm/i915: Nuke ironlake_plane_ctl()
drm/i915: Pre-compute plane control register value
drm/i915: Introduce i9xx_check_plane_surface()
drm/i915: Eliminate ironlake_update_primary_plane()
drm/i915: Use i9xx_check_plane_surface() for sprite planes as well

Weinan Li (1):
drm/i915/gvt: emulate SKL_FUSE_STATUS and LCPLL_CTL for virtual monitor detection

Xu Han (5):
drm/i915/gvt: Add KBL platform definition.
drm/i915/gvt: Update MMIO handle policy to compatible KBL platform.
drm/i915/gvt: Update save/restore list to compatible KBL platform.
drm/i915/gvt: Add KBL dispatch logic in each function.
drm/i915/gvt: Turn on KBL platform support.

Zhenyu Wang (2):
drm/i915/gvt: Add mdev device attribute group
drm/i915/gvt: adjust mem size for low resolution type

drivers/gpu/drm/i915/gvt/cmd_parser.c | 42 +-
drivers/gpu/drm/i915/gvt/display.c | 22 +-
drivers/gpu/drm/i915/gvt/execlist.c | 9 +-
drivers/gpu/drm/i915/gvt/gtt.c | 3 +-
drivers/gpu/drm/i915/gvt/gvt.c | 19 +-
drivers/gpu/drm/i915/gvt/gvt.h | 13 +
drivers/gpu/drm/i915/gvt/handlers.c | 427 +++++------
drivers/gpu/drm/i915/gvt/interrupt.c | 5 +-
drivers/gpu/drm/i915/gvt/kvmgt.c | 45 +-
drivers/gpu/drm/i915/gvt/mmio.h | 19 +-
drivers/gpu/drm/i915/gvt/render.c | 23 +-
drivers/gpu/drm/i915/gvt/sched_policy.c | 229 ++++--
drivers/gpu/drm/i915/gvt/sched_policy.h | 2 +
drivers/gpu/drm/i915/gvt/scheduler.c | 3 +-
drivers/gpu/drm/i915/gvt/scheduler.h | 1 -
drivers/gpu/drm/i915/gvt/vgpu.c | 85 ++-
drivers/gpu/drm/i915/i915_debugfs.c | 50 +-
drivers/gpu/drm/i915/i915_drv.c | 10 +-
drivers/gpu/drm/i915/i915_drv.h | 98 ++-
drivers/gpu/drm/i915/i915_gem.c | 71 +-
drivers/gpu/drm/i915/i915_gem_clflush.c | 2 +-
drivers/gpu/drm/i915/i915_gem_context.c | 18 +-
drivers/gpu/drm/i915/i915_gem_evict.c | 2 -
drivers/gpu/drm/i915/i915_gem_execbuffer.c | 4 +-
drivers/gpu/drm/i915/i915_gem_gtt.c | 2 +-
drivers/gpu/drm/i915/i915_gem_request.c | 33 +-
drivers/gpu/drm/i915/i915_guc_submission.c | 828 ++++++++++++----------
drivers/gpu/drm/i915/i915_irq.c | 4 +-
drivers/gpu/drm/i915/i915_pci.c | 5 +
drivers/gpu/drm/i915/i915_perf.c | 11 +-
drivers/gpu/drm/i915/i915_reg.h | 7 +
drivers/gpu/drm/i915/i915_utils.h | 18 +
drivers/gpu/drm/i915/intel_breadcrumbs.c | 5 +-
drivers/gpu/drm/i915/intel_cdclk.c | 29 +-
drivers/gpu/drm/i915/intel_csr.c | 2 +-
drivers/gpu/drm/i915/intel_ddi.c | 100 +--
drivers/gpu/drm/i915/intel_display.c | 429 +++++------
drivers/gpu/drm/i915/intel_drv.h | 27 +-
drivers/gpu/drm/i915/intel_engine_cs.c | 33 +-
drivers/gpu/drm/i915/intel_guc_fwif.h | 71 +-
drivers/gpu/drm/i915/intel_guc_loader.c | 49 +-
drivers/gpu/drm/i915/intel_guc_log.c | 386 +++++-----
drivers/gpu/drm/i915/intel_gvt.c | 2 +
drivers/gpu/drm/i915/intel_hdmi.c | 65 ++
drivers/gpu/drm/i915/intel_huc.c | 18 -
drivers/gpu/drm/i915/intel_lpe_audio.c | 1 +
drivers/gpu/drm/i915/intel_lrc.c | 131 ++--
drivers/gpu/drm/i915/intel_opregion.c | 63 +-
drivers/gpu/drm/i915/intel_pm.c | 88 ++-
drivers/gpu/drm/i915/intel_ringbuffer.c | 31 +-
drivers/gpu/drm/i915/intel_ringbuffer.h | 65 +-
drivers/gpu/drm/i915/intel_runtime_pm.c | 12 +-
drivers/gpu/drm/i915/intel_sprite.c | 286 ++++----
drivers/gpu/drm/i915/intel_uc.c | 342 +++++----
drivers/gpu/drm/i915/intel_uc.h | 84 ++-
drivers/gpu/drm/i915/intel_uncore.c | 150 ++--
drivers/gpu/drm/i915/selftests/i915_gem_request.c | 6 +-
drivers/gpu/drm/i915/selftests/intel_hangcheck.c | 1 -
drivers/gpu/drm/i915/selftests/mock_engine.c | 1 -
drivers/gpu/drm/i915/selftests/scatterlist.c | 11 +-
60 files changed, 2601 insertions(+), 1997 deletions(-)

--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org