[PULL] drm-intel-next

Daniel Vetter daniel.vetter at ffwll.ch
Wed Jun 1 08:28:04 UTC 2016


Hi Dave,

drm-intel-next-2016-05-22:
- cmd-parser support for direct reg->reg loads (Ken Graunke)
- better handle DP++ smart dongles (Ville)
- bxt guc fw loading support (Nick Hoathe)
- remove a bunch of struct typedefs from dpll code (Ander)
- tons of small work all over to avoid casting between drm_device and the i915
  dev struct (Tvrtko&Chris)
- untangle request retiring from other operations, also fixes reset stat corner
  cases (Chris)
- skl atomic watermark support from Matt Roper, yay!
- various wm handling bugfixes from Ville
- big pile of cdclck rework for bxt/skl (Ville)
- CABC (Content Adaptive Brigthness Control) for dsi panels (Jani&Deepak M)
- nonblocking atomic commits for plane-only updates (Maarten Lankhorst)
- bunch of PSR fixes&improvements
- untangle our map/pin/sg_iter code a bit (Dave Gordon)
drm-intel-next-2016-05-08:
- refactor stolen quirks to share code between early quirks and i915 (Joonas)
- refactor gem BO/vma funcstion (Tvrtko&Dave)
- backlight over DPCD support (Yetunde Abedisi)
- more dsi panel sequence support (Jani)
- lots of refactoring around handling iomaps, vma, ring access and related
  topics culmulating in removing the duplicated request tracking in the execlist
  code (Chris & Tvrtko) includes a small patch for core iomapping code
- hw state readout for bxt dsi (Ramalingam C)
- cdclk cleanups (Ville)
- dedupe chv pll code a bit (Ander)
- enable semaphores on gen8+ for legacy submission, to be able to have a direct
  comparison against execlist on the same platform (Chris) Not meant to be used
  for anything else but performance tuning
- lvds border bit hw state checker fix (Jani)
- rpm vs. shrinker/oom-notifier fixes (Praveen Paneri)
- l3 tuning (Imre)
- revert mst dp audio, it's totally non-functional and crash-y (Lyude)
- first official dmc for kbl (Rodrigo)
- and tons of small things all over as usual

I've cherry-picked the revert for the nonblocking stuff that landed right
before I tagged this over, just to avoid too much confusion.

This has a bunch of conflicts because git gets lots with us cherry-picking
patches from -next to 4.7. But since it's all cherry-picks you can just
pull in with "-X theirs" and it should all work out.

Besides that I want a baseline with 4.7, drm-misc and this for a few patch
series I also want to backmerge the entire pile into drm-intel-next again
this week because of these conflicts. Would be awesome if you can handle
all the -next pulls I've sent you on Thu, so that I can do the backmerge
on Fri before I do the next tag round.

btw Tomi missed 4.7 with his pull, so I'll ping him to get his omapdrm
pile out now too to make sure it hits 4.8.

Cheers, Daniel


The following changes since commit 99ee87295017e36abb6925e6139ca303cb55aee7:

  Merge tag 'topic/drm-misc-2016-05-13' of git://anongit.freedesktop.org/drm-intel into drm-next (2016-05-17 07:06:14 +1000)

are available in the git repository at:

  git://anongit.freedesktop.org/drm-intel drm-intel-next

for you to fetch changes up to e42aeef1237b7c969a77b7f726c50f6cb832185f:

  drm/i915: Revert async unpin and nonblocking atomic commit (2016-06-01 09:46:46 +0200)

----------------------------------------------------------------
Ander Conselvan de Oliveira (13):
      drm/i915: Set crtc_state->lane_count for HDMI
      drm/i915: Unduplicate CHV signal level code
      drm/i915: Unduplicate chv_data_lane_soft_reset()
      drm/i915: Unduplicate CHV phy-releated pre pll enabling code
      drm/i915: Unduplicate CHV pre-encoder enabling phy logic
      drm/i915: Unduplicate CHV encoders' post pll disable code
      drm/i915: Unduplicate VLV signal level code
      drm/i915: Unduplicate VLV phy pre pll enabling code
      drm/i915: Unduplicate pre encoder enabling phy code
      drm/i915: Move VLV HDMI lane reset work around logic to intel_dpio_phy.c
      drm/i915: Remove intel_clock_t typedef
      drm/i915: Remove intel_range_t and intel_p2_t typedefs
      drm/i915: Remove intel_limit_t typedef

