[PULL] drm-intel-next

Daniel Vetter
2016-09-19T09:17:41Z

Hi Dave,

drm-intel-next-2016-09-19:
- refactor the sseu code (Imre)
- refine guc dmesg output (Dave Gordon)
- more vgpu work
- more skl wm fixes (Lyude)
- refactor dpll code in prep for upfront link training (Jim Bride et al)
- consolidate all platform feature checks into intel_device_info (Carlos Santa)
- refactor elsp/execlist submission as prep for re-submission after hang
recovery and eventually scheduling (Chris Wilson)
- allow synchronous gpu reset handling, to remove tricky/impossible/fragile
error recovery code (Chris Wilson)
- prep work for nonblocking (execlist) submission, using fences to track
depencies and drive elsp submission (Chris Wilson)
- partial error recover/resubmission of non-guilty batches after hangs (Chris Wilson)
- full dma-buf implicit fencing support (Chris Wilson)
- dp link training fixes (Jim, Dhinkaran, Navare, ...)
- obey dp branch device pixel rate/bpc/clock limits (Mika Kahola), needed for
many vga dongles
- bunch of small cleanups and polish all over, as usual
drm-intel-next-2016-09-02:
- skl wm fixes (Lyude, Matt, Maarten)
- cleanup of kdev/drm_dev/i915_dev handling (David Weinehall)
- make (most) encoders take advantage of atomic states (Maarten)
- MMAP_GTT_VERSION driver param to announce that gtt mmaps are reliable (Chris)
- allow contexts on all rings (Chris)
- a few fixes (around diagnostic messages) to make BAT less noisy
- misc fixes and cleanups all over, as usual

Since you're on vacation I figured I'll just combine the pull from before
my vacations, and the final 4.9 feature pile I just assembled. With this
4.9 is now for Jani.

Tomeu just pinged me about the crc drm patches, and David made some noises
about cleanup patches he has pending, so I guess there'll be a few
stragglers for 4.9 for -misc still. But if Linus tags final 4.8 (against
excpectations) this w/e already I'll postpone them I think.

Cheers, Daniel

The following changes since commit d5d0804f8f6d0c89913f6a2de5348adef8ec33e4:

drm/i915: Update DRIVER_DATE to 20160822 (2016-08-22 08:35:48 +0200)

are available in the git repository at:

git://anongit.freedesktop.org/drm-intel tags/drm-intel-next-2016-09-19

for you to fetch changes up to 6e05f3d3b9298a56d6f1acb474a75cf14a17c31e:

drm/i915: Update DRIVER_DATE to 20160919 (2016-09-19 09:26:08 +0200)

----------------------------------------------------------------
- refactor the sseu code (Imre)
- refine guc dmesg output (Dave Gordon)
- more vgpu work
- more skl wm fixes (Lyude)
- refactor dpll code in prep for upfront link training (Jim Bride et al)
- consolidate all platform feature checks into intel_device_info (Carlos Santa)
- refactor elsp/execlist submission as prep for re-submission after hang
recovery and eventually scheduling (Chris Wilson)
- allow synchronous gpu reset handling, to remove tricky/impossible/fragile
error recovery code (Chris Wilson)
- prep work for nonblocking (execlist) submission, using fences to track
depencies and drive elsp submission (Chris Wilson)
- partial error recover/resubmission of non-guilty batches after hangs (Chris Wilson)
- full dma-buf implicit fencing support (Chris Wilson)
- dp link training fixes (Jim, Dhinkaran, Navare, ...)
- obey dp branch device pixel rate/bpc/clock limits (Mika Kahola), needed for
many vga dongles
- bunch of small cleanups and polish all over, as usual

----------------------------------------------------------------
Ander Conselvan de Oliveira (2):
drm/i915: Don't pass crtc_state to intel_dp_set_link_params()
drm/i915: Remove ddi_pll_sel from intel_crtc_state

