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

Daniel Vetter daniel.vetter at ffwll.ch
Tue Mar 7 00:10:52 UTC 2017


Hi Dave,

Between this one and the drm-misc one I sent out already we have 550+
patches already queued right after -rc1. We're not doing it all wrong :-)

drm-intel-next-2017-03-06:
4 weeks worth of stuff since I was traveling&lazy:

- lspcon improvements (Imre)
- proper atomic state for cdclk handling (Ville)
- gpu reset improvements (Chris)
- lots and lots of polish around fences, requests, waiting and
  everything related all over (both gem and modeset code), from Chris
- atomic by default on gen5+ minus byt/bsw (Maarten did the patch to
  flip the default, really this is a massive joint team effort)
- moar power domains, now 64bit (Ander)
- big pile of in-kernel unit tests for various gem subsystems (Chris),
  including simple mock objects for i915 device and and the ggtt
  manager.
- i915_gpu_info in debugfs, for taking a snapshot of the current gpu
  state. Same thing as i915_error_state, but useful if the kernel didn't
  notice something is stick. From Chris.
- bxt dsi fixes (Umar Shankar)
- bxt w/a updates (Jani)
- no more struct_mutex for gem object unreference (Chris)
- some execlist refactoring (Tvrtko)
- color manager support for glk (Ander)
- improve the power-well sync code to better take over from the
  firmware (Imre)
- gem tracepoint polish (Tvrtko)
- lots of glk fixes all around (Ander)
- ctx switch improvements (Chris)
- glk dsi support&fixes (Deepak M)
- dsi fixes for vlv and clanups, lots of them (Hans de Goede)
- switch to i915.ko types in lots of our internal modeset code (Ander)
- byt/bsw atomic wm update code, yay (Ville)
drm-intel-next-2017-02-06:
First feature pile for 4.12:

- use atomic_commit for legay page flips, once more! (from Maarten)
- piles and piles of fixes and patches to make corner-cases more
  robust in atomic code, execlist, gem, from lots of different folks
- remove pre-production w/a for bxt (Chris)
- taint the kernel on pre-production hw that's no longer supported
  (Chris)
- consistently treat stolen as dma_addr_t (Chris)
- vgpu forcewake cleanup (Weinan Li)
- glk color manager support (Ander)
- explicit fencing support in execbuf, for Android! (Chris)
- ... plus the remaining prep-work for the same (also Chris)
- dp compliance prep (Manasi and Jani)
- cleanup skl/kbl code under IS_GEN9_BC (for "big core"), from Rodrigo

Note that there's a conflict between this and drm-misc-next in
i915_debugfs.c, but it's just entire functions added/removed in the same
place.

Also would be great if you don't delay opening drm-next, I want to
backmerge the entire thing into i915 because we need that there.

Cheers, Daniel


The following changes since commit 64a577196d66b44e37384bc5c4d78c61f59d5b2a:

  lib/Kconfig: make PRIME_NUMBERS not user selectable. (2017-02-24 12:11:21 +1000)

are available in the git repository at:

  git://anongit.freedesktop.org/git/drm-intel tags/drm-intel-next-2017-03-06

for you to fetch changes up to 505b681539a7e14aeb866515d3ef1a67375839bc:

  drm/i915: Update DRIVER_DATE to 20170306 (2017-03-06 08:34:44 +0100)

----------------------------------------------------------------
4 weeks worth of stuff since I was traveling&lazy:

- lspcon improvements (Imre)
- proper atomic state for cdclk handling (Ville)
- gpu reset improvements (Chris)
- lots and lots of polish around fences, requests, waiting and
  everything related all over (both gem and modeset code), from Chris
- atomic by default on gen5+ minus byt/bsw (Maarten did the patch to
  flip the default, really this is a massive joint team effort)
- moar power domains, now 64bit (Ander)
- big pile of in-kernel unit tests for various gem subsystems (Chris),
  including simple mock objects for i915 device and and the ggtt
  manager.
- i915_gpu_info in debugfs, for taking a snapshot of the current gpu
  state. Same thing as i915_error_state, but useful if the kernel didn't
  notice something is stick. From Chris.
- bxt dsi fixes (Umar Shankar)
- bxt w/a updates (Jani)
- no more struct_mutex for gem object unreference (Chris)
- some execlist refactoring (Tvrtko)
- color manager support for glk (Ander)
- improve the power-well sync code to better take over from the
  firmware (Imre)
- gem tracepoint polish (Tvrtko)
- lots of glk fixes all around (Ander)
- ctx switch improvements (Chris)
- glk dsi support&fixes (Deepak M)
- dsi fixes for vlv and clanups, lots of them (Hans de Goede)
- switch to i915.ko types in lots of our internal modeset code (Ander)
- byt/bsw atomic wm update code, yay (Ville)

----------------------------------------------------------------
Ander Conselvan de Oliveira (34):
      drm/i915: Don't leak edid in intel_crt_detect_ddc()
      drm/i915: Don't init hpd polling for vlv and chv from runtime_suspend()
      drm/i915: Fix calculation of rotated x and y offsets for planar formats
      drm/i915: Check for NULL atomic state in intel_crtc_disable_noatomic()
      drm/i915/glk: Turn on workarounds that apply to Geminilake too
      drm/i915: Disable plane gamma in SKL+ sprite planes
      drm/i915/glk: Plane color correction register changes
      drm/i915: Split broadwell_load_luts() into smaller functions
      drm/i915/glk: Program pipe gamma and degamma tables
      drm/i915: Remove WA for swapped HPD pins in broxton A stepping
      drm/i915/dp: Move initialization of hpd_pin to a new function
      drm/i915: Make power domain masks 64 bit long
      drm/i915: Remove unused function intel_ddi_get_link_dpll()
      drm/i915: Convert remaining users of 32bit power domain masks
      drm/i915/glk: Load the degamma LUT even in legacy gamma mode
      drm/i915/glk: Enable pipe CSC
      drm/i915/glk: Fix watermark computations for third sprite plane
      drm/i915/glk: Fix maximum scaling factor for Geminilake scalers
      drm/i915/glk: Pass dev_priv to intel_atomic_setup_scalers()
      drm/i915/glk: Fix Geminilake scalers mode programming
      drm/i915: Store aux power domain in intel_dp
      drm/i915: Store encoder power domain in struct intel_encoder
      drm/i915: Check encoder type in enc_to_dig_port()
      drm/i915/glk: Implement WaDDIIOTimeout
      drm/i915/glk: Don't enable DDI IO power domains during init
      drm/i915: Only enable DDI IO power domains after enabling DPLL
      drm/i915: Enable DDI IO power domains in the DP MST path
      drm/i915: Pass intel_crtc to fdi_link_train() hooks
      drm/i915: Pass intel_crtc to intel_lpt_pch_enable()
      drm/i915: Pass pipe_config to pch_enable() functions
      drm/i915: Pass pipe_config to fdi_link_train() functions
      drm/i915: Pass intel_crtc to DDI functions called from crtc en/disable
      drm/i915: Remove direct usages of intel_crtc->config from DDI code
      drm/i915: Remove duplicate DDI enabling logic from MST path