Chris Wilson (50):
      drm/i915: Protect gen7 irq_seqno_barrier with uncore lock
      drm/i915: Propagate error from drm_gem_object_init()
      drm/i915/fbdev: Call intel_unpin_fb_obj() on release
      drm/i915/overlay: Replace i915_gem_obj_ggtt_offset() with the known flip_addr
      io-mapping: Specify mapping size for io_mapping_map_wc()
      drm/i915: Introduce i915_vm_to_ggtt()
      drm/i915: Move ioremap_wc tracking onto VMA
      drm/i915: Use i915_vma_pin_iomap on the ringbuffer object
      drm/i915: Mark the current context as lost on suspend
      drm/i915: L3 cache remapping is part of context switching
      drm/i915: Consolidate L3 remapping LRI
      drm/i915: Remove early l3-remap
      drm/i915: Rearrange switch_context to load the aliasing ppgtt on first use
      drm/i915: Unify intel_ring_begin()
      drm/i915: Remove the identical implementations of request space reservation
      drm/i915: Manually unwind after a failed request allocation
      drm/i915: Preallocate enough space for the average request
      drm/i915: Update execlists context descriptor format commentary
      drm/i915: Assign every HW context a unique ID
      drm/i915: Replace the pinned context address with its unique ID
      drm/i915: Refactor execlists default context pinning
      drm/i915: Move the magical deferred context allocation into the request
      drm/i915: Move releasing of the GEM request from free to retire/cancel
      drm/i915: Track the previous pinned context inside the request
      drm/i915: Unify GPU resets upon shutdown
      drm/i915: Bump reserved size for legacy gen8 semaphore emission
      drm/i915: Trim the flush for the legacy request emission
      drm/i915: Trim the flush for the execlists request emission
      drm/i915: Apply strongly ordered RCS breadcrumb to gen8/legacy
      drm/i915: Fix ordering of sanitize ppgtt and sanitize execlists
      drm/i915: Fix gen8 semaphores id for legacy mode
      drm/i915: Fix serialisation of pipecontrol write vs semaphore signal
      drm/i915: Reload PD tables after semaphore wait on gen8
      drm/i915: Enable semaphores for legacy submission on gen8
      drm/i915: Report command parser version 0 if disabled
      drm/i915: Unexport i915_ppgtt_init()
      drm/i915/execlists: Refactor common engine setup
      drm/i915: Store a i915 backpointer from engine, and use it
      x86: Silence 32bit compiler warning in intel_graphics_stolen()
      drm/i915: Use drm_i915_private as the native pointer for intel_uncore.c
      drm/i915: Convert intel_overlay.c to use native drm_i915_private pointers
      drm/i915: Move get-reset-stats ioctl from intel_uncore.c to i915_gem_context.c
      drm/i915: Complete pending resets before get-reset-stats ioctl
      drm/i915: Stop retiring requests from busy/wait ioctls
      drm/i915: Stop automatically retiring requests after a GPU hang
      drm/i915: Add distinct stubs for PM hibernation phases
      drm/i915: Update domain tracking for GEM objects on hibernation
      drm/i915: Lazily migrate the objects after hibernation
      drm/i915: Skip clearing the GGTT on full-ppgtt systems
      drm/i915/userptr: Convert to drm_i915_private