Carlos Santa (22):
drm/i915: Move HAS_PSR definition to platform struct definition
drm/i915: Remove .is_mobile field from platform struct
drm/i915: Introduce GEN6_FEATURES for device info
drm/i915: Move HAS_RUNTIME_PM definition to platform
drm/i915: Remove runtime PM for SNB
drm/i915: Get rid of HAS_CORE_RING_FREQ
drm/i915 Move HAS_CSR definition to platform definition
drm/i915: Move HAS_RESOURCE_STREAMER definition to platform definition
drm/i915: Move HAS_RC6 definition to platform definition
drm/i915: Move HAS_RC6p definition to platform definition
drm/i915: Move HAS_DP_MST definition to platform definition
drm/i915: Introduce GEN5_FEATURES for device info
drm/i915: Move HAS_GMBUS_IRQ definition to platform definition
drm/i915: Introduce GEN4_FEATURES for device info
drm/i915: Introduce GEN3_FEATURES for device info
drm/i915: Introduce GEN2_FEATURES for device info
drm/i915: Move HAS_HW_CONTEXTS definition to platform
drm/i915: Move HAS_LOGICAL_RING_CONTEXTS definition to platform
drm/i915: Move HAS_L3_DPF definition to platform definition
drm/i915: Move HAS_GMCH_DISPLAY definition to platform
drm/i915: Make HWS_NEEDS_PHYSICAL the exception
drm/i915: Move HAS_GUC definition to platform definition

Chris Wilson (46):
drm/i915: Restore debugfs/i915_gem_gtt back to its former glory
drm/i915: Stop marking the unaccessible scratch page as UC
drm/i915: Embed the scratch page struct into each VM
drm/i915: Allow DMA pagetables to use highmem
drm/i915: Ignore stuck requests when considering hangs
drm/i915: Fix nesting of filelist_mutex vs struct_mutex in i915_ppgtt_info
drm/i915: Take forcewake once for the entire GMBUS transaction
io-mapping.h: s/PAGE_KERNEL_IO/PAGE_KERNEL/
drm/i915/dvo: Remove dangling call to drm_encoder_cleanup()
Revert "drm/i915/fbc: Allow on unfenced surfaces, for recent gen"
drm/i915: Suppress DRM_ERROR for D_COMP write on Haswell
drm/i915: Force RC6 restore after system resume and reset
drm/i915: Restore lost "Initialized i915" welcome message
drm/i915: Add I915_PARAM_MMAP_GTT_VERSION to advertise unlimited mmaps
drm/i915: Add GEN7_PCODE_MIN_FREQ_TABLE_GT_RATIO_OUT_OF_RANGE to SNB
drm/i915: Allow the user to pass a context to any ring
drm/i915: Tidy reporting busy status during i915_gem_retire_requests()
drm/i915: Make for_each_engine_masked() more compact and quicker
drm/i915: Drop mutex around clearing error state
drm/i915: debugfs/i915_gem_seqno_info does not need rpm nor struct_mutex
drm/i915: debugfs/i915_gem_interrupt_info does not need struct_mutex
drm/i915: Don't wait for a spinlock inside error capture
drm/i915: Remove 64b mmio write vfuncs
drm/i915: Add a sw fence for collecting up dma fences
drm/i915: Only queue requests during execlists submission
drm/i915: Record the position of the workarounds in the tail of the request
drm/i915: Compute the ELSP register location once
drm/i915: Reorder submitting the requests to ELSP
drm/i915: Simplify ELSP queue request tracking
drm/i915: Separate out reset flags from the reset counter
drm/i915: Drop local struct_mutex around intel_init_emon[ilk]
drm/i915: Expand bool interruptible to pass flags to i915_wait_request()
drm/i915: Mark up all locked waiters
drm/i915: Perform a direct reset of the GPU from the waiter
drm/i915: Replace wait-on-mutex with wait-on-bit in reset worker
drm/i915: Update reset path to fix incomplete requests
drm/i915: Drive request submission through fence callbacks
drm/i915: Reorder i915_add_request to separate the phases better
drm/i915: Prepare object synchronisation for asynchronicity
drm/i915/guc: Prepare for nonblocking execbuf submission
drm/i915: Ignore valid but unknown semaphores
drm/i915: Avoid incrementing hangcheck whilst waiting for external fence
drm/i915: Nonblocking request submission
drm/i915: Serialise execbuf operation after a dma-buf reservation object
drm/i915: Shrink objects prior to hibernation
drm/i915: Flush to GTT domain all GGTT bound objects after hibernation