Andrey Ryabinin (1):
      drm/i915: fix use-after-free in page_flip_completed()

Anusha Srivatsa (1):
      i915/HuC: Add an extra check for platforms that do not have HUC

Arthur Heymans (1):
      drm/i915: Get correct display clock on 945gm

Chris Wilson (238):
      agp/intel: Move intel_fake_agp_sizes into #ifdef block
      drm/i915: Fix W=1 warning for csr_load_work_fn()
      drm/i915: Queue hangcheck when irqs are disabled
      drm/i915: Assert that the kernel_context is hw-id 0
      drm/i915: Assert that the context-switch completion matches our context
      drm/i915: Pevent copying uninitialised garbage into vma->ggtt_view
      drm/i915: Remove disable_lite_restore_wa
      drm/i915: Remove BXT incoherent seqno write workaround
      drm/i915: Remove BXT restore arbitration around ctx switch
      drm/i915: Remove BXT disable pixel mask clamping w/a
      drm/i915: Remove BXT TDL state w/a
      drm/i915: Split intel_engine allocation and initialisation
      drm/i915: Reset the gpu on takeover
      drm/i915: Assert that we don't submit to execlists whilst a preempt is pending
      drm/i915: Only disable execlist preemption for the duration of the request
      drm/i915: Move breadcrumbs irq_posted up a level to engine
      drm/i915: Only run execlist context-switch handler after an interrupt
      drm/i915: Skip the execlists CSB scan and rewrite if the ring is untouched
      drm/i915: Only attempt to pass the first request to execlists
      drm/i915: Dequeue execlists on a new request if any port is available
      drm/i915: Emit dma-fence (and execlists submit) first from signaler
      drm/i915: Move atomic state free from out of fence release
      drm/i915: Remove early pre-production RPS workarounds for BXT
      drm/i915: Report the failure to write to the punit
      drm/i915: Also clear the punit's PDATA sideband register
      drm/i915: Enable userspace to opt-out of implicit fencing
      drm/i915: Support explicit fencing for execbuf
      drm/i915: Make intel_detect_preproduction_hw easier to extend
      drm/i915: Mark the kernel as tainted if we fail the preproduction check
      drm/i915: Add early BXT sdv to the list of preproduction machines
      drm/i915: Record more information about the hanging contexts
      drm/i915: Be defensive when cleaning up i915_gem_internal pages
      drm/i915: Treat stolen memory as DMA addresses
      drm/i915: Sanity check the computed size and base of stolen memory
      drm/i915: Flush untouched framebuffers before display on !llc
      drm/i915/execlists: Skip resetting RING_CONTEXT_STATUS_PTR
      drm/i915/execlists: Add interrupt-pending check to intel_execlists_idle()
      drm/i915: Build DRM range manager selftests for CI
      drm/i915: Recreate internal objects with single page segments if dmar fails
      drm/i915: Reject set-tiling-ioctl with stride==0 and a tiling mode
      drm/i915: Tidy the tail of i915_tiling_ok()
      drm/i915: Allow large objects to be tiled on gen2/3
      drm/i915: Drain the freed state from the tail of the next commit
      drm/i915: Print execlists restart after reset
      drm/i915: Manipulate the Global GTT size using I915_GTT_PAGE_SIZE
      drm/i915: Assign I915_COLOR_UNEVICTABLE to the address space head_node
      drm/i915: Use page coloring to provide the guard page at the end of the GTT
      drm/i915: Mark the end of intel_ring_begin() and check in intel_ring_advance()
      drm/i915: Avoid unguarded reads from the request pointer
      drm/i915: Generate i915_params {} using a macro
      drm/i915: Use bool i915_param.alpha_support
      drm/i915: Capture module parameters for the GPU error state
      drm/i915: Show the current i915_params in debugfs/i915_capabilites
      drm/i915: Remove overzealous fence warn on runtime suspend
      drm/i915: Restore context and pd for ringbuffer submission after reset
      drm/i915: i915_gem_shrink_all() needs an awake device
      drm/i915: Move calling engine->init_hw() to its own function
      drm/i915: Split GEM resetting into 3 phases
      drm/i915: Disable engine->irq_tasklet around resets
      drm/i915: Check for timeout completion when waiting for the rq to submitted
      drm/i915: Assert that we never create a vma for the aliasing_ppgtt
      drm/i915: Use the size/type of address space to make decisions
      drm/i915: Always pin contexts into the high GGTT
      drm/i915/byt: Take powerwell for reading PIPESTAT in debugfs
      drm/i915: Split device release from unload
      drm/i915: Unbind any residual objects/vma from the Global GTT on shutdown
      drm/i915: Flush the freed object queue on device release
      drm/i915: Move the irq_barrier for reset earlier into reset_prepare
      drm/i915: Rename conditional GEM execution macros
      drm/i915: Assert that the active request hasn't been signaled
      drm/i915: Always call i915_gem_reset_finish() following i915_gem_reset_prepare()
      drm/i915: Kill the tasklet then disable
      drm/i915: Park the breadcrumbs signaler across a GPU reset
      drm/i915: Clear the last_retired_context following a hang/reset
      drm/i915: Provide a hook for selftests
      drm/i915: Add some selftests for sg_table manipulation
      drm/i915: Add unit tests for the breadcrumb rbtree, insert/remove
      drm/i915: Add unit tests for the breadcrumb rbtree, completion
      drm/i915: Add unit tests for the breadcrumb rbtree, wakeups
      drm/i915: Mock the GEM device for self-testing
      drm/i915: Mock a GGTT for self-testing
      drm/i915: Mock infrastructure for request emission
      drm/i915: Create a fake object for testing huge allocations
      drm/i915: Add selftests for i915_gem_request
      drm/i915: Add a simple request selftest for waiting
      drm/i915: Add a simple fence selftest to i915_gem_request
      drm/i915: Simple selftest to exercise live requests
      drm/i915: Test simultaneously submitting requests to all engines
      drm/i915: Test request ordering between engines
      drm/i915: Live testing of empty requests
      drm/i915: Add selftests for object allocation, phys
      drm/i915: Add a live seftest for GEM objects
      drm/i915: Test partial mappings
      drm/i915: Test exhaustion of the mmap space
      drm/i915: Test coherency of and barriers between cache domains
      drm/i915: Move uncore selfchecks to live selftest infrastructure
      drm/i915: Test all fw tables during mock selftests
      drm/i915: Sanity check all registers for matching fw domains
      drm/i915: Add some mock tests for dmabuf interop
      drm/i915: Add a live dmabuf selftest
      drm/i915: Add initial selftests for i915_gem_gtt
      drm/i915: Exercise filling the top/bottom portions of the ppgtt
      drm/i915: Exercise filling the top/bottom portions of the global GTT
      drm/i915: Fill different pages of the GTT
      drm/i915: Exercise filling and removing random ranges from the live GTT
      drm/i915: Live testing of lowlevel GTT operations
      drm/i915: Use fault-injection to force the shrinker to run in live GTT tests
      drm/i915: Test creation of VMA
      drm/i915: Exercise i915_vma_pin/i915_vma_insert
      drm/i915: Verify page layout for rotated VMA
      drm/i915: Test creation of partial VMA
      drm/i915: Live testing for context execution
      drm/i915: Extract aliasing ppgtt setup
      drm/i915: Force an aliasing_ppgtt test for context execution
      drm/i915: Initial selftests for exercising eviction
      drm/i915: Add mock exercise for i915_gem_gtt_reserve
      drm/i915: Add mock exercise for i915_gem_gtt_insert
      drm/i915: Add mock tests for GTT/VMA handling
      drm/i915: Exercise manipulate of single pages in the GGTT
      drm/i915: Exercise crossing pot boundaries in the GTT
      drm/i915: Add initial selftests for hang detection and resets
      drm/i915/gvt: Disable access to stolen memory as a guest
      drm/i915: Pass timeout==0 on to i915_gem_object_wait_fence()
      drm/i915: Avoid overflow in computing pot_hole loop termination
      drm/i915: Silence compiler for GTT selftests
      drm/i915: Silence compiler warning for seltests/i915_gem_coherency
      drm/i915/guc: Don't take struct_mutex for object unreference
      drm/i915: The return of i915_gpu_info to debugfs
      drm/i915: Enable fine-tuned RPS for cherryview
      drm/i915: Don't accidentally increase the frequency in handling DOWN rps
      drm/i915: Only apply the jump to the "efficient RPS" frequency on startup
      drm/i915: Micro-optimise i915_get_ggtt_vma_pages()
      drm/i915: Micro-optimise gen6_ppgtt_insert_entries()
      drm/i915: Micro-optimise gen8_ppgtt_insert_entries()
      drm/i915: Don't special case teardown of aliasing_ppgtt
      drm/i915: Split ggtt/alasing_gtt unbind_vma
      drm/i915: Convert clflushed pagetables over to WC maps
      drm/i915: Remove kmap/kunmap wrappers
      drm/i915: Move allocate_va_range to GTT
      drm/i915: Always preallocate gen6/7 ppgtt
      drm/i915: Remove redundant clear of appgtt
      drm/i915: Tidy gen6_write_pde()
      drm/i915: Remove bitmap tracking for used-ptes
      drm/i915: Remove bitmap tracking for used-pdes
      drm/i915: Remove bitmap tracking for used-pdpes
      drm/i915: Remove bitmap tracking for used-pml4
      drm/i915: Remove superfluous posting reads after clear GGTT
      drm/i915: Always mark the PDP as dirty when altered
      drm/i915: Remove defunct GTT tracepoints
      drm/i915: Remove unused ppgtt->enable()
      drm/i915: Remove i915_address_space.start
      drm/i915: Only preallocate the aliasing GTT to the extents of the global GTT
      drm/i915: Differentiate the aliasing_ppgtt with an invalid filp
      drm/i915: Use preferred kernel types in i915_gem_gtt.c
      drm/i915: Only enable hotplug interrupts if the display interrupts are enabled
      drm/i915: Squelch any ktime/jiffie rounding errors for wait-ioctl
      drm/i915: Unwind conversion to i915_gem_phys_ops on failure
      drm/i915: Remove struct_mutex for destroying framebuffers
      drm/i915: struct_mutex is not required for allocating the framebuffer
      drm/i915: Drop struct_mutex around frontbuffer flushes
      drm/i915: Postpone fake breadcrumb interrupt until real interrupts cease
      drm/i915: Break i915_spin_request() if we see an interrupt
      drm/i915: Defer declaration of missed-interrupt until the waiter is asleep
      drm/i915: Only start with the fake-irq timer if interrupts are dead
      drm/i915: Remove completed fences after a wait
      drm/i915: Only apply legacy PDE overflow detection to 3lvl machines
      drm/i915: Remove unneeded struct_mutex around rpm
      drm/i915: Prevent divide-by-zero in debugfs/i915_rps_boost_info
      drm/i915: Move the common RPS warnings to intel_set_rps()
      drm/i915: Store the requested frequency whilst RPS is disabled
      drm/i915: Remove unrequired POSTING_READ from gen6_set_rps()
      drm/i915: Assert that the request->tail is always qword aligned
      drm/i915: Use reservation_object_lock()
      drm/i915: Add i915_param charp macro magic
      drm/i915: Remove change_domain tracepoint
      drm/i915: Move cpu_cache_is_coherent() to header
      drm/i915: Amalgamate flushing of display objects
      drm/i915: Skip clflushes for all non-page backed objects
      drm/i915: Perform object clflushing asynchronously
      drm/i915: Remove 'retire' parameter from intel_fb_obj_flush
      drm/i915: Remove Braswell GGTT update w/a
      Revert "drm/i915/dp: Ratelimit DP aux timeout messages"
      drm/i915: Check against the signaled bit for fences/requests
      drm/i915: Keep a global seqno per-engine
      drm/i915: Move reserve_seqno() next to unreserve_seqno()
      drm/i915: Use a local to shorten req->i915->gpu_error.wait_queue
      drm/i915: Add ourselves to the gpu error waitqueue for the entire wait
      drm/i915: Inline __i915_gem_request_wait_for_execute()
      drm/i915: Deconstruct execute fence
      drm/i915: Protect the request->global_seqno with the engine->timeline lock
      drm/i915: Take a reference whilst processing the signaler request
      drm/i915: Allow a request to be cancelled
      drm/i915: Remove the preempted request from the execution queue
      drm/i915: Exercise request cancellation using a mock selftest
      drm/i915: Replace reset_wait_queue with default_wake_function
      drm/i915: Refactor direct GPU reset from request waiters
      drm/i915: Immediately process a reset before starting waiting
      drm/i915: Remove one level of indention from wait-for-execute
      drm/i915: Suppress fbc suggestion to increase stolen if disabled
      drm/i915/fbdev: Stop repeating tile configuration on stagnation
      drm/i915/execlists: Detect an out-of-order context switch
      drm/i915: Timeout lowlevel_hole GTT selftest early
      drm/i915: Assert all sg are initialised in fake_dma_object for selftests
      drm/i915: Assert we do not overflow 4lvl page directories
      drm/i915: Sanity check the vma->node prior to binding into the GTT
      drm/i915: Advance start address on crossing PML (48b ppgtt) boundary
      drm/i915: Only unwind the local pgtable layer if empty
      drm/i915: Unwind vma->pages allocation upon failure
      drm/i915: Remove the vma from the drm_mm if binding fails
      drm/i915: Remove redundant TLB invalidate on switching contexts
      drm/i915: Remove redundant TLB invalidate on switching ppgtt
      drm/i915: Reduce context alignment
      drm/i915: Distinguish between timeout and error in sideband transactions
      drm/i915: Report both waiters and success from intel_engine_wakeup()
      drm/i915: Signal first fence from irq handler if complete
      drm/i915: Defer enabling hangcheck to the first fake breadcrumb interrupt
      drm/i915: Delay disabling the user interrupt for breadcrumbs
      drm/i915: Consolidate reporting of "missed breadcrumbs"
      drm/i915/guc: Make wq_lock irq-safe
      drm/i915/guc: Reorder __i915_guc_submit to reduce spinlock holdtime
      drm/i915: Tighten mmio arrays for MIPI_PORT
      drm/i915: Fix all intel_framebuffer_init failures to take the error path
      drm/i915: Prevent concurrent tiling/framebuffer modifications
      drm/i915: Move w/a LRI debug message from context-init to driver load
      drm/i915: Hold rpm during GEM suspend in driver unload/suspend
      drm/i915: Restore the invalid access without RPM warning
      drm/i915: Assert that fence->lock is held in an irq-safe manner
      drm/i915: s/assert_spin_locked/lockdep_assert_held/
      drm/i915/guc: Disable irq for __i915_guc_submit wq_lock
      drm/i915: Include GT/seqno activity in engine/hangcheck debugfs
      drm/i915: Include power-management state in gpu error dump
      drm/i915: Drop spinlocks around adding to the client request list
      drm/i915: Differentiate between hangcheck waiting for timer or scheduler
      drm/i915: Ensure the engine is idle before manually changing HWS
      drm/i915: Generalise wait for execlists to be idle
      drm/i915: Take reference for signaling the request from hardirq
      drm/i915: Refactor wakeup of the next breadcrumb waiter
      drm/i915: Split breadcrumbs spinlock into two

Chuanxiao Dong (1):
      drm/i915/gvt: set ring buffer size to default for guc submission

Daniel Vetter (5):
      Merge remote-tracking branch 'airlied/drm-next' into drm-intel-next-queued
      drm/i915: Update DRIVER_DATE to 20170206
      Merge remote-tracking branch 'airlied/drm-next' into drm-intel-next-queued
      Merge airlied/drm-next into drm-misc-next
      drm/i915: Update DRIVER_DATE to 20170306

Daniele Ceraolo Spurio (2):
      drm/i915: fix pm refcounting on fence error in execbuf
      drm/i915: refactor register fw read/write macros for recent GENs

Deepak M (7):
      drm/i915: Set the Z inversion overlap field
      drm/i915/glk: Program dphy param reg for GLK
      drm/i915/glk: Program new MIPI DSI PHY registers for GLK
      drm/i915/glk: Add DSI PLL divider range for glk
      drm/i915i/glk: Program MIPI_CLOCK_CTRL only for BXT
      drm/i915/glk: Program txesc clock divider for GLK
      drm/i915/glk: Add MIPIIO Enable/disable sequence

Deepak S (1):
      drm/i915/chv: Set min freq to RPn on CHV.

Geliang Tang (1):
      drm/i915/error: use rb_entry()

Hans de Goede (17):
      drm/i915: Fix not finding the VBT when it overlaps with OPREGION_ASLE_EXT
      drm/i915/dsi: Move calling of wait_for_dsi_fifo_empty to mipi_exec_send_packet
      drm/i915/dsi: Merge intel_dsi_disable/enable into their respective callers
      drm/i915/dsi: Add intel_dsi_unprepare() helper
      drm/i915/dsi: Move intel_dsi_clear_device_ready()
      drm/i915/dsi: Make intel_dsi_enable/disable directly exec VBT sequences
      drm/i915/dsi: VLV/CHT Only wait for LP00 on MIPI PORT A
      drm/i915/dsi: Document the panel enable / disable sequences from the spec
      drm/i915/dsi: Drop bogus MIPI_SEQ_ASSERT_RESET before POWER_ON
      drm/i915/dsi: Move MIPI_SEQ_POWER_ON/OFF calls together with pmic gpio calls
      drm/i915/dsi: Group DPOunit clock gate workaround with PLL enable
      drm/i915/dsi: Execute MIPI_SEQ_DEASSERT_RESET before calling device_ready()
      drm/i915/dsi: Group MIPI_SEQ_BACKLIGHT_ON/OFF with panel_[en|dis]able_backlight
      drm/i915/dsi: Document always using v3 SHUTDOWN / MIPI_SEQ_DISPLAY_OFF order
      drm/i915/dsi: Execute MIPI_SEQ_TEAR_OFF from intel_dsi_post_disable
      drm/i915/dsi: Call MIPI_SEQ_TEAR_ON and DISPLAY_ON for cmd-mode (untested)
      drm/i915/dsi: Skip delays for v3 VBTs in vid-mode