Daniel Vetter (12):
      drm/i915: Bail out of pipe config compute loop on LPT
      drm/i915: Update DRIVER_DATE to 20160508
      Revert "mfd: intel_soc_pmic_core: Terminate panel control GPIO lookup table correctly"
      Merge remote-tracking branch 'airlied/drm-next' into drm-intel-next-queued
      drm/i915: Simplify control flow in intel_atomic_check a bit.
      drm/i915/psr: Try to program link training times correctly
      drm/i915/psr: Make idle_frames sensible again
      drm/i915/psr: Order DP aux transactions correctly
      drm/i915/psr: Use ->get_aux_send_ctl functions
      drm/i915/psr: Implement PSR2 w/a for gen9
      drm/i915: Update DRIVER_DATE to 20160522
      drm/i915: Revert async unpin and nonblocking atomic commit

Dave Gordon (5):
      drm/i915: rename i915_gem_alloc_object() to i915_gem_object_create()
      drm/i915: refactor i915_gem_object_pin_map()
      drm/i915: optimise i915_gem_object_map() for small objects
      drm/i915: Introduce & use new lightweight SGL iterators
      drm/i915: Inline sg_next() for the optimised SGL iterator

Deepak M (3):
      drm/i915: Parsing the PWM cntrl and CABC ON/OFF fields in VBT
      drm/i915: Parse LFP brightness control field in VBT
      drm/i915/dsi: CABC support for Panel PWM backlight control

Imre Deak (7):
      drm/i915/bdw: Add missing delay during L3 SQC credit programming
      drm/i915: Clean up L3 SQC register field definitions
      drm/i915/chv: Tune L3 SQC credits based on actual latencies
      drm/i915/gen9: Avoid using negative array index in skl_update_plane()
      drm/i915: Add comments about fixed pipe->transcoder/PLL mapping
      drm/i915: Handle error return from dma_set_coherent_mask()
      drm/i915: Remove redundant const from function return type

Jani Nikula (6):
      drm/i915/dsi: don't pretend we support SC GPIOs
      drm/i915/dsi: add support for sequence block v3 gpio for VLV
      drm/i915/dsi: add support for gpio elements on CHV
      drm/i915/lvds: separate border enable readout from panel fitter
      drm/i915: don't mix bitwise and logical operations for has_snoop
      drm/i915/dsi: Add DCS control for Panel PWM

Joonas Lahtinen (2):
      drm/i915: Canonicalize stolen memory calculations
      drm/i915: Function per early graphics quirk

Kenneth Graunke (1):
      drm/i915: Allow MI_LOAD_REGISTER_REG between whitelisted registers.

Lyude (1):
      Revert "drm/i915: start adding dp mst audio"

Maarten Lankhorst (22):
      drm/i915: Dump pipe config when intel_modeset_pipe_config fails.
      drm/core: Add drm_accurate_vblank_count, v5.
      drm/i915: Remove stallcheck special handling, v3.
      drm/i915: Remove intel_finish_page_flip_plane.
      drm/i915: Remove intel_prepare_page_flip, v3.
      drm/i915: Add support for detecting vblanks when hw frame counter is unavailable.
      drm/i915: Unify unpin_work and mmio_work into flip_work, v2.
      Revert "drm/i915: Avoid stalling on pending flips for legacy cursor updates"
      drm/i915: Allow mmio updates on all platforms, v2.
      drm/i915: Convert flip_work to a list.
      drm/i915: Add the exclusive fence to plane_state.
      drm/i915: Rework intel_crtc_page_flip to be almost atomic, v3.
      drm/i915: Remove cs based page flip support.
      drm/i915: Remove use_mmio_flip kernel parameter.
      drm/i915: Remove queue_flip pointer.
      drm/i915: Remove reset_counter from intel_crtc.
      drm/i915: Pass atomic states to fbc update functions.
      drm/i915: Prepare connectors for nonblocking checks.
      drm/i915: Make unpin async.
      Reapply "drm/i915: Avoid stalling on pending flips for legacy cursor updates"
      drm/i915: Check for unpin correctness.
      drm/i915: Allow nonblocking update of pageflips.

