[Intel-gfx] [PULL] drm-intel-next

Daniel Vetter daniel.vetter at ffwll.ch
Mon Sep 19 09:17:41 UTC 2016


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


More information about the Intel-gfx mailing list