Daniel Vetter (4):
drm/i915: Ensure consistent control flow __i915_gem_active_get_rcu
io-mapping: Fixup for different names of writecombine
drm/i915: Update DRIVER_DATE to 20160902
drm/i915: Update DRIVER_DATE to 20160919

Dave Gordon (7):
drm: extra printk() wrapper macros
drm/i915/guc: downgrade some DRM_ERROR() messages to DRM_WARN()
drm/i915/guc: revisit GuC loader message levels
drm/i915: Only expand COND once in wait_for()
drm/i915: clarify PMINTRMSK/pm_intr_keep usage
drm/i915/guc: general tidying up (loader)
drm/i915/guc: general tidying up (submission)

David Weinehall (8):
drm/i915: cosmetic fixes to i915_drv.h
drm/i915: consistent struct device naming
drm/i915: i915_sysfs.c cleanup
drm/i915: pdev cleanup
drm/i915: debugfs spring cleaning
drm/i915/debugfs: Add panel delays for eDP
drm/i915: Cleanup i915_param()
Revert "drm/i915: Check live status before reading edid"

Deepak M (1):
drm/i915: Add ddb size field to device info structure

Dhinakaran Pandiyan (2):
drm/i915/dp: Move max. vswing check to it's own function
drm/dp/i915: Make clock recovery in the link training compliant with DP Spec 1.2

Durgadoss R (1):
drm/i915: Split bxt_ddi_pll_select()

Imre Deak (7):
drm/i915: sseu: Move sseu_dev_status to i915_drv.h
drm/i915: sseu: Use sseu_dev_info in device info
drm/i915: sseu: Simplify debugfs status/info printing
drm/i915: sseu: Convert slice count field to mask
drm/i915: sseu: Convert subslice count fields to subslice mask
drm/i915: sseu: Add debug printf for slice/subslice masks
drm/i915/bdw: sseu: Fix sseu status parsing

Jani Nikula (5):
drm/i915: remove leftover for_each_intel_crtc_masked
drm/i915/backlight: handle enabled but zero duty cycle at module load
drm/i915: make intel_dp_compute_bpp static
drm/i915: do not use 'false' as a NULL pointer
drm/i915: use NULL for NULL pointers

Jim Bride (2):
drm/i915: Split skl_get_dpll()
drm/i915/dp: Add a standalone function to obtain shared dpll for HSW/BDW/SKL/BXT

Joonas Lahtinen (1):
drm/i915: Use atomic for dev_priv->mm.bsd_engine_dispatch_index

Lyude (7):
drm/i915/gen6+: Interpret mailbox error flags
drm/i915/skl: Add support for the SAGV, fix underrun hangs
drm/i915/skl: Ensure pipes with changed wms get added to the state
drm/i915/skl: Update plane watermarks atomically during plane updates
drm/i915: Move CRTC updating in atomic_commit into it's own hook
drm/i915/skl: Update DDB values atomically with wms/plane attrs
drm/i915/skl: Don't try to update plane watermarks if they haven't changed

Maarten Lankhorst (21):
drm/i915: Fix botched merge that downgrades CSR versions.
drm/i915: handle DP_MST correctly in bxt_get_dpll
drm/i915: Pass atomic state to crtc enable/disable functions
drm/i915: Remove unused mode_set hook from encoder
drm/i915: Walk over encoders in crtc enable/disable using atomic state.
drm/i915: Pass crtc_state and connector_state to encoder functions
drm/i915: Make encoder->compute_config take the connector state
drm/i915: Remove unused loop from intel_dp_mst_compute_config
drm/i915: Convert intel_crt to use atomic state
drm/i915: Convert intel_dvo to use atomic state
drm/i915: Convert intel_dsi to use atomic state
drm/i915: Convert intel_sdvo to use atomic state
drm/i915: Convert intel_lvds to use atomic state
drm/i915: Convert intel_dp_mst to use atomic state
drm/i915: Convert intel_dp to use atomic state
drm/i915: Use more atomic state in intel_color.c
drm/i915: Create a intel_encoder_find_connector helper function.
drm/i915: Cleanup crt disable sequence on hsw+
drm/i915: Add missing parameter to intel_dp_set_drrs_state documentation.
drm/i915: Fix intel_display_crc_init for !DEBUGFS
drm/i915: Fix other intel_dp warnings too.

Manasi Navare (2):
drm/i915: Split intel_ddi_pre_enable() into DP and HDMI versions
drm/i915: Split hsw_get_dpll()

Matt Roper (1):
drm/i915/gen9: Only copy WM results for changed pipes to skl_hw

Matthew Auld (2):
drm/i915: free intel_fb
drm/i915: remove writeq ifdeffery

Mika Kahola (12):
drm: Add missing DP downstream port types
drm: Drop VGA from bpc definitions
drm: Helper to read max clock rate
drm: Helper to read max bits per component
drm: Read DP branch device id
drm/i915: Cleanup DisplayPort AUX channel initialization
drm/i915: Read DP branch device HW revision
drm/i915: Read DP branch device SW revision
drm/i915: Check pixel rate for DP to VGA dongle
drm/i915: Update bits per component for display info
drm: Add DP branch device info on debugfs
drm: Fix DisplayPort branch device ID kernel-doc

Navare, Manasi D (2):
drm/i915: Make DP link training channel equalization DP 1.2 Spec compliant
drm/i915: Add support for Kabylake to function obtaining shared PLL

Pandiyan, Dhinakaran (3):
drm/i915/dp: Add debug messages to print DP link training pattern
drm/i915/dp: Dump DP link status when link training stages fail
drm/i915: Eliminate redundant local variable definition

Paulo Zanoni (1):
drm/i915: Call intel_fbc_pre_update() after pinning the new pageflip

Ping Gao (1):
drm/i915: enable vGPU detection for all

Rodrigo Vivi (1):
Revert "drm/i915/psr: Make idle_frames sensible again"

Ville Syrjälä (1):
drm/i915: Ignore OpRegion panel type except on select machines

Zhi Wang (1):
drm/i915: disable 48bit full PPGTT when vGPU is active

arch/x86/kernel/early-quirks.c | 9 +-
drivers/gpu/drm/drm_dp_helper.c | 173 +++++
drivers/gpu/drm/i915/Makefile | 1 +
drivers/gpu/drm/i915/i915_cmd_parser.c | 2 +-
drivers/gpu/drm/i915/i915_debugfs.c | 1015 ++++++++++++-------------
drivers/gpu/drm/i915/i915_drv.c | 300 ++++----
drivers/gpu/drm/i915/i915_drv.h | 227 +++---
drivers/gpu/drm/i915/i915_gem.c | 321 ++++----
drivers/gpu/drm/i915/i915_gem_context.c | 16 -
drivers/gpu/drm/i915/i915_gem_evict.c | 8 +-
drivers/gpu/drm/i915/i915_gem_execbuffer.c | 29 +-
drivers/gpu/drm/i915/i915_gem_gtt.c | 141 ++--
drivers/gpu/drm/i915/i915_gem_gtt.h | 6 +-
drivers/gpu/drm/i915/i915_gem_request.c | 229 +++++-
drivers/gpu/drm/i915/i915_gem_request.h | 76 +-
drivers/gpu/drm/i915/i915_gem_shrinker.c | 4 +-
drivers/gpu/drm/i915/i915_gem_stolen.c | 19 +-
drivers/gpu/drm/i915/i915_gem_userptr.c | 2 +-
drivers/gpu/drm/i915/i915_gpu_error.c | 36 +-
drivers/gpu/drm/i915/i915_guc_reg.h | 3 -
drivers/gpu/drm/i915/i915_guc_submission.c | 126 +--
drivers/gpu/drm/i915/i915_irq.c | 126 ++-
drivers/gpu/drm/i915/i915_pci.c | 290 +++----
drivers/gpu/drm/i915/i915_reg.h | 15 +-
drivers/gpu/drm/i915/i915_suspend.c | 6 +-
drivers/gpu/drm/i915/i915_sw_fence.c | 362 +++++++++
drivers/gpu/drm/i915/i915_sw_fence.h | 65 ++
drivers/gpu/drm/i915/i915_sysfs.c | 171 ++---
drivers/gpu/drm/i915/i915_vgpu.c | 3 -
drivers/gpu/drm/i915/intel_audio.c | 57 +-
drivers/gpu/drm/i915/intel_breadcrumbs.c | 3 +
drivers/gpu/drm/i915/intel_color.c | 24 +-
drivers/gpu/drm/i915/intel_crt.c | 48 +-
drivers/gpu/drm/i915/intel_csr.c | 8 +-
drivers/gpu/drm/i915/intel_ddi.c | 276 ++++---
drivers/gpu/drm/i915/intel_device_info.c | 140 ++--
drivers/gpu/drm/i915/intel_display.c | 617 ++++++++++-----
drivers/gpu/drm/i915/intel_dp.c | 294 ++++---
drivers/gpu/drm/i915/intel_dp_link_training.c | 139 ++--
drivers/gpu/drm/i915/intel_dp_mst.c | 97 +--
drivers/gpu/drm/i915/intel_dpll_mgr.c | 458 ++++++-----
drivers/gpu/drm/i915/intel_dpll_mgr.h | 15 +
drivers/gpu/drm/i915/intel_drv.h | 96 ++-
drivers/gpu/drm/i915/intel_dsi.c | 40 +-
drivers/gpu/drm/i915/intel_dvo.c | 28 +-
drivers/gpu/drm/i915/intel_engine_cs.c | 15 +-
drivers/gpu/drm/i915/intel_fbc.c | 6 +-
drivers/gpu/drm/i915/intel_fbdev.c | 3 +-
drivers/gpu/drm/i915/intel_guc.h | 4 +-
drivers/gpu/drm/i915/intel_guc_loader.c | 91 ++-
drivers/gpu/drm/i915/intel_hdmi.c | 118 +--
drivers/gpu/drm/i915/intel_i2c.c | 134 ++--
drivers/gpu/drm/i915/intel_lrc.c | 540 ++++++-------
drivers/gpu/drm/i915/intel_lrc.h | 5 +-
drivers/gpu/drm/i915/intel_lvds.c | 52 +-
drivers/gpu/drm/i915/intel_opregion.c | 27 +
drivers/gpu/drm/i915/intel_panel.c | 40 +-
drivers/gpu/drm/i915/intel_pm.c | 491 +++++++-----
drivers/gpu/drm/i915/intel_psr.c | 14 +-
drivers/gpu/drm/i915/intel_ringbuffer.c | 78 +-
drivers/gpu/drm/i915/intel_ringbuffer.h | 26 +-
drivers/gpu/drm/i915/intel_runtime_pm.c | 57 +-
drivers/gpu/drm/i915/intel_sdvo.c | 56 +-
drivers/gpu/drm/i915/intel_sprite.c | 14 +
drivers/gpu/drm/i915/intel_tv.c | 15 +-
drivers/gpu/drm/i915/intel_uncore.c | 18 +-
include/drm/drmP.h | 26 +-
include/drm/drm_dp_helper.h | 22 +-
include/drm/i915_pciids.h | 38 +-
include/linux/io-mapping.h | 10 +-
include/uapi/drm/i915_drm.h | 1 +
71 files changed, 4817 insertions(+), 3205 deletions(-)
create mode 100644 drivers/gpu/drm/i915/i915_sw_fence.c
create mode 100644 drivers/gpu/drm/i915/i915_sw_fence.h

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