[PULL] drm-intel-next

Daniel Vetter daniel.vetter at ffwll.ch
Fri Feb 14 05:30:35 PST 2014


Hi Dave,

First pull request for 3.15! One week later than usual since our QA was
celbrating Chines New Year ;-)

drm-intel-next-2014-02-07:
- Yet more steps towards atomic modeset from Ville.
- DP panel power sequencing improvements from Paulo.
- irq code cleanups from Ville.
- 5.4 GHz dp lane clock support for bdw/hsw from Todd.
- Clock readout support for hsw/bdw (aka fastboot) from Jesse.
- Make pipe underruns report at ERROR level (Ville). This is to check our
  improved watermarks code.
- Full ppgtt support from Ben for gen7.
- More fbc fixes and improvements from Ville all over the place, unfortunately
  not yet enabled by default on more platforms.
- w/a cleanups from Ville.
- HiZ stall optimization settings (Chia-I Wu).
- Display register mmio offset refactor patch from Antti.
- RPS improvements for corner-cases from Jeff McGee.

And a few notes:
- 2 weeks of vacation for me, so this is a "send pull request and
  disappear" thing ;-)
- Full ppgtt has some rather gross regressions still, especially in some
  corner-cases where we recourse into our code (e.g. when waiting for ring
  space or low mem) and then get a bit surprised. The (imo likely)
  contingency plan for 3.15 is to disable it. Note that the old code is
  still being tested in -nightly with the full QA suite on snb (since the
  tlbs are busted there, so no full ppgtt support). There's 1-2 issues
  still even in that mode due to the topic/ppgtt merge, but nothing truly
  dramatic.
- I have a big pile of drm doc patches that I wanted to polish a bit more
  and flush out before vacation. I guess that'll happen in 2 weeks ...

Cheers, Daniel


The following changes since commit ef64cf9d06049e4e9df661f3be60b217e476bee1:

  Merge branch 'drm-nouveau-next' of git://anongit.freedesktop.org/git/nouveau/linux-2.6 into drm-next (2014-01-30 10:46:06 +1000)

are available in the git repository at:


  ssh://git.freedesktop.org/git/drm-intel tags/drm-intel-next-2014-02-07

for you to fetch changes up to b8a5ff8d7c676a04e0da5ec16bb068dd39459042:

  drm/i915: Update rps interrupt limits (2014-02-07 10:26:17 +0100)

----------------------------------------------------------------
- Yet more steps towards atomic modeset from Ville.
- DP panel power sequencing improvements from Paulo.
- irq code cleanups from Ville.
- 5.4 GHz dp lane clock support for bdw/hsw from Todd.
- Clock readout support for hsw/bdw (aka fastboot) from Jesse.
- Make pipe underruns report at ERROR level (Ville). This is to check our
  improved watermarks code.
- Full ppgtt support from Ben for gen7.
- More fbc fixes and improvements from Ville all over the place, unfortunately
  not yet enabled by default on more platforms.
- w/a cleanups from Ville.
- HiZ stall optimization settings (Chia-I Wu).
- Display register mmio offset refactor patch from Antti.
- RPS improvements for corner-cases from Jeff McGee.

----------------------------------------------------------------
Antti Koskipaa (1):
      drm/i915: Reorganize display pipe register accesses

Ben Widawsky (54):
      drm/i915: Provide PDP updates via MMIO
      drm/i915: Don't unconditionally try to deref aliasing ppgtt
      drm/i915: Allow ggtt lookups to not WARN
      drm/i915: Takedown drm_mm on failed gtt setup
      drm/i915: Handle inactivating objects for all VMAs
      drm/i915: Add vm to error BO capture
      drm/i915: Don't use gtt mapping for !gtt error objects
      drm/i915: Identify active VM for batchbuffer capture
      drm/i915: Make pin count per VMA
      drm/i915: Create bind/unbind abstraction for VMAs
      drm/i915: Remove vm arg from relocate entry
      drm/i915: Add a context open function
      drm/i915: relax context alignment
      drm/i915: Simplify ring handling in execbuf
      drm/i915: Permit contexts on all rings
      drm/i915: Track which ring a context ran on
      drm/i915: Better reset handling for contexts
      drm/i915: Split context enabling from init
      drm/i915: Generalize default context setup
      drm/i915: PPGTT vfuncs should take a ppgtt argument
      drm/i915: Use drm_mm for PPGTT PDEs
      drm/i915: One hopeful eviction on PPGTT alloc
      drm/i915: Use platform specific ppgtt enable
      drm/i915: Extract mm switching to function
      drm/i915: Use LRI for switching PP_DIR_BASE
      drm/i915: Flush TLBs after !RCS PP_DIR_BASE
      drm/i915: Generalize PPGTT init
      drm/i915: Reorganize intel_enable_ppgtt
      drm/i915: Add VM to context
      drm/i915: Write PDEs at init instead of enable
      drm/i915: Restore PDEs for all VMs
      drm/i915: Do aliasing PPGTT init with contexts
      drm/i915: Create a per file_priv default context
      drm/i915: Piggy back hangstats off of contexts
      drm/i915: Get context early in execbuf
      drm/i915: Defer request freeing
      drm/i915: Clean up VMAs before freeing
      drm/i915: Do not allow buffers at offset 0
      drm/i915: Use multiple VMs -- the point of no return
      drm/i915: Remove extraneous mm_switch in ppgtt enable
      drm/i915: Add PPGTT dumper
      drm/i915: Dump all ppgtt
      drm/i915/ppgtt: Fix ioctl errno for "no such context"
      drm/i915/bdw: Return -ENONENT on default ctx destroy
      drm/i915: set ctx->initialized only after RCS
      drm/i915: Remove incorrect comment about struct mutex
      drm/i915: Create a USES_PPGTT macro
      drm/i915: Extract register state error capture
      drm/i915: Logically reorder error register capture
      drm/i915: Reorder struct members
      drm/i915: Move per ring error state to ring_error
      drm/i915: Add some more registers to error state
      drm/i915: Capture PPGTT info on error capture
      drm/i915: Generate a hang error code

Chia-I Wu (2):
      drm/i915: enable HiZ Raw Stall Optimization on HSW
      drm/i915: enable HiZ Raw Stall Optimization on IVB

Chris Wilson (10):
      drm/i915: Free requests after object release when retiring requests
      drm/i915: Place the Global GTT VM first in the list of VM
      drm/i915: Always pin the default context
      drm/i915: Include HW status page in error capture
      drm/i915: VM eviction only targets address space not physical pages
      drm/i915: Only print information for filing bug reports once
      drm/i915: Don't access snooped pages through the GTT (even for error capture)
      drm/i915: Convert EFAULT into a silent SIGBUS
      drm/i915: Treat using a purged buffer as a source of EFAULT
      drm/i915: Prevent recursion by retiring requests when the ring is full

Damien Lespiau (6):
      drm/i915: Don't use i915_preliminary_hw_support to mean pre-production
      drm/i915: Turn get_aux_clock_divider() into per-platform vfuncs
      drm/i915: Factor out a function returning the AUX_CTL value to start a send
      drm/i915: Reorder the AUX_CTL bits in descending order
      drm/i915: Introduce a get_aux_send_ctl() vfunc
      drm/i915: Constify the drm_i915_private pointer a bit more

Daniel Vetter (15):
      Merge commit drm-intel-fixes into topic/ppgtt
      drm/i915: Reject the pin ioctl on gen6+
      drm/i915: Drop I915_PARAM_HAS_FULL_PPGTT again
      drm/i915: Reject non-default contexts on non-render again
      Revert "drm/i915: Do not allow buffers at offset 0"
      drm/i915: Reject NEEDS_GTT relocations with full ppgtt
      drm/i915: Don't check for NEEDS_GTT when deciding the address space
      drm/i915: fix ppgtt dump code for DEBUG_FS=n
      drm/i915: Only restore backlight combination mode reg for ums
      drm/i915: drop ironlake_ prefix from edp panel/backlight functions
      drm/i915: Shuffle modeset reset handling around
      Merge branch 'topic/ppgtt' into drm-intel-next-queued
      drm/i915: GEN7_MSG_CONTROL is ivb-only
      drm/i915: Kerneldoc for i915_gem_evict.c
      Merge remote-tracking branch 'airlied/drm-next' into drm-intel-next-queued

Deepak S (2):
      drm/i915: Disable/Enable PM Intrrupts based on the current freq.
      drm/i915/vlv: WA to fix Voltage not getting dropped to Vmin when Gfx is power gated.

Imre Deak (7):
      drm/i915: clean up HPD IRQ debug printing
      drm/i915: fix wait_remaining_ms_from_jiffies
      drm/i915: fix initial timestamps for PP sequencing logic
      drm/i915: vlv: don't unmask IIR[DISPLAY_PIPE_A/B_VBLANK] interrupt
      drm/i915: factor out valleyview_pipestat_irq_handler
      drm/i915: vlv: s/spin_lock_irqsave/spin_lock/ in irq handler
      drm/i915: unify FLIP_DONE macro names

Jani Nikula (4):
      drm/i915: drop the i915.fbpercrtc module parameter
      drm/i915: quirk invert brightness for Acer Aspire 5336
      drm/i915: move module parameters into a struct, in a new file
      drm/i915: drop i915_ prefix from enable_rc6, enable_fbc, enable_ppgtt parameters

Jeff McGee (2):
      drm/i915: Restore rps/rc6 on reset
      drm/i915: Update rps interrupt limits

Jesse Barnes (3):
      drm/i915: clock readout support for DDI v3
      drm/i915: always check clocks when comparing pipe configs
      drm/i915: fix WRPLL clock calculation

Mika Kuoppala (6):
      drm/i915: Use i915_hw_context to set reset stats
      drm/i915: Tune down debug output when context is banned
      drm/i915: Use hangcheck score to find guilty context
      drm/i915: Get rid of acthd based guilty batch search
      drm/i915: check for oom when allocating private_default_ctx
      drm/i915: release mutex in i915_gem_init()'s error path

Paulo Zanoni (5):
      drm/i915: init the DP panel power seq variables earlier
      drm/i915: save some time when waiting the eDP timings
      drm/i915: remove a column of zeros from the eDP wait definitions
      drm/i915: don't wait for power cycle when waiting for power off
      drm/i915: set the backlight panel delays registers to 1

Rodrigo Vivi (2):
      drm: dp helper: Add DP test sink CRC definition.
      drm/i915: debugfs: Add support for probing DP sink CRC.

Todd Previte (1):
      drm/i915: Enable 5.4Ghz (HBR2) link rate for Displayport 1.2-capable devices

Ville Syrjälä (49):
      drm/i915: Pre-compute pipe enabled state
      drm/i915: Prepare to track new pipe config per pipe
      drm/i915: Use new_config and new_enabled to simplify the VLV cdclk code
      drm/i915: Don't oops if the initial modeset fails
      drm/i915: Set crtc->new_config to NULL for pipes that are about to be disabled
      drm/i915: Add intel_hpd_irq_uninstall()
      drm/i915: Make irq_received bool
      drm/i915: Kill dev_priv->irq_received
      drm/i915: Fix new_config and new_enabled for load detect
      drm/i915: Shuffle sprite register writes into a tighter group
      drm/i915: Limit FIFO underrun reports on GMCH platforms
      drm/i915: Make underruns DRM_ERROR
      drm/i915: Don't write IVB_FBC_RT_BASE
      drm/i915: Don't set persistent FBC mode on ILK/SNB
      drm/i915: Don't set DPFC_HT_MODIFY bit on CTG/ILK/SNB
      drm/i915: Improve FBC plane defines a bit
      drm/i915: Use 1/2 compression ratio limit for 16bpp on FBC2
      drm/i915: Actually write the correct bits to DPFC_CONTROL on CTG
      drm/i915: Kill most of the FBC register save/restore
      drm/i915: Don't preserve DPFC_CONTROL bits ILK/SNB
      drm/i915: Fix FBC1 enable message
      drm/i915: Fix FBC_FENCE_OFF
      drm/i915: We implement WaDisableL3Bank2xClockGate:vlv
      drm/i915: We implement WaEnableVGAAccessThroughIOPort:ctg, elk, ilk, snb, ivb, vlv, hsw
      drm/i915: WaPsdDispatchEnable seems to be another name for WaDisablePSDDualDispatchEnable
      drm/i915: We implement WaDisableL3CacheAging:vlv
      drm/i915: WaApplyL3ControlAndL3ChickenMode isn't applicable for VLV
      drm/i915: We implement WaDisableRCCUnitClockGating:snb
      drm/i915: We implement WaMiSetContext_Hang
      drm/i915: Implement WaIncreaseL3CreditsForVLVB0:vlv
      drm/i915: WaDisableVDSUnitClockGating isn't applicable to SNB
      drm/i915: WaDisableRCCUnitClockGating isn't applicable to IVB
      drm/i915: WaDisableRCCUnitClockGating isn't applicaple to VLV
      drm/i915: WaDisableRHWOOptimizationForRenderHang isn't applicable to HSW
      drm/i915: WaDisableRHWOOptimizationForRenderHang isn't applicable to VLV
      drm/i915: Drop bogus comment about RCPB unit clock gating on IVB
      drm/i915: Drop WaDisableRCZUnitClockGating:hsw
      drm/i915: Drop WaApplyL3ControlAndL3ChickenMode:hsw
      drm/i915: Drop WaDisableRCPBUnitClockGating:vlv
      drm/i915: Add debugfs hooks for messign with watermark latencies
      drm/i915: Drop WaDisableVDSUtnitClockGating:vlv
      drm/i915: Drop WaDisableTDLUnitClockGating:vlv
      drm/i915: gen7_setup_fixed_func_scheduler() actually implements WaVSThreadDispatchOverride
      drm/i915: Don't apply WaVSThreadDispatchOverride on HSW
      drm/i915: VLV wants WaVSThreadDispatchOverride too
      drm/i915: Clarify WaDisable4x2SubspanOptimization situation for VLV
      Revert "drm/i915: set conservative clock gating values on VLV v2"
      drm/i915: Fix IVB GT2 WaDisableDopClockGating and WaDisablePSDDualDispatchEnable
      drm/i915: Drop WaDisablePSDDualDispatchEnable:ivb for IVB GT2

 drivers/gpu/drm/i915/Makefile              |   1 +
 drivers/gpu/drm/i915/i915_debugfs.c        | 301 ++++++++++++-
 drivers/gpu/drm/i915/i915_dma.c            |   6 +-
 drivers/gpu/drm/i915/i915_drv.c            | 182 +++-----
 drivers/gpu/drm/i915/i915_drv.h            | 415 ++++++++++++------
 drivers/gpu/drm/i915/i915_gem.c            | 412 +++++++-----------
 drivers/gpu/drm/i915/i915_gem_context.c    | 435 ++++++++++++++-----
 drivers/gpu/drm/i915/i915_gem_evict.c      |  49 ++-
 drivers/gpu/drm/i915/i915_gem_execbuffer.c | 164 +++----
 drivers/gpu/drm/i915/i915_gem_gtt.c        | 675 ++++++++++++++++++++++-------
 drivers/gpu/drm/i915/i915_gem_tiling.c     |   2 +-
 drivers/gpu/drm/i915/i915_gpu_error.c      | 442 +++++++++++++------
 drivers/gpu/drm/i915/i915_irq.c            | 259 +++++------
 drivers/gpu/drm/i915/i915_params.c         | 155 +++++++
 drivers/gpu/drm/i915/i915_reg.h            | 336 ++++++++------
 drivers/gpu/drm/i915/i915_suspend.c        |  40 +-
 drivers/gpu/drm/i915/i915_sysfs.c          |  10 +
 drivers/gpu/drm/i915/i915_ums.c            |   8 +
 drivers/gpu/drm/i915/intel_bios.c          |   4 +-
 drivers/gpu/drm/i915/intel_crt.c           |   2 +
 drivers/gpu/drm/i915/intel_ddi.c           | 101 ++++-
 drivers/gpu/drm/i915/intel_display.c       | 216 ++++++---
 drivers/gpu/drm/i915/intel_dp.c            | 365 +++++++++++-----
 drivers/gpu/drm/i915/intel_drv.h           |  28 +-
 drivers/gpu/drm/i915/intel_fbdev.c         |   4 +-
 drivers/gpu/drm/i915/intel_hdmi.c          |   6 +-
 drivers/gpu/drm/i915/intel_lvds.c          |   6 +-
 drivers/gpu/drm/i915/intel_overlay.c       |   8 +-
 drivers/gpu/drm/i915/intel_panel.c         |  17 +-
 drivers/gpu/drm/i915/intel_pm.c            | 294 +++++++------
 drivers/gpu/drm/i915/intel_ringbuffer.c    |  37 +-
 drivers/gpu/drm/i915/intel_ringbuffer.h    |   2 +
 drivers/gpu/drm/i915/intel_sprite.c        |  18 +-
 drivers/gpu/drm/i915/intel_uncore.c        |   8 +-
 include/drm/drm_dp_helper.h                |  10 +
 35 files changed, 3342 insertions(+), 1676 deletions(-)
 create mode 100644 drivers/gpu/drm/i915/i915_params.c

-- 
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch


More information about the dri-devel mailing list