Matt Roper (17):
      drm/i915: Reorganize WM structs/unions in CRTC state
      drm/i915: Rename s/skl_compute_pipe_wm/skl_build_pipe_wm/
      drm/i915/gen9: Cache plane data rates in CRTC state
      drm/i915/gen9: Allow calculation of data rate for in-flight state (v2)
      drm/i915/gen9: Store plane minimum blocks in CRTC wm state (v2)
      drm/i915: Track whether an atomic transaction changes the active CRTC's
      drm/i915/gen9: Allow skl_allocate_pipe_ddb() to operate on in-flight state (v3)
      drm/i915: Add distrust_bios_wm flag to dev_priv (v2)
      drm/i915/gen9: Compute DDB allocation at atomic check time (v4)
      drm/i915/gen9: Drop re-allocation of DDB at atomic commit (v2)
      drm/i915/gen9: Calculate plane WM's from state
      drm/i915/gen9: Allow watermark calculation on in-flight atomic state (v3)
      drm/i915/gen9: Use a bitmask to track dirty pipe watermarks
      drm/i915/gen9: Propagate watermark calculation failures up the call chain
      drm/i915/gen9: Calculate watermarks during atomic 'check' (v2)
      drm/i915/gen9: Reject display updates that exceed wm limitations (v2)
      drm/i915: Remove wm_config from dev_priv/intel_atomic_state

Matthew Auld (2):
      drm/i915: tidy up gen8_init_scratch
      drm/i915: remove i915_gem_object_ggtt_unbind

Nick Hoath (1):
      drm/i915/guc: Add Broxton GuC firmware loading support

Peter Antoine (1):
      drm/i915/bxt: reserve space for RC6 in the the GuC WOPCM

Praveen Paneri (2):
      drm/i915: Unbind objects in shrinker only if device is runtime active
      drm/i915: Add rpm get/put in oom and vmap notifier

Ramalingam C (2):
      drm/i915/BXT: Retrieving the horizontal timing for DSI
      drm/i915/bxt: Adjusting the error in horizontal timings retrieval

Rodrigo Vivi (1):
      drm/i915/kbl: Introduce the first official DMC for Kabylake.

Tim Gore (1):
      drm/i915:bxt: implement WaProgramL3SqcReg1DefaultForPerf

Tom O'Rourke (1):
      drm/i915/guc: Use major_minor version for filename

Tvrtko Ursulin (13):
      drm/i915: Remove i915_gem_obj_size
      drm/i915: Simplify i915_gem_obj_to_ggtt_view
      drm/i915: Simplify i915_gem_obj_ggtt_offset_view
      drm/i915: Simplify i915_gem_obj_ggtt_bound_view
      drm/i915: Store LRC hardware id in the request
      drm/i915: Stop tracking execlists retired requests
      drm/i915: Simplify intel_mark_busy/idle
      drm/i915: Small display interrupt handlers tidy
      drm/i915: Make IS_GENx macros work on a mask
      drm/i915: Promote IS_BROADWELL to a simple macro
      drm/i915: Replace "INTEL_INFO->gen == x" checks with IS_GENx
      drm/i915: Do not use a bitfield for INTEL_INFO->num_pipes
      drm/i915: Introduce IS_GEN macro

Ville Syrjälä (29):
      drm/i915: Unify VLV/CHV DPOunit clock gating disable/enable
      drm/i915: Update RAWCLK_FREQ register on VLV/CHV
      drm/i915: Update CDCLK_FREQ register on BDW after changing cdclk frequency
      drm/i915: Use cached cdclk value in i915_audio_component_get_cdclk_freq()
      drm/i915: Fix comments about GMBUSFREQ register
      mfd: intel_soc_pmic_core: Terminate panel control GPIO lookup table correctly
      drm: Add helper for DP++ adaptors
      drm/i915: Respect DP++ adaptor TMDS clock limit
      drm/i915: Enable/disable TMDS output buffers in DP++ adaptor as needed
      drm/i915: Determine DP++ type 1 DVI adaptor presence based on VBT
      drm/i915: Calculate IPS linetime watermark based on future cdclk
      drm/i915: Add a FIXME about crtc !active vs. watermarks
      drm/i915: Re-enable GGTT earlier during resume on pre-gen6 platforms
      drm/i915: s/DPPL/DPLL/ for SKL DPLLs
      drm/i915: Drop checks for max_pixclk failures in cdclk computation
      drm/i915: Extract broadwell_calc_cdclk()
      drm/i915: Untangle .fdi_link_train and cdclk vfunc setup
      drm/i915: Don't pass dev_priv to broxton_calc_cdclk()
      drm/i915: Use ilk_max_pixel_rate() for BXT cdclk calculation
      drm/i915: Use skl_cdclk_decimal() on bxt
      drm/i915: Remove 10% cdclk guardband on BXT
      drm/i915: Extract skl_dpll0_disable()
      drm/i915: Kill off dead code from skl_dpll0_enable()
      drm/i915: s/freq/cdclk/
      drm/i915: s/required_vco/vco/ in skl cdclk code
      drm/i915: Program BXT_CDCLK_CD2X_PIPE
      drm/i915: Eliminate the CDCLK_CTL RMW on BXT
      drm/i915: Don't leave old junk in ilk active watermarks on readout
      drm/i915: Ignore stale wm register values on resume on ilk-bdw (v2)

Yetunde Adebisi (3):
      drm/dp: Add definition for Display Control DPCD Registers capability size
      drm/i915: Read eDP Display control capability registers
      drm/i915: Add Backlight Control using DPCD for eDP connectors (v9)

 Documentation/DocBook/gpu.tmpl                 |    6 +
 arch/x86/kernel/early-quirks.c                 |  404 +++++----
 drivers/gpu/drm/Makefile                       |    2 +-
 drivers/gpu/drm/drm_dp_dual_mode_helper.c      |  366 ++++++++
 drivers/gpu/drm/drm_irq.c                      |   31 +
 drivers/gpu/drm/i915/Makefile                  |    3 +
 drivers/gpu/drm/i915/i915_cmd_parser.c         |   44 +-
 drivers/gpu/drm/i915/i915_debugfs.c            |   77 +-
 drivers/gpu/drm/i915/i915_dma.c                |  126 ++-
 drivers/gpu/drm/i915/i915_drv.c                |  106 ++-
 drivers/gpu/drm/i915/i915_drv.h                |  308 +++++--
 drivers/gpu/drm/i915/i915_gem.c                |  411 ++++-----
 drivers/gpu/drm/i915/i915_gem_batch_pool.c     |    6 +-
 drivers/gpu/drm/i915/i915_gem_context.c        |  291 ++++---
 drivers/gpu/drm/i915/i915_gem_evict.c          |    4 +-
 drivers/gpu/drm/i915/i915_gem_execbuffer.c     |   14 +-
 drivers/gpu/drm/i915/i915_gem_fence.c          |   14 +-
 drivers/gpu/drm/i915/i915_gem_gtt.c            |  247 +++---
 drivers/gpu/drm/i915/i915_gem_gtt.h            |   40 +-
 drivers/gpu/drm/i915/i915_gem_render_state.c   |   17 +-
 drivers/gpu/drm/i915/i915_gem_shrinker.c       |   48 +-
 drivers/gpu/drm/i915/i915_gem_stolen.c         |    6 +-
 drivers/gpu/drm/i915/i915_gem_tiling.c         |    4 +-
 drivers/gpu/drm/i915/i915_gem_userptr.c        |   12 +-
 drivers/gpu/drm/i915/i915_gpu_error.c          |   81 +-
 drivers/gpu/drm/i915/i915_guc_reg.h            |    6 +-
 drivers/gpu/drm/i915/i915_guc_submission.c     |    7 +-
 drivers/gpu/drm/i915/i915_irq.c                |  485 +++++------
 drivers/gpu/drm/i915/i915_params.c             |    4 +
 drivers/gpu/drm/i915/i915_params.h             |    1 +
 drivers/gpu/drm/i915/i915_reg.h                |   19 +-
 drivers/gpu/drm/i915/i915_sysfs.c              |    9 +-
 drivers/gpu/drm/i915/i915_trace.h              |   36 +-
 drivers/gpu/drm/i915/i915_vgpu.c               |    7 +-
 drivers/gpu/drm/i915/i915_vgpu.h               |    2 +-
 drivers/gpu/drm/i915/intel_audio.c             |   17 +-
 drivers/gpu/drm/i915/intel_bios.c              |   55 ++
 drivers/gpu/drm/i915/intel_bios.h              |   16 +-
 drivers/gpu/drm/i915/intel_crt.c               |    8 +-
 drivers/gpu/drm/i915/intel_csr.c               |   30 +-
 drivers/gpu/drm/i915/intel_ddi.c               |   42 +-
 drivers/gpu/drm/i915/intel_display.c           |  905 ++++++++++----------
 drivers/gpu/drm/i915/intel_dp.c                |  428 +---------
 drivers/gpu/drm/i915/intel_dp_aux_backlight.c  |  172 ++++
 drivers/gpu/drm/i915/intel_dp_mst.c            |   22 -
 drivers/gpu/drm/i915/intel_dpio_phy.c          |  470 +++++++++++
 drivers/gpu/drm/i915/intel_dpll_mgr.c          |    8 +-
 drivers/gpu/drm/i915/intel_drv.h               |  194 +++--
 drivers/gpu/drm/i915/intel_dsi.c               |  190 ++++-
 drivers/gpu/drm/i915/intel_dsi.h               |    4 +
 drivers/gpu/drm/i915/intel_dsi_dcs_backlight.c |  179 ++++
 drivers/gpu/drm/i915/intel_dsi_panel_vbt.c     |   77 +-
 drivers/gpu/drm/i915/intel_fbc.c               |    4 +-
 drivers/gpu/drm/i915/intel_fbdev.c             |   35 +-
 drivers/gpu/drm/i915/intel_guc_loader.c        |   26 +-
 drivers/gpu/drm/i915/intel_hdmi.c              |  456 +++-------
 drivers/gpu/drm/i915/intel_hotplug.c           |   13 +-
 drivers/gpu/drm/i915/intel_lrc.c               |  751 +++++++----------
 drivers/gpu/drm/i915/intel_lrc.h               |   11 +-
 drivers/gpu/drm/i915/intel_lvds.c              |    6 +-
 drivers/gpu/drm/i915/intel_mocs.c              |   14 +-
 drivers/gpu/drm/i915/intel_opregion.c          |    4 +-
 drivers/gpu/drm/i915/intel_overlay.c           |  147 ++--
 drivers/gpu/drm/i915/intel_panel.c             |    8 +
 drivers/gpu/drm/i915/intel_pm.c                | 1071 ++++++++++++++----------
 drivers/gpu/drm/i915/intel_psr.c               |  108 ++-
 drivers/gpu/drm/i915/intel_ringbuffer.c        |  651 +++++++-------
 drivers/gpu/drm/i915/intel_ringbuffer.h        |   43 +-
 drivers/gpu/drm/i915/intel_runtime_pm.c        |    5 +
 drivers/gpu/drm/i915/intel_sprite.c            |   27 +-
 drivers/gpu/drm/i915/intel_uncore.c            |  219 ++---
 drivers/gpu/drm/i915/intel_vbt_defs.h          |   18 +
 drivers/net/ethernet/mellanox/mlx4/pd.c        |    4 +-
 include/drm/drmP.h                             |    1 +
 include/drm/drm_dp_dual_mode_helper.h          |   92 ++
 include/drm/drm_dp_helper.h                    |    1 +
 include/drm/i915_drm.h                         |    3 +
 include/linux/io-mapping.h                     |   10 +-
 78 files changed, 5519 insertions(+), 4270 deletions(-)
 create mode 100644 drivers/gpu/drm/drm_dp_dual_mode_helper.c
 create mode 100644 drivers/gpu/drm/i915/intel_dp_aux_backlight.c
 create mode 100644 drivers/gpu/drm/i915/intel_dpio_phy.c
 create mode 100644 drivers/gpu/drm/i915/intel_dsi_dcs_backlight.c
 create mode 100644 include/drm/drm_dp_dual_mode_helper.h

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch


More information about the dri-devel mailing list