Imre Deak (11):
      drm/i915/gen9+: Enable hotplug detection early
      drm/i915/lspcon: Fix resume time initialization due to unasserted HPD
      drm/i915/lspcon: Remove DPCD compare based resume time workaround
      drm/i915/gen5+, pch: Enable hotplug detection early
      drm/i915: Remove redundant toggling from the power well sync_hw hooks
      drm/i915: Call the sync_hw hook for power wells without a domain
      drm/i915/gen9: Fix clearing of the BIOS power well request register
      drm/i915: Preserve the state of power wells not explicitly enabled
      drm/i915: Add power well SW/HW state verification
      drm/i915/lspcon: Switch back to PCON mode after output replug
      drm/i915/gen9: Increase PCODE request timeout to 50ms

Jani Nikula (9):
      drm/i915/dp: do not proceed with autotests if we don't ACK them
      drm/color: un-inline drm_color_lut_extract()
      Revert "drm/color: un-inline drm_color_lut_extract()"
      drm/i915: use variadic macros and arrays to choose port/pipe based registers
      drm/i915: don't warn about Skylake CPU - KabyPoint PCH combo
      drm/i915/bxt: apply clock gating workaround to all revisions
      drm/i915/bxt: remove snooping workaround on old A revisions
      drm/i915/bxt: remove WaRsDisableCoarsePowerGating for early BXT
      drm/i915: use BUILD_BUG_ON to ensure platform name has been set up

Joonas Lahtinen (3):
      drm/i915: Avoid BIT(max) - 1 and use GENMASK(max - 1, 0)
      drm/i915: Use for_each_power_domain() in i915_power_domain_info()
      drm/i915: Add __destroy_hw_context

Juergen Gross (1):
      drm/i915: fix i915 running as dom0 under Xen

Kelvin Gardiner (1):
      drm/i915/bdw: Do not write the replay bit of the ring mode register

Kenneth Graunke (1):
      drm/i915: Drop support for I915_EXEC_CONSTANTS_* execbuf parameters.

Lee, Shawn C (1):
      drm/i915/bxt: Add MST support when do DPLL calculation

Lyude (2):
      drm/i915/debugfs: Add i915_hpd_storm_ctl
      drm/i915/dp: Ratelimit DP aux timeout messages

Maarten Lankhorst (4):
      drm/i915: Use atomic page flip for intel again.
      drm/i915: Disable all crtcs during driver unload, v2.
      drm/i915: Fix POWER_DOMAIN_AUDIO refcounting.
      drm/i915: Enable atomic support by default on supported platforms.

Madhav Chauhan (2):
      drm/i915/glk: Validate only DSI PORT A PLL divider
      drm/i915/glk: Fix DSI enable I/O sequence

Manasi Navare (5):
      drm/i915: Add support for DP link training compliance
      drm/i915: Fixes to support DP Compliance EDID tests
      drm: Add definitions for DP compliance Video pattern tests
      drm/i915: Add support for DP Video pattern compliance tests
      drm/i915/dp: Reset the link params on HPD/connected boot/resume

Matthew Auld (1):
      drm/i915: remove 512GB allocation warning

Michal Wajdeczko (1):
      drm/i915: Don't use enums for hardware engine id

Michał Winiarski (2):
      drm/i915: Always convert incoming exec offsets to non-canonical
      drm/i915/skl: Add missing SKL ID

Mika Kuoppala (7):
      drm/i915: Create context desc template when context is created
      drm/i915: Avoid tweaking evaluation thresholds on Baytrail v3
      drm/i915/gtt: Make I915_PDPES_PER_PDP inline function
      drm/i915: Don't mark pdps clear if pdps are not submitted
      drm/i915/gtt: Prefer i915_vm_is_48bit() over macro
      drm/i915: Avoid using word legacy with ppgtt
      drm/i915/gtt: Setup vm callbacks late

Paulo Zanoni (2):
      x86/gpu: GLK uses the same GMS values as SKL
      drm/i915: make i915_stolen_to_physical() return phys_addr_t

Robert Bragg (1):
      drm/i915: fix for WaDisableDopClockGating:bdw

Rodrigo Vivi (3):
      drm/i915/kbl: Apply WaIncreaseDefaultTLBEntries on KBL.
      drm/i915: Introduce IS_GEN9_BC for Skylake and Kabylake.
      drm/i915: DMC 1.03 for Geminilake

Tvrtko Ursulin (19):
      drm/i915/guc: Log significant events at the info level
      drm/i915: Emit to ringbuffer directly
      drm/i915: Fix uninitialized return from mi_set_context
      drm/i915: Remove duplicate intel_logical_ring_workarounds_emit
      drm/i915: Make int __intel_ring_space static
      drm/i915: Simplify cleanup path in intel_engines_init
      drm/i915: Move common workaround code to intel_engine_cs
      drm/i915: Tidy workaround batch buffer emission
      drm/i915: Consolidate gen8_emit_pipe_control
      drm/i915: Fix typo in semaphore debug message
      drm/i915: Tidy execlists_init_reg_state
      drm/i915/tracepoints: Tidy request event class
      drm/i915/tracepoints: Adjust i915_gem_ring_dispatch
      drm/i915/tracepoints: Tidy i915_gem_request_wait_begin
      drm/i915/tracepoints: Remove unused i915_gem_request_complete
      drm/i915/tracepoints: Add request submit and execute tracepoints
      drm/i915/tracepoints: Rename i915_gem_request_notify
      drm/i915/tracepoints: Add backend level request in and out tracepoints
      drm/i915/tracepoints: Add hw_id to context tracepoints

Uma Shankar (5):
      drm/i915: Add MIPI_IO WA and program DSI regulators
      drm/i915: Check for platform specific GPIO config
      drm/i915: Fix PLL 8x/3 divider for MIPI video mode
      drm/i915/bxt: Fix BXT DSI ULPS sequence
      drm/i915/bxt: Disable device ready before shutdown command

Ville Syrjälä (40):
      drm/i915: Store the pipe pixel rate in the crtc state
      drm/i915: Nuke intel_mode_max_pixclk()
      drm/i915: s/get_display_clock_speed/get_cdclk/
      drm/i915: Clean up the .get_cdclk() assignment if ladder
      drm/i915: Move most cdclk/rawclk related code to intel_cdclk.c
      drm/i915: Pass computed vco to bxt_set_cdclk()
      drm/i915: Start moving the cdclk stuff into a distinct state structure
      drm/i915: Track full cdclk state for the logical and actual cdclk frequencies
      drm/i915: Pass dev_priv to remainder of the cdclk functions
      drm/i915: Pass the cdclk state to the set_cdclk() functions
      drm/i915: Move PFI credit reprogramming into vlv/chv_set_cdclk()
      drm/i915: Nuke the VLV/CHV PFI programming power domain workaround
      drm/i915: Replace the .modeset_commit_cdclk() hook with a more direct .set_cdclk() hook
      drm/i915: Move ilk_pipe_pixel_rate() to intel_display.c
      drm/i915: Avoid spurious WARNs about the wrong pipe in the PPS code
      drm/i915: Simplify platform checks in intel_fb_pitch_limit()
      drm/i915: Dump more configuration information for DSI
      drm/i915: Refactor code to select the DDI buf translation table
      drm/i915: Refactor translate_signal_level()
      drm/i915: Introduce intel_ddi_dp_voltage_max()
      drm/i915: Fix legacy cursor vs. watermarks for ILK-BDW
      drm/i915: Do .init_clock_gating() earlier to avoid it clobbering watermarks
      drm/i915: Track visible planes in a bitmask
      drm/i915: Track plane fifo sizes under intel_crtc
      drm/i915: Move vlv wms from crtc->wm_state to crtc->wm.active.vlv
      drm/i915: Plop vlv wm state into crtc_state
      drm/i915: Plop vlv/chv fifo sizes into crtc state
      drm/i915: Compute VLV/CHV FIFO sizes based on the PM2 watermarks
      drm/i915: Compute vlv/chv wms the atomic way
      drm/i915: Skip useless watermark/FIFO related work on VLV/CHV when not needed
      drm/i915: Compute proper intermediate wms for vlv/cvh
      drm/i915: Nuke crtc->wm.cxsr_allowed
      drm/i915: Only use update_wm_{pre,post} for pre-ilk platforms
      drm/i915: Sanitize VLV/CHV watermarks properly
      drm/i915: Workaround VLV/CHV sprite1->sprite0 enable underrun
      drm/i915: Kill level 0 wm hack for VLV/CHV
      drm/i915: Add plane update/disable tracepoints
      drm/i915: Add VLV/CHV watermark/FIFO programming tracepoints
      drm/i915: Add cxsr toggle tracepoint
      drm/i915: Add FIFO underrun tracepoints

Weinan Li (2):
      drm/i915: noop forcewake get/put when vgpu activated
      drm/i915: clean up unused vgpu_read/write

Zhi Wang (2):
      drm/i915: Let execlist_update_context() cover !FULL_PPGTT mode.
      drm/i915: A hotfix for making aliasing PPGTT work for GVT-g

sagar.a.kamble at intel.com (1):
      drm/i915: Do RPM Wake during GuC/HuC status read

 Documentation/gpu/i915.rst                         |    9 +
 arch/x86/kernel/early-quirks.c                     |    1 +
 drivers/char/agp/intel-gtt.c                       |   16 +-
 drivers/gpu/drm/i915/Kconfig                       |    1 +
 drivers/gpu/drm/i915/Kconfig.debug                 |   29 +
 drivers/gpu/drm/i915/Makefile                      |    5 +
 drivers/gpu/drm/i915/gvt/cmd_parser.c              |   36 +-
 drivers/gpu/drm/i915/i915_debugfs.c                |  364 ++-
 drivers/gpu/drm/i915/i915_drv.c                    |  109 +-
 drivers/gpu/drm/i915/i915_drv.h                    |  231 +-
 drivers/gpu/drm/i915/i915_gem.c                    |  359 ++-
 drivers/gpu/drm/i915/i915_gem.h                    |    9 +
 drivers/gpu/drm/i915/i915_gem_batch_pool.c         |    4 +-
 drivers/gpu/drm/i915/i915_gem_clflush.c            |  189 ++
 drivers/gpu/drm/i915/i915_gem_clflush.h            |   37 +
 drivers/gpu/drm/i915/i915_gem_context.c            |  163 +-
 drivers/gpu/drm/i915/i915_gem_context.h            |    2 -
 drivers/gpu/drm/i915/i915_gem_dmabuf.c             |    5 +
 drivers/gpu/drm/i915/i915_gem_evict.c              |   16 +-
 drivers/gpu/drm/i915/i915_gem_execbuffer.c         |  159 +-
 drivers/gpu/drm/i915/i915_gem_gtt.c                | 2086 ++++++--------
 drivers/gpu/drm/i915/i915_gem_gtt.h                |  124 +-
 drivers/gpu/drm/i915/i915_gem_internal.c           |    7 +-
 drivers/gpu/drm/i915/i915_gem_object.h             |   41 +-
 drivers/gpu/drm/i915/i915_gem_request.c            |  499 ++--
 drivers/gpu/drm/i915/i915_gem_request.h            |   91 +-
 drivers/gpu/drm/i915/i915_gem_shrinker.c           |    7 +-
 drivers/gpu/drm/i915/i915_gem_stolen.c             |   42 +-
 drivers/gpu/drm/i915/i915_gem_tiling.c             |   25 +-
 drivers/gpu/drm/i915/i915_gem_timeline.h           |    9 +-
 drivers/gpu/drm/i915/i915_gpu_error.c              |  321 ++-
 drivers/gpu/drm/i915/i915_guc_submission.c         |   37 +-
 drivers/gpu/drm/i915/i915_irq.c                    |  179 +-
 drivers/gpu/drm/i915/i915_params.c                 |    6 +-
 drivers/gpu/drm/i915/i915_params.h                 |   81 +-
 drivers/gpu/drm/i915/i915_pci.c                    |   32 +-
 drivers/gpu/drm/i915/i915_perf.c                   |    2 +-
 drivers/gpu/drm/i915/i915_reg.h                    |  102 +-
 drivers/gpu/drm/i915/i915_selftest.h               |  106 +
 drivers/gpu/drm/i915/i915_sysfs.c                  |   35 +-
 drivers/gpu/drm/i915/i915_trace.h                  |  472 ++-
 drivers/gpu/drm/i915/i915_utils.h                  |   11 +
 drivers/gpu/drm/i915/i915_vgpu.c                   |    9 +-
 drivers/gpu/drm/i915/i915_vma.c                    |   91 +-
 drivers/gpu/drm/i915/i915_vma.h                    |    4 +-
 drivers/gpu/drm/i915/intel_atomic.c                |   15 +-
 drivers/gpu/drm/i915/intel_atomic_plane.c          |   17 +-
 drivers/gpu/drm/i915/intel_audio.c                 |    4 +-
 drivers/gpu/drm/i915/intel_breadcrumbs.c           |  528 ++--
 drivers/gpu/drm/i915/intel_cdclk.c                 | 1891 ++++++++++++
 drivers/gpu/drm/i915/intel_color.c                 |  104 +-
 drivers/gpu/drm/i915/intel_crt.c                   |   21 +-
 drivers/gpu/drm/i915/intel_csr.c                   |    8 +-
 drivers/gpu/drm/i915/intel_ddi.c                   |  449 +--
 drivers/gpu/drm/i915/intel_device_info.c           |    8 +-
 drivers/gpu/drm/i915/intel_display.c               | 3029 +++++---------------
 drivers/gpu/drm/i915/intel_dp.c                    |  307 +-
 drivers/gpu/drm/i915/intel_dp_mst.c                |   37 +-
 drivers/gpu/drm/i915/intel_dpll_mgr.c              |   54 +-
 drivers/gpu/drm/i915/intel_dpll_mgr.h              |   16 -
 drivers/gpu/drm/i915/intel_drv.h                   |  198 +-
 drivers/gpu/drm/i915/intel_dsi.c                   |  562 +++-
 drivers/gpu/drm/i915/intel_dsi.h                   |    5 +
 drivers/gpu/drm/i915/intel_dsi_panel_vbt.c         |   89 +-
 drivers/gpu/drm/i915/intel_dsi_pll.c               |  135 +-
 drivers/gpu/drm/i915/intel_dvo.c                   |    1 +
 drivers/gpu/drm/i915/intel_engine_cs.c             |  686 ++++-
 drivers/gpu/drm/i915/intel_fbc.c                   |   11 +-
 drivers/gpu/drm/i915/intel_fbdev.c                 |   76 +-
 drivers/gpu/drm/i915/intel_fifo_underrun.c         |   25 +-
 drivers/gpu/drm/i915/intel_frontbuffer.c           |    3 +-
 drivers/gpu/drm/i915/intel_frontbuffer.h           |    8 +-
 drivers/gpu/drm/i915/intel_guc_loader.c            |   23 +-
 drivers/gpu/drm/i915/intel_hangcheck.c             |    4 +
 drivers/gpu/drm/i915/intel_hdmi.c                  |   17 +-
 drivers/gpu/drm/i915/intel_hotplug.c               |   31 +-
 drivers/gpu/drm/i915/intel_huc.c                   |   15 +-
 drivers/gpu/drm/i915/intel_i2c.c                   |    4 +-
 drivers/gpu/drm/i915/intel_lrc.c                   |  880 ++----
 drivers/gpu/drm/i915/intel_lrc.h                   |    3 -
 drivers/gpu/drm/i915/intel_lspcon.c                |   17 +-
 drivers/gpu/drm/i915/intel_lvds.c                  |    8 +-
 drivers/gpu/drm/i915/intel_mocs.c                  |   55 +-
 drivers/gpu/drm/i915/intel_overlay.c               |   79 +-
 drivers/gpu/drm/i915/intel_panel.c                 |    4 +-
 drivers/gpu/drm/i915/intel_pipe_crc.c              |    2 +-
 drivers/gpu/drm/i915/intel_pm.c                    |  919 +++---
 drivers/gpu/drm/i915/intel_ringbuffer.c            | 1147 ++------
 drivers/gpu/drm/i915/intel_ringbuffer.h            |  174 +-
 drivers/gpu/drm/i915/intel_runtime_pm.c            |  625 ++--
 drivers/gpu/drm/i915/intel_sdvo.c                  |    1 +
 drivers/gpu/drm/i915/intel_sideband.c              |   34 +-
 drivers/gpu/drm/i915/intel_sprite.c                |   17 +-
 drivers/gpu/drm/i915/intel_tv.c                    |    1 +
 drivers/gpu/drm/i915/intel_uncore.c                |  166 +-
 drivers/gpu/drm/i915/selftests/huge_gem_object.c   |  135 +
 drivers/gpu/drm/i915/selftests/huge_gem_object.h   |   45 +
 .../gpu/drm/i915/selftests/i915_gem_coherency.c    |  385 +++
 drivers/gpu/drm/i915/selftests/i915_gem_context.c  |  459 +++
 drivers/gpu/drm/i915/selftests/i915_gem_dmabuf.c   |  303 ++
 drivers/gpu/drm/i915/selftests/i915_gem_evict.c    |  260 ++
 drivers/gpu/drm/i915/selftests/i915_gem_gtt.c      | 1556 ++++++++++
 drivers/gpu/drm/i915/selftests/i915_gem_object.c   |  600 ++++
 drivers/gpu/drm/i915/selftests/i915_gem_request.c  |  882 ++++++
 .../gpu/drm/i915/selftests/i915_live_selftests.h   |   19 +
 .../gpu/drm/i915/selftests/i915_mock_selftests.h   |   20 +
 drivers/gpu/drm/i915/selftests/i915_random.c       |   63 +
 drivers/gpu/drm/i915/selftests/i915_random.h       |   50 +
 drivers/gpu/drm/i915/selftests/i915_selftest.c     |  250 ++
 drivers/gpu/drm/i915/selftests/i915_vma.c          |  746 +++++
 drivers/gpu/drm/i915/selftests/intel_breadcrumbs.c |  481 ++++
 drivers/gpu/drm/i915/selftests/intel_hangcheck.c   |  537 ++++
 drivers/gpu/drm/i915/selftests/intel_uncore.c      |  182 ++
 drivers/gpu/drm/i915/selftests/mock_context.c      |   78 +
 drivers/gpu/drm/i915/selftests/mock_context.h      |   34 +
 drivers/gpu/drm/i915/selftests/mock_dmabuf.c       |  176 ++
 drivers/gpu/drm/i915/selftests/mock_dmabuf.h       |   41 +
 drivers/gpu/drm/i915/selftests/mock_drm.c          |   54 +
 drivers/gpu/drm/i915/selftests/mock_drm.h          |   31 +
 drivers/gpu/drm/i915/selftests/mock_engine.c       |  207 ++
 drivers/gpu/drm/i915/selftests/mock_engine.h       |   54 +
 drivers/gpu/drm/i915/selftests/mock_gem_device.c   |  226 ++
 drivers/gpu/drm/i915/selftests/mock_gem_device.h   |    9 +
 drivers/gpu/drm/i915/selftests/mock_gem_object.h   |    8 +
 drivers/gpu/drm/i915/selftests/mock_gtt.c          |  138 +
 drivers/gpu/drm/i915/selftests/mock_gtt.h          |   35 +
 drivers/gpu/drm/i915/selftests/mock_request.c      |   63 +
 drivers/gpu/drm/i915/selftests/mock_request.h      |   46 +
 drivers/gpu/drm/i915/selftests/scatterlist.c       |  355 +++
 include/drm/drm_dp_helper.h                        |   57 +
 include/drm/i915_pciids.h                          |    3 +-
 include/uapi/drm/i915_drm.h                        |   65 +-
 tools/testing/selftests/drivers/gpu/i915.sh        |    1 +
 133 files changed, 18969 insertions(+), 8361 deletions(-)
 create mode 100644 drivers/gpu/drm/i915/i915_gem_clflush.c
 create mode 100644 drivers/gpu/drm/i915/i915_gem_clflush.h
 create mode 100644 drivers/gpu/drm/i915/i915_selftest.h
 create mode 100644 drivers/gpu/drm/i915/intel_cdclk.c
 create mode 100644 drivers/gpu/drm/i915/selftests/huge_gem_object.c
 create mode 100644 drivers/gpu/drm/i915/selftests/huge_gem_object.h
 create mode 100644 drivers/gpu/drm/i915/selftests/i915_gem_coherency.c
 create mode 100644 drivers/gpu/drm/i915/selftests/i915_gem_context.c
 create mode 100644 drivers/gpu/drm/i915/selftests/i915_gem_dmabuf.c
 create mode 100644 drivers/gpu/drm/i915/selftests/i915_gem_evict.c
 create mode 100644 drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
 create mode 100644 drivers/gpu/drm/i915/selftests/i915_gem_object.c
 create mode 100644 drivers/gpu/drm/i915/selftests/i915_gem_request.c
 create mode 100644 drivers/gpu/drm/i915/selftests/i915_live_selftests.h
 create mode 100644 drivers/gpu/drm/i915/selftests/i915_mock_selftests.h
 create mode 100644 drivers/gpu/drm/i915/selftests/i915_random.c
 create mode 100644 drivers/gpu/drm/i915/selftests/i915_random.h
 create mode 100644 drivers/gpu/drm/i915/selftests/i915_selftest.c
 create mode 100644 drivers/gpu/drm/i915/selftests/i915_vma.c
 create mode 100644 drivers/gpu/drm/i915/selftests/intel_breadcrumbs.c
 create mode 100644 drivers/gpu/drm/i915/selftests/intel_hangcheck.c
 create mode 100644 drivers/gpu/drm/i915/selftests/intel_uncore.c
 create mode 100644 drivers/gpu/drm/i915/selftests/mock_context.c
 create mode 100644 drivers/gpu/drm/i915/selftests/mock_context.h
 create mode 100644 drivers/gpu/drm/i915/selftests/mock_dmabuf.c
 create mode 100644 drivers/gpu/drm/i915/selftests/mock_dmabuf.h
 create mode 100644 drivers/gpu/drm/i915/selftests/mock_drm.c
 create mode 100644 drivers/gpu/drm/i915/selftests/mock_drm.h
 create mode 100644 drivers/gpu/drm/i915/selftests/mock_engine.c
 create mode 100644 drivers/gpu/drm/i915/selftests/mock_engine.h
 create mode 100644 drivers/gpu/drm/i915/selftests/mock_gem_device.c
 create mode 100644 drivers/gpu/drm/i915/selftests/mock_gem_device.h
 create mode 100644 drivers/gpu/drm/i915/selftests/mock_gem_object.h
 create mode 100644 drivers/gpu/drm/i915/selftests/mock_gtt.c
 create mode 100644 drivers/gpu/drm/i915/selftests/mock_gtt.h
 create mode 100644 drivers/gpu/drm/i915/selftests/mock_request.c
 create mode 100644 drivers/gpu/drm/i915/selftests/mock_request.h
 create mode 100644 drivers/gpu/drm/i915/selftests/scatterlist.c

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


More information about the Intel-gfx mailing list