[PULL] drm-intel-next
Joonas Lahtinen
joonas.lahtinen at linux.intel.com
Fri Apr 17 11:15:48 UTC 2020
Hi Dave & Daniel,
This pull contains a backmerge of drm-next and pulls the phy-compliance
branch from Maarten.
On the uAPI front, drop some machine generated perf OA configs from
915 now that they mostly passed from userspace. Add new perf OA interfaces
to limit CPU overhead and to allow benchmarking full EU performance (instead
of always limiting to half EUs for media compatibility).
Missing workarounds for Elkhartlake, more Tigerlake PCI IDs, workarounds
and fixes.
Fix for 5k dual DP displays on Skylake, support for Apple 15" BMP 2017 (v3)
display. Type-C display hot plug made more resilent. YUV444 for SKL+.
Improvements to soft-RC6 mitigation, general power management and yielding
a GPU timeslice when on user semaphore.
An audio fixes for Gen9+ and one targeting JSL.
Then the usual refactorings, and fixes to CI found issues.
Regards, Joonas
***
drm-intel-next-2020-04-17:
UAPI Changes:
- drm/i915/perf: introduce global sseu pinning
Allow userspace to request at perf/OA open full SSEU configuration
on the system to be able to benchmark 3D workloads, at the cost of not
being able to run media workloads. (Lionel)
Userspace changes: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4021
- drm/i915/perf: add new open param to configure polling of OA buffer
Let application choose how often the OA buffer should be checked on
the CPU side for data availability for choosig between CPU overhead
and realtime nature of data.
Userspace changes: https://patchwork.freedesktop.org/series/74655/
(i915 perf recorder is a tool to capture i915 perf data for viewing
in GPUVis.)
- drm/i915/perf: remove generated code
Removal of the machine generated perf/OA test configurations from i915.
Used by Mesa v17.1-18.0, and shortly replaced by userspace supplied OA
configurations. Removal of configs causes affected Mesa versions to
fall back to earlier kernel behaviour (potentially missing metrics).
(Lionel)
Cross-subsystem Changes:
- Backmerge of drm-next
- Includes tag 'topic/phy-compliance-2020-04-08' from
git://anongit.freedesktop.org/drm/drm-misc
Driver Changes:
- Fix for GitLab issue #27: Support 5k tiled dual DP display on SKL (Ville)
- Fix https://github.com/thesofproject/linux/issues/1719: Broken audio after
S3 resume on JSL platforms. (Kai)
- Add new Tigerlake PCI IDs (Swathi D.)
- Add missing Tigerlake W/As (Matt R.)
- Extended Wa_2006604312 to EHL (Matt A)
- Add DPCD link_rate quirk for Apple 15" MBP 2017 (v3) (Mario)
- Make Wa_14010229206 apply to all Tigerlake steppings (Swathi d)
- Extend hotplug detect retry on TypeC connectors to 5 seconds (Imre)
- Yield the timeslice if caught waiting on a user semaphore (Chris)
- Limit the residual W/A batch to Haswell due to instability on IVB/BYT (Chris)
- TBT AUX should use TC power well ops on Tigerlake (Matt R)
- Update PMINTRMSK holding fw to make it effective for RPS (Francisco, Chris)
- Add YUV444 packed format support for skl+ (Stanislav)
- Invalidate OA TLB when closing perf stream to avoid corruption (Umesh)
- HDCP: fix Ri prime check done during link check (Oliver)
- Rearm heartbeat on sysfs interval change (Chris)
- Fix crtc nv12 etc. plane bitmasks for DPMS off (Ville)
- Treat idling as a RPS downclock event (Chris)
- Leave rps->cur_freq on unpark (Chris)
- Ignore short pulse when EDP panel powered off (Anshuman)
- Keep the engine awake until the next jiffie, to avoid ping-pong on
moderate load (Chris)
- Select the deepest available parking mode for rc6 on IVB (Chris)
- Optimizations to direct submission execlist path (Chris)
- Avoid NULL pointer dereference at intel_read_infoframe() (Chris)
- Fix mode private_flags comparison at atomic_check (Uma, Ville)
- Use forced codec wake on all gen9+ platforms (Kai)
- Schedule oa_config after modifying the contexts (Chris, Lionel)
- Explicitly reset both reg and context runtime on GPU reset (Chris)
- Don't enable DDI IO power on a TypeC port in TBT mode (Imre)
- Fixes to TGL, ICL and EHL vswing tables (Jose)
- Fill all the unused space in the GGTT (Chris, imre)
- Ignore readonly failures when updating relocs (Chris)
- Attempt to find free space earlier for non-pinned VMAs (Chris)
- Only wait for GPU activity before unbinding a GGTT fence (Chris)
- Avoid data loss on small userspace perf OA polling (Ashutosh)
- Watch out for unevictable nodes during eviction (Matt A)
- Reinforce the barrier after GTT updates for Ironlake (Chris)
- Convert various parts of driver to use drm_device based logging (Wambui, Jani)
- Avoid dereferencing already closed context for engine (Chris)
- Enable non-contiguous pipe fusing (Anshuman)
- Add HW readout of Gamma LUT on ICL (Swati S.)
- Use explicit flag to mark unreachable intel_context (Chris)
- Cancel a hung context if already closed (Chris)
- Add DP VSC/HDR SDP data structures and write routines (Gwan-gyeong)
- Report context-is-closed prior to pinning at execbuf (Chris)
- Mark timeline->cacheline as destroyed after rcu grace period (Chris)
- Avoid live-lock with i915_vma_parked() (Chris)
- Avoid gem_context->mutex for simple vma lookup (Chris)
- Rely on direct submission to the queue (Chris)
- Configure DSI transcoder to operate in TE GATE command mode (Vandita)
- Add DI vblank calculation for command mode (Vandita)
- Disable periodic command mode if programmed by GOP (Vandita)
- Use private flags to indicate TE in cmd mode (Vandita)
- Make fences a nice-to-have for FBC on GEN9+ (Jose)
- Fix work queuing issue with mixed virtual engine/physical engine
submissions (Chris)
- Drop final few uses of drm_i915_private.engine (Chris)
- Return early after MISSING_CASE for write_dp_sdp (Chris)
- Include port sync state in the state dump (Ville)
- ELSP workaround switching back to a completed context (Chris)
- Include priority info in trace_ports (Chris)
- Allow for different modes of interruptible i915_active_wait (Chris)
- Split eb_vma into its own allocation (Chris)
- Don't read perf head/tail pointers outside critical section (Lionel)
- Pause CS flow before execlists reset (Chris)
- Make fence revocation unequivocal (Chris)
- Drop cached obj->bind_count (Chris)
- Peek at the next submission for error interrupts (Chris)
- Utilize rcu iteration of context engines (Chris)
- Keep a per-engine request pool for power management ops (Chris)
- Refactor port sync code into normal modeset flow (Ville)
- Check current i915_vma.pin_count status first on unbind (Chris)
- Free request pool from virtual engines (Chris)
- Flush all the reloc_gpu batch (Chris)
- Make exclusive awaits on i915_active optional and allow async waits (Chris)
- Wait until the context is finally retired before releasing engines (Chris)
- Prefer '%ps' for printing function symbol names (Chris)
- Allow setting generic data pointer on intel GT debugfs (Andi)
- Constify DP link computation code more (Ville)
- Simplify MST master transcoder computation (Ville)
- Move TRANS_DDI_FUNC_CTL2 programming where it belongs (Ville)
- Move icl_get_trans_port_sync_config() into the DDI code (Ville)
- Add definitions for VRR registers and bits (Aditya)
- Refactor hardware fence code (Chris)
- Start passing latency as parameter to WM calculation (Stanislav)
- Kernel selftest and debug tracing improvements (Matt A, Chris, Mika)
- Fixes to CI found corner cases and lockdep splats (Chris)
- Overall fixes and refactoring to GEM code (Chris)
- Overall fixes and refactoring to display code (Ville)
- GuC/HuC code improvements (Daniele, Michal Wa)
- Static code checker fixes (Nathan, Ville, Colin, Chris)
- Fix spelling mistake (Chen)
The following changes since commit 8f3d9f354286745c751374f5f1fcafee6b3f3136:
Linux 5.7-rc1 (2020-04-12 12:35:55 -0700)
are available in the Git repository at:
git://anongit.freedesktop.org/drm/drm-intel tags/drm-intel-next-2020-04-17
for you to fetch changes up to b06ef327e26367b9286a2079b31cde8d2161c0d8:
drm/i915: Update DRIVER_DATE to 20200417 (2020-04-17 09:35:00 +0300)
----------------------------------------------------------------
UAPI Changes:
- drm/i915/perf: introduce global sseu pinning
Allow userspace to request at perf/OA open full SSEU configuration
on the system to be able to benchmark 3D workloads, at the cost of not
being able to run media workloads. (Lionel)
Userspace changes: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4021
- drm/i915/perf: add new open param to configure polling of OA buffer
Let application choose how often the OA buffer should be checked on
the CPU side for data availability for choosig between CPU overhead
and realtime nature of data.
Userspace changes: https://patchwork.freedesktop.org/series/74655/
(i915 perf recorder is a tool to capture i915 perf data for viewing
in GPUVis.)
- drm/i915/perf: remove generated code
Removal of the machine generated perf/OA test configurations from i915.
Used by Mesa v17.1-18.0, and shortly replaced by userspace supplied OA
configurations. Removal of configs causes affected Mesa versions to
fall back to earlier kernel behaviour (potentially missing metrics).
(Lionel)
Cross-subsystem Changes:
- Backmerge of drm-next
- Includes tag 'topic/phy-compliance-2020-04-08' from
git://anongit.freedesktop.org/drm/drm-misc
Driver Changes:
- Fix for GitLab issue #27: Support 5k tiled dual DP display on SKL (Ville)
- Fix https://github.com/thesofproject/linux/issues/1719: Broken audio after
S3 resume on JSL platforms. (Kai)
- Add new Tigerlake PCI IDs (Swathi D.)
- Add missing Tigerlake W/As (Matt R.)
- Extended Wa_2006604312 to EHL (Matt A)
- Add DPCD link_rate quirk for Apple 15" MBP 2017 (v3) (Mario)
- Make Wa_14010229206 apply to all Tigerlake steppings (Swathi d)
- Extend hotplug detect retry on TypeC connectors to 5 seconds (Imre)
- Yield the timeslice if caught waiting on a user semaphore (Chris)
- Limit the residual W/A batch to Haswell due to instability on IVB/BYT (Chris)
- TBT AUX should use TC power well ops on Tigerlake (Matt R)
- Update PMINTRMSK holding fw to make it effective for RPS (Francisco, Chris)
- Add YUV444 packed format support for skl+ (Stanislav)
- Invalidate OA TLB when closing perf stream to avoid corruption (Umesh)
- HDCP: fix Ri prime check done during link check (Oliver)
- Rearm heartbeat on sysfs interval change (Chris)
- Fix crtc nv12 etc. plane bitmasks for DPMS off (Ville)
- Treat idling as a RPS downclock event (Chris)
- Leave rps->cur_freq on unpark (Chris)
- Ignore short pulse when EDP panel powered off (Anshuman)
- Keep the engine awake until the next jiffie, to avoid ping-pong on
moderate load (Chris)
- Select the deepest available parking mode for rc6 on IVB (Chris)
- Optimizations to direct submission execlist path (Chris)
- Avoid NULL pointer dereference at intel_read_infoframe() (Chris)
- Fix mode private_flags comparison at atomic_check (Uma, Ville)
- Use forced codec wake on all gen9+ platforms (Kai)
- Schedule oa_config after modifying the contexts (Chris, Lionel)
- Explicitly reset both reg and context runtime on GPU reset (Chris)
- Don't enable DDI IO power on a TypeC port in TBT mode (Imre)
- Fixes to TGL, ICL and EHL vswing tables (Jose)
- Fill all the unused space in the GGTT (Chris, imre)
- Ignore readonly failures when updating relocs (Chris)
- Attempt to find free space earlier for non-pinned VMAs (Chris)
- Only wait for GPU activity before unbinding a GGTT fence (Chris)
- Avoid data loss on small userspace perf OA polling (Ashutosh)
- Watch out for unevictable nodes during eviction (Matt A)
- Reinforce the barrier after GTT updates for Ironlake (Chris)
- Convert various parts of driver to use drm_device based logging (Wambui, Jani)
- Avoid dereferencing already closed context for engine (Chris)
- Enable non-contiguous pipe fusing (Anshuman)
- Add HW readout of Gamma LUT on ICL (Swati S.)
- Use explicit flag to mark unreachable intel_context (Chris)
- Cancel a hung context if already closed (Chris)
- Add DP VSC/HDR SDP data structures and write routines (Gwan-gyeong)
- Report context-is-closed prior to pinning at execbuf (Chris)
- Mark timeline->cacheline as destroyed after rcu grace period (Chris)
- Avoid live-lock with i915_vma_parked() (Chris)
- Avoid gem_context->mutex for simple vma lookup (Chris)
- Rely on direct submission to the queue (Chris)
- Configure DSI transcoder to operate in TE GATE command mode (Vandita)
- Add DI vblank calculation for command mode (Vandita)
- Disable periodic command mode if programmed by GOP (Vandita)
- Use private flags to indicate TE in cmd mode (Vandita)
- Make fences a nice-to-have for FBC on GEN9+ (Jose)
- Fix work queuing issue with mixed virtual engine/physical engine
submissions (Chris)
- Drop final few uses of drm_i915_private.engine (Chris)
- Return early after MISSING_CASE for write_dp_sdp (Chris)
- Include port sync state in the state dump (Ville)
- ELSP workaround switching back to a completed context (Chris)
- Include priority info in trace_ports (Chris)
- Allow for different modes of interruptible i915_active_wait (Chris)
- Split eb_vma into its own allocation (Chris)
- Don't read perf head/tail pointers outside critical section (Lionel)
- Pause CS flow before execlists reset (Chris)
- Make fence revocation unequivocal (Chris)
- Drop cached obj->bind_count (Chris)
- Peek at the next submission for error interrupts (Chris)
- Utilize rcu iteration of context engines (Chris)
- Keep a per-engine request pool for power management ops (Chris)
- Refactor port sync code into normal modeset flow (Ville)
- Check current i915_vma.pin_count status first on unbind (Chris)
- Free request pool from virtual engines (Chris)
- Flush all the reloc_gpu batch (Chris)
- Make exclusive awaits on i915_active optional and allow async waits (Chris)
- Wait until the context is finally retired before releasing engines (Chris)
- Prefer '%ps' for printing function symbol names (Chris)
- Allow setting generic data pointer on intel GT debugfs (Andi)
- Constify DP link computation code more (Ville)
- Simplify MST master transcoder computation (Ville)
- Move TRANS_DDI_FUNC_CTL2 programming where it belongs (Ville)
- Move icl_get_trans_port_sync_config() into the DDI code (Ville)
- Add definitions for VRR registers and bits (Aditya)
- Refactor hardware fence code (Chris)
- Start passing latency as parameter to WM calculation (Stanislav)
- Kernel selftest and debug tracing improvements (Matt A, Chris, Mika)
- Fixes to CI found corner cases and lockdep splats (Chris)
- Overall fixes and refactoring to GEM code (Chris)
- Overall fixes and refactoring to display code (Ville)
- GuC/HuC code improvements (Daniele, Michal Wa)
- Static code checker fixes (Nathan, Ville, Colin, Chris)
- Fix spelling mistake (Chen)
----------------------------------------------------------------
Aditya Swarup (1):
drm/i915/tgl: Add definitions for VRR registers and bits
Andi Shyti (1):
drm/i915/gt: allow setting generic data pointer
Animesh Manna (7):
drm/amd/display: Align macro name as per DP spec
drm/dp: get/set phy compliance pattern
drm/i915/dp: Made intel_dp_adjust_train() non-static
drm/i915/dp: Preparation for DP phy compliance auto test
drm/i915/dp: Add debugfs entry for DP phy compliance
drm/i915/dp: Register definition for DP compliance register
drm/i915/dp: Program vswing, pre-emphasis, test-pattern
Anshuman Gupta (2):
drm/i915: Enable non-contiguous pipe fusing
drm/i915/edp: Ignore short pulse when panel powered off
Ashutosh Dixit (1):
drm/i915/perf: Do not clear pollin for small user read buffers
Chen Zhou (1):
drm/i915/gt: fix spelling mistake "undeflow" -> "underflow"
Chris Wilson (80):
drm/i915/gt: Restrict gen7 w/a batch to Haswell
drm/i915: Move GGTT fence registers under gt/
drm/i915/gt: Pull restoration of GGTT fences underneath the GT
drm/i915: Remove manual save/resume of fence register state
drm/i915/gt: Allocate i915_fence_reg array
drm/i915/gt: Restore check for invalid vma for fencing
drm/i915/gem: Check for a closed context when looking up an engine
drm/i915: Fix up documentation paths after file moving
drm/i915/gt: Always reschedule the new heartbeat
drm/i915: Prefer '%ps' for printing function symbol names
drm/i915: Use explicit flag to mark unreachable intel_context
drm/i915/gt: Cancel a hung context if already closed
drm/i915/gt: Report context-is-closed prior to pinning
drm/i915/gt: Use the correct err_unlock unwind path for a closed context
drm/i915/gt: Treat idling as a RPS downclock event
drm/i915/gt: Leave rps->cur_freq on unpark
drm/i915/gt: Mark timeline->cacheline as destroyed after rcu grace period
drm/i915: Avoid live-lock with i915_vma_parked()
drm/i915/gem: Avoid gem_context->mutex for simple vma lookup
drm/i915: Rely on direct submission to the queue
drm/i915: Extend intel_wakeref to support delayed puts
drm/i915/gt: Delay release of engine-pm after last retirement
drm/i915/gt: Only delay the context barrier pm
drm/i915/gt: Select the deepest available parking mode for rc6
drm/i915/execlists: Drop setting sibling priority hint on virtual engines
drm/i915/selftests: Measure the energy consumed while in RC6
drm/i915/execlists: Pull tasklet interrupt-bh local to direct submission
drm/i915: Immediately execute the fenced work
drm/i915/gt: Stage the transfer of the virtual breadcrumb
drm/i915: Drop final few uses of drm_i915_private.engine
drm/i915/display: Remove useless but deadly local
drm/i915/display: Return early after MISSING_CASE for write_dp_sdp
drm/i915: Differentiate between aliasing-ppgtt and ggtt pinning
drm/i915/execlists: Workaround switching back to a completed context
drm/i915/execlists: Include priority info in trace_ports
drm/i915/selftests: Check timeout before flush and cond checks
drm/i915: Allow for different modes of interruptible i915_active_wait
drm/i915: Wrap i915_active in a simple kreffed struct
drm/i915/perf: Schedule oa_config after modifying the contexts
drm/i915/gem: Split eb_vma into its own allocation
drm/i915/execlists: Explicitly reset both reg and context runtime
drm/i915/execlists: Double check breadcrumb before crying foul
drm/i915: Defer kicking the tasklet until all rescheduling is complete
drm/i915/gt: Include a few tracek for timeslicing
drm/i915/selftests: Tidy up an error message for live_error_interrupt
drm/i915/execlists: Pause CS flow before reset
drm/i915/gt: Include the execlists CCID of each port in the engine dump
drm/i915/gt: Fill all the unused space in the GGTT
drm/i915/gem: Ignore readonly failures when updating relocs
drm/i915/gt: Align engine dump active/pending
drm/i915/gem: Try allocating va from free space
drm/i915/gt: Only wait for GPU activity before unbinding a GGTT fence
drm/i915/gt: Store the fence details on the fence
drm/i915/gt: Make fence revocation unequivocal
drm/i915/gem: Drop cached obj->bind_count
drm/i915/uc: Cleanup kerneldoc warnings
drm/i915/execlists: Peek at the next submission for error interrupts
drm/i915/gem: Utilize rcu iteration of context engines
drm/i915/selftests: Check for has-reset before testing hostile contexts
drm/i915: Keep a per-engine request pool
drm/i915: Avoid setting timer->expires to 0
drm/i915: Revoke mmap before fence
drm/i915: Check current i915_vma.pin_count status first on unbind
drm/i915/selftests: Wait until we start timeslicing after a submit
drm/i915/gt: Free request pool from virtual engines
drm/i915/gem: Flush all the reloc_gpu batch
drm/i915/gem: Take DBG_FORCE_RELOC into account prior to using reloc_gpu
drm/i915: Make exclusive awaits on i915_active optional
drm/i915: Allow asynchronous waits on the i915_active barriers
drm/i915/gem: Wait until the context is finally retired before releasing engines
drm/i915/gem: Promote 'remain' to unsigned long
drm/i915/gt: Yield the timeslice if caught waiting on a user semaphore
drm/i915/selftests: Drop vestigal timeslicing assert
drm/i915/gt: Mark up racy read of intel_ring.head
drm/i915/gt: Mark up racy check of breadcrumb irq enabled
drm/i915/selftests: Take an explicit ref for rq->batch
drm/i915/selftests: Check for an already completed timeslice
agp/intel: Reinforce the barrier after GTT updates
drm/i915/selftests: Exercise basic RPS interrupt generation
drm/i915/gt: Update PMINTRMSK holding fw
Colin Ian King (1):
drm/i915: remove redundant assignment to variable err
Daniele Ceraolo Spurio (5):
drm/i915/guc: drop stage_pool debugfs
drm/i915/huc: make "support huc" reflect HW capabilities
drm/i915/debugfs: move uC printers and update debugfs file names
drm/i915/uc: Move uC debugfs to its own folder under GT
drm/i915/uc: do not free err log on uc_fini
Gwan-gyeong Mun (4):
drm: Add DP1.4 VSC SDP Payload related Data Structures
drm/i915/dp: Add compute routine for DP VSC SDP
drm/i915/dp: Add compute routine for DP HDR Metadata Infoframe SDP
drm/i915/dp: Add writing of DP SDPs
Imre Deak (3):
drm/i915/icl+: Don't enable DDI IO power on a TypeC port in TBT mode
drm/i915: Add a retry counter for hotplug detect retries
drm/i915: Extend hotplug detect retry on TypeC connectors to 5 seconds
Jani Nikula (30):
drm/i915/ddi: use struct drm_device based logging
drm/i915/display_power: use struct drm_device based logging
drm/i915/dp_aux_backlight: use struct drm_device based logging
drm/i915/dp_mst: use struct drm_device based logging
drm/i915/dsi: use struct drm_device based logging
drm/i915/hdmi: use struct drm_device based logging
drm/i915/dsi: use struct drm_device based logging
drm/i915/connector: use MISSING_CASE instead of logging
drm/i915/tv: use struct drm_device based logging
drm/i915/display: clean up intel_PLL_is_valid()
drm/i915/display: use struct drm_device based logging
drm/i915/psr: use struct drm_device based logging
drm/i915/wopcm: convert to drm device based logging
drm/i915/audio: use struct drm_device based logging
drm/i915/panel: use struct drm_device based logging
drm/i915/tc: use struct drm_device based logging
drm/i915/dp: use struct drm_device based logging
drm/i915/crt: use struct drm_device based logging
drm/i915/debugfs: use struct drm_device based logging
drm/i915/bw: use struct drm_device based logging
drm/i915/state: use struct drm_device based logging
drm/i915/switcheroo: use struct drm_device based logging
drm/i915/uc: prefer struct drm_device based logging
drm/i915/error: prefer struct drm_device based logging
drm/i915/pmu: prefer struct drm_device based logging
drm/i915/dram: prefer struct drm_device based logging
drm/i915/uncore: prefer struct drm_device based logging
drm/i915/stolen: prefer struct drm_device based logging
drm/i915/gt: prefer struct drm_device based logging
drm/i915/uc: prefer struct drm_device based logging
Joonas Lahtinen (3):
Merge drm/drm-next into drm-intel-next-queued
Merge tag 'topic/phy-compliance-2020-04-08' of git://anongit.freedesktop.org/drm/drm-misc into drm-intel-next-queued
drm/i915: Update DRIVER_DATE to 20200417
José Roberto de Souza (4):
drm/i915/display/fbc: Make fences a nice-to-have for GEN9+
drm/i915/dp: Return the right vswing tables
drm/i915/dp/ehl: Update vswing table for HBR and RBR
drm/i915/tc/icl: Update TC vswing tables
Kai Vehmanen (2):
drm/i915: use forced codec wake on all gen9+ platforms
drm/i915: do AUD_FREQ_CNTRL state save on all gen9+ platforms
Lionel Landwerlin (7):
drm/i915/perf: remove generated code
drm/i915/perf: remove redundant power configuration register override
drm/i915/perf: introduce global sseu pinning
drm/i915/perf: rework aging tail workaround
drm/i915/perf: move pollin setup to non hw specific code
drm/i915/perf: add new open param to configure polling of OA buffer
drm/i915/perf: don't read head/tail pointers outside critical section
Mario Kleiner (1):
drm/i915/dp: Add dpcd link_rate quirk for Apple 15" MBP 2017 (v3)
Matt Atwood (1):
drm/i915/ehl: extended Wa_2006604312 to ehl
Matt Roper (4):
drm/i915/tgl: Add Wa_14010477008:tgl
drm/i915/tgl: Extend Wa_1409767108:tgl to B0 stepping
drm/i915/tgl: Initialize multicast register steering for workarounds
drm/i915/tgl: TBT AUX should use TC power well ops
Matthew Auld (3):
drm/i915/selftests/perf: watch out for stolen objects
drm/i915/selftests: mark huge_gem_object as not shrinkable
drm/i915/evict: watch out for unevictable nodes
Michal Wajdeczko (2):
drm/i915/huc: Add more errors for I915_PARAM_HUC_STATUS
drm/i915/huc: Fix HuC register used in debugfs
Mika Kuoppala (1):
drm/i915: Report all failed registers for ctx isolation
Nathan Chancellor (1):
drm/i915: Cast remain to unsigned long in eb_relocate_vma
Oliver Barta (1):
drm/i915: HDCP: fix Ri prime check done during link check
Stanislav Lisovskiy (2):
drm/i915: Start passing latency as parameter
drm/i915: Add YUV444 packed format support for skl+
Swathi Dhanavanthri (2):
drm/i915/tgl: Add new PCI IDs to TGL
drm/i915/tgl: Make Wa_14010229206 permanent
Swati Sharma (1):
drm/i915/color: Extract icl_read_luts()
Uma Shankar (1):
drm/i915/display: Fix mode private_flags comparison at atomic_check
Umesh Nerlige Ramappa (1):
drm/i915/perf: Invalidate OA TLB on when closing perf stream
Vandita Kulkarni (5):
drm/i915/dsi: Configure transcoder operation for command mode.
drm/i915/dsi: Add vblank calculation for command mode
drm/i915/dsi: Add cmd mode flags in display mode private flags
drm/i915/dsi: Add check for periodic command mode
drm/i915/dsi: Use private flags to indicate TE in cmd mode
Ville Syrjälä (16):
drm/i915: Fix crtc nv12 etc. plane bitmasks for DPMS off
drm/i915: Get rid of silly void* from MST code
drm: Constify adjusted_mode a bit
drm/i915/mst: Use .compute_config_late() to compute master transcoder
drm/i915: Move TRANS_DDI_FUNC_CTL2 programming where it belongs
drm/i915: Drop usless master_transcoder assignments
drm/i915: Move icl_get_trans_port_sync_config() into the DDI code
drm/i915: Use REG_FIELD_PREP() & co. for TRANS_DDI_FUNC_CTL2
drm/i915: Include port sync state in the state dump
drm/i915: Store cpu_transcoder_mask in device info
drm/i915: Implement port sync for SKL+
drm/i915: Eliminate port sync copy pasta
drm/i915: Fix port sync code to work with >2 pipes
drm/i915: Do pipe updates after enables for everyone
drm/i915: Pass atomic state to encoder hooks
drm/i915: Move the port sync DP_TP_CTL stuff to the encoder hook
Wambui Karuga (10):
drm/i915/fbc: convert to drm_device based logging macros.
drm/i915/fbdev: convert to drm_device based logging.
drm/i915/hdcp: convert to struct drm_device based logging.
drm/i915/ggtt: convert to drm_device based logging macros.
drm/i915/lrc: convert to struct drm_device based logging macros.
drm/i915/rc6: convert to struct drm_device based logging macros.
drm/i915/renderstate: use struct drm_device based logging macros.
drm/i915/ring_submission: use drm_device based logging macros.
drm/i915/rps: use struct drm_device based logging macros.
drm/i915/workarounds: convert to drm_device based logging macros.
Documentation/gpu/i915.rst | 6 +-
drivers/char/agp/intel-gtt.c | 4 +-
drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c | 2 +-
drivers/gpu/drm/drm_dp_helper.c | 96 +++
drivers/gpu/drm/i915/Makefile | 23 +-
drivers/gpu/drm/i915/display/icl_dsi.c | 167 +++-
drivers/gpu/drm/i915/display/intel_atomic_plane.c | 21 +-
drivers/gpu/drm/i915/display/intel_atomic_plane.h | 2 +
drivers/gpu/drm/i915/display/intel_audio.c | 18 +-
drivers/gpu/drm/i915/display/intel_bw.c | 9 +-
drivers/gpu/drm/i915/display/intel_color.c | 121 ++-
drivers/gpu/drm/i915/display/intel_connector.c | 2 +-
drivers/gpu/drm/i915/display/intel_crt.c | 36 +-
drivers/gpu/drm/i915/display/intel_ddi.c | 522 ++++++++----
drivers/gpu/drm/i915/display/intel_ddi.h | 3 +-
drivers/gpu/drm/i915/display/intel_display.c | 470 +++--------
drivers/gpu/drm/i915/display/intel_display.h | 8 +-
.../gpu/drm/i915/display/intel_display_debugfs.c | 12 +-
drivers/gpu/drm/i915/display/intel_display_power.c | 36 +-
drivers/gpu/drm/i915/display/intel_display_types.h | 39 +-
drivers/gpu/drm/i915/display/intel_dp.c | 932 +++++++++++++++++----
drivers/gpu/drm/i915/display/intel_dp.h | 4 +
.../gpu/drm/i915/display/intel_dp_aux_backlight.c | 84 +-
.../gpu/drm/i915/display/intel_dp_link_training.c | 9 +-
.../gpu/drm/i915/display/intel_dp_link_training.h | 4 +
drivers/gpu/drm/i915/display/intel_dp_mst.c | 153 ++--
drivers/gpu/drm/i915/display/intel_dsi.c | 9 +-
drivers/gpu/drm/i915/display/intel_dsi_vbt.c | 11 +-
drivers/gpu/drm/i915/display/intel_dvo.c | 9 +-
drivers/gpu/drm/i915/display/intel_fbc.c | 84 +-
drivers/gpu/drm/i915/display/intel_fbdev.c | 96 ++-
drivers/gpu/drm/i915/display/intel_global_state.c | 5 +-
drivers/gpu/drm/i915/display/intel_hdcp.c | 6 +-
drivers/gpu/drm/i915/display/intel_hdcp.h | 4 +-
drivers/gpu/drm/i915/display/intel_hdmi.c | 256 ++++--
drivers/gpu/drm/i915/display/intel_hotplug.c | 16 +-
drivers/gpu/drm/i915/display/intel_hotplug.h | 3 +-
drivers/gpu/drm/i915/display/intel_lvds.c | 22 +-
drivers/gpu/drm/i915/display/intel_overlay.c | 2 +-
drivers/gpu/drm/i915/display/intel_panel.c | 22 +-
drivers/gpu/drm/i915/display/intel_panel.h | 3 +-
drivers/gpu/drm/i915/display/intel_psr.c | 47 +-
drivers/gpu/drm/i915/display/intel_sdvo.c | 22 +-
drivers/gpu/drm/i915/display/intel_sprite.c | 25 +-
drivers/gpu/drm/i915/display/intel_tc.c | 47 +-
drivers/gpu/drm/i915/display/intel_tv.c | 15 +-
drivers/gpu/drm/i915/display/vlv_dsi.c | 15 +-
drivers/gpu/drm/i915/gem/i915_gem_context.c | 85 +-
drivers/gpu/drm/i915/gem/i915_gem_context.h | 4 +
drivers/gpu/drm/i915/gem/i915_gem_domain.c | 2 +-
drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c | 365 ++++----
drivers/gpu/drm/i915/gem/i915_gem_object.c | 1 -
drivers/gpu/drm/i915/gem/i915_gem_object_types.h | 3 -
drivers/gpu/drm/i915/gem/i915_gem_pages.c | 2 -
drivers/gpu/drm/i915/gem/i915_gem_shrinker.c | 18 +-
drivers/gpu/drm/i915/gem/i915_gem_stolen.c | 4 +-
.../gpu/drm/i915/gem/selftests/huge_gem_object.c | 3 +-
.../gpu/drm/i915/gem/selftests/i915_gem_context.c | 2 +-
drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c | 4 -
.../gpu/drm/i915/gem/selftests/i915_gem_object.c | 2 +-
drivers/gpu/drm/i915/gt/debugfs_engines.c | 2 +-
drivers/gpu/drm/i915/gt/debugfs_gt.c | 15 +-
drivers/gpu/drm/i915/gt/debugfs_gt.h | 9 +-
drivers/gpu/drm/i915/gt/debugfs_gt_pm.c | 10 +-
drivers/gpu/drm/i915/gt/intel_breadcrumbs.c | 6 +-
drivers/gpu/drm/i915/gt/intel_context.c | 5 +
drivers/gpu/drm/i915/gt/intel_engine.h | 2 +
drivers/gpu/drm/i915/gt/intel_engine_cs.c | 127 +--
drivers/gpu/drm/i915/gt/intel_engine_heartbeat.c | 2 +-
drivers/gpu/drm/i915/gt/intel_engine_pm.c | 2 +-
drivers/gpu/drm/i915/gt/intel_engine_pm.h | 6 +
drivers/gpu/drm/i915/gt/intel_engine_types.h | 12 +
drivers/gpu/drm/i915/gt/intel_ggtt.c | 52 +-
.../intel_ggtt_fencing.c} | 170 ++--
.../intel_ggtt_fencing.h} | 17 +-
drivers/gpu/drm/i915/gt/intel_gt.c | 3 +-
drivers/gpu/drm/i915/gt/intel_gt_irq.c | 15 +-
drivers/gpu/drm/i915/gt/intel_gt_pm.c | 5 +-
drivers/gpu/drm/i915/gt/intel_gt_requests.c | 2 +-
drivers/gpu/drm/i915/gt/intel_gtt.h | 5 +-
drivers/gpu/drm/i915/gt/intel_lrc.c | 252 ++++--
drivers/gpu/drm/i915/gt/intel_rc6.c | 39 +-
drivers/gpu/drm/i915/gt/intel_renderstate.c | 2 +-
drivers/gpu/drm/i915/gt/intel_reset.c | 16 +-
drivers/gpu/drm/i915/gt/intel_ring.h | 5 +-
drivers/gpu/drm/i915/gt/intel_ring_submission.c | 33 +-
drivers/gpu/drm/i915/gt/intel_rps.c | 105 +--
drivers/gpu/drm/i915/gt/intel_sseu.c | 33 +-
drivers/gpu/drm/i915/gt/intel_timeline.c | 12 +-
drivers/gpu/drm/i915/gt/intel_workarounds.c | 21 +-
drivers/gpu/drm/i915/gt/selftest_gt_pm.c | 2 +
drivers/gpu/drm/i915/gt/selftest_lrc.c | 117 ++-
drivers/gpu/drm/i915/gt/selftest_rc6.c | 45 +-
drivers/gpu/drm/i915/gt/selftest_rps.c | 223 +++++
drivers/gpu/drm/i915/gt/selftest_rps.h | 11 +
drivers/gpu/drm/i915/gt/uc/intel_guc.c | 46 +-
drivers/gpu/drm/i915/gt/uc/intel_guc.h | 7 +
drivers/gpu/drm/i915/gt/uc/intel_guc_debugfs.c | 42 +
drivers/gpu/drm/i915/gt/uc/intel_guc_debugfs.h | 14 +
drivers/gpu/drm/i915/gt/uc/intel_guc_fw.c | 14 -
drivers/gpu/drm/i915/gt/uc/intel_guc_fw.h | 1 -
drivers/gpu/drm/i915/gt/uc/intel_guc_log.c | 97 ++-
drivers/gpu/drm/i915/gt/uc/intel_guc_log.h | 4 +
drivers/gpu/drm/i915/gt/uc/intel_guc_log_debugfs.c | 124 +++
drivers/gpu/drm/i915/gt/uc/intel_guc_log_debugfs.h | 15 +
drivers/gpu/drm/i915/gt/uc/intel_huc.c | 53 +-
drivers/gpu/drm/i915/gt/uc/intel_huc.h | 2 +
drivers/gpu/drm/i915/gt/uc/intel_huc_debugfs.c | 36 +
drivers/gpu/drm/i915/gt/uc/intel_huc_debugfs.h | 14 +
drivers/gpu/drm/i915/gt/uc/intel_huc_fw.c | 17 -
drivers/gpu/drm/i915/gt/uc/intel_huc_fw.h | 1 -
drivers/gpu/drm/i915/gt/uc/intel_uc.c | 35 +-
drivers/gpu/drm/i915/gt/uc/intel_uc.h | 1 +
drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.c | 30 +
drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.h | 14 +
drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c | 56 +-
drivers/gpu/drm/i915/gt/uc/intel_uc_fw.h | 3 +-
drivers/gpu/drm/i915/gvt/aperture_gm.c | 2 +-
drivers/gpu/drm/i915/i915_active.c | 137 ++-
drivers/gpu/drm/i915/i915_active.h | 14 +-
drivers/gpu/drm/i915/i915_debugfs.c | 298 +------
drivers/gpu/drm/i915/i915_drv.c | 4 -
drivers/gpu/drm/i915/i915_drv.h | 13 +-
drivers/gpu/drm/i915/i915_gem.c | 20 +-
drivers/gpu/drm/i915/i915_gem_evict.c | 7 +-
drivers/gpu/drm/i915/i915_gpu_error.c | 2 +-
drivers/gpu/drm/i915/i915_irq.c | 8 +-
drivers/gpu/drm/i915/i915_pci.c | 23 +-
drivers/gpu/drm/i915/i915_perf.c | 628 +++++++-------
drivers/gpu/drm/i915/i915_perf_types.h | 46 +-
drivers/gpu/drm/i915/i915_pmu.c | 4 +-
drivers/gpu/drm/i915/i915_reg.h | 130 ++-
drivers/gpu/drm/i915/i915_request.c | 29 +-
drivers/gpu/drm/i915/i915_request.h | 2 +
drivers/gpu/drm/i915/i915_scheduler.c | 10 +
drivers/gpu/drm/i915/i915_sw_fence.c | 2 +-
drivers/gpu/drm/i915/i915_sw_fence_work.c | 5 +-
drivers/gpu/drm/i915/i915_sw_fence_work.h | 23 +
drivers/gpu/drm/i915/i915_switcheroo.c | 4 +-
drivers/gpu/drm/i915/i915_utils.c | 3 +-
drivers/gpu/drm/i915/i915_vma.c | 93 +-
drivers/gpu/drm/i915/i915_vma.h | 4 +-
drivers/gpu/drm/i915/intel_device_info.c | 41 +-
drivers/gpu/drm/i915/intel_device_info.h | 1 +
drivers/gpu/drm/i915/intel_dram.c | 3 +-
drivers/gpu/drm/i915/intel_pm.c | 12 +-
drivers/gpu/drm/i915/intel_uncore.c | 24 +-
drivers/gpu/drm/i915/intel_uncore.h | 6 +-
drivers/gpu/drm/i915/intel_wakeref.c | 12 +-
drivers/gpu/drm/i915/intel_wakeref.h | 22 +-
drivers/gpu/drm/i915/intel_wopcm.c | 22 +-
drivers/gpu/drm/i915/oa/i915_oa_bdw.c | 90 --
drivers/gpu/drm/i915/oa/i915_oa_bdw.h | 16 -
drivers/gpu/drm/i915/oa/i915_oa_bxt.c | 88 --
drivers/gpu/drm/i915/oa/i915_oa_bxt.h | 16 -
drivers/gpu/drm/i915/oa/i915_oa_cflgt2.c | 89 --
drivers/gpu/drm/i915/oa/i915_oa_cflgt2.h | 16 -
drivers/gpu/drm/i915/oa/i915_oa_cflgt3.c | 89 --
drivers/gpu/drm/i915/oa/i915_oa_cflgt3.h | 16 -
drivers/gpu/drm/i915/oa/i915_oa_chv.c | 89 --
drivers/gpu/drm/i915/oa/i915_oa_chv.h | 16 -
drivers/gpu/drm/i915/oa/i915_oa_cnl.c | 101 ---
drivers/gpu/drm/i915/oa/i915_oa_cnl.h | 16 -
drivers/gpu/drm/i915/oa/i915_oa_glk.c | 88 --
drivers/gpu/drm/i915/oa/i915_oa_glk.h | 16 -
drivers/gpu/drm/i915/oa/i915_oa_hsw.c | 118 ---
drivers/gpu/drm/i915/oa/i915_oa_hsw.h | 16 -
drivers/gpu/drm/i915/oa/i915_oa_icl.c | 98 ---
drivers/gpu/drm/i915/oa/i915_oa_icl.h | 16 -
drivers/gpu/drm/i915/oa/i915_oa_kblgt2.c | 89 --
drivers/gpu/drm/i915/oa/i915_oa_kblgt2.h | 16 -
drivers/gpu/drm/i915/oa/i915_oa_kblgt3.c | 89 --
drivers/gpu/drm/i915/oa/i915_oa_kblgt3.h | 16 -
drivers/gpu/drm/i915/oa/i915_oa_sklgt2.c | 88 --
drivers/gpu/drm/i915/oa/i915_oa_sklgt2.h | 16 -
drivers/gpu/drm/i915/oa/i915_oa_sklgt3.c | 89 --
drivers/gpu/drm/i915/oa/i915_oa_sklgt3.h | 16 -
drivers/gpu/drm/i915/oa/i915_oa_sklgt4.c | 89 --
drivers/gpu/drm/i915/oa/i915_oa_sklgt4.h | 16 -
drivers/gpu/drm/i915/oa/i915_oa_tgl.c | 121 ---
drivers/gpu/drm/i915/oa/i915_oa_tgl.h | 16 -
drivers/gpu/drm/i915/selftests/i915_active.c | 12 +-
drivers/gpu/drm/i915/selftests/i915_gem.c | 2 -
drivers/gpu/drm/i915/selftests/i915_gem_evict.c | 26 +-
drivers/gpu/drm/i915/selftests/i915_gem_gtt.c | 1 -
drivers/gpu/drm/i915/selftests/i915_perf.c | 98 ++-
drivers/gpu/drm/i915/selftests/i915_request.c | 16 +-
.../gpu/drm/i915/selftests/intel_memory_region.c | 5 +-
drivers/gpu/drm/i915/selftests/mock_gem_device.c | 6 +-
include/drm/drm_dp_helper.h | 170 +++-
include/drm/i915_pciids.h | 8 +-
include/uapi/drm/i915_drm.h | 24 +
192 files changed, 5326 insertions(+), 4357 deletions(-)
rename drivers/gpu/drm/i915/{i915_gem_fence_reg.c => gt/intel_ggtt_fencing.c} (88%)
rename drivers/gpu/drm/i915/{i915_gem_fence_reg.h => gt/intel_ggtt_fencing.h} (86%)
create mode 100644 drivers/gpu/drm/i915/gt/selftest_rps.c
create mode 100644 drivers/gpu/drm/i915/gt/selftest_rps.h
create mode 100644 drivers/gpu/drm/i915/gt/uc/intel_guc_debugfs.c
create mode 100644 drivers/gpu/drm/i915/gt/uc/intel_guc_debugfs.h
create mode 100644 drivers/gpu/drm/i915/gt/uc/intel_guc_log_debugfs.c
create mode 100644 drivers/gpu/drm/i915/gt/uc/intel_guc_log_debugfs.h
create mode 100644 drivers/gpu/drm/i915/gt/uc/intel_huc_debugfs.c
create mode 100644 drivers/gpu/drm/i915/gt/uc/intel_huc_debugfs.h
create mode 100644 drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.c
create mode 100644 drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.h
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_bdw.c
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_bdw.h
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_bxt.c
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_bxt.h
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_cflgt2.c
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_cflgt2.h
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_cflgt3.c
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_cflgt3.h
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_chv.c
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_chv.h
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_cnl.c
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_cnl.h
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_glk.c
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_glk.h
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_hsw.c
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_hsw.h
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_icl.c
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_icl.h
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_kblgt2.c
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_kblgt2.h
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_kblgt3.c
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_kblgt3.h
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_sklgt2.c
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_sklgt2.h
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_sklgt3.c
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_sklgt3.h
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_sklgt4.c
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_sklgt4.h
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_tgl.c
delete mode 100644 drivers/gpu/drm/i915/oa/i915_oa_tgl.h
More information about the dri-devel
mailing list