[PULL] drm-intel-next

Joonas Lahtinen joonas.lahtinen at linux.intel.com
Wed Feb 14 09:22:58 UTC 2018

Hi Dave,

CI has been really effective in catching problems before users have reported
them to us. All Bugzillas closed from this tag are from our CI reports!

Due to FOSDEM prep and travel, there's quite a hunk of patches, I've tried
to highlight the ones with most impact on the top.

Regards, Joonas

The following changes since commit 559f17bec508548850654dd04525fd69d90f6d4e:

  Merge tag 'drm-misc-next-fixes-2018-01-18' of git://anongit.freedesktop.org/drm/drm-misc into drm-next (2018-01-25 11:42:25 +1000)

are available in the Git repository at:

  git://anongit.freedesktop.org/drm/drm-intel tags/drm-intel-next-2018-02-07

for you to fetch changes up to 2f2f2db86d63605b1f57780ead21d4968e9d0bf3:

  drm/i915: Update DRIVER_DATE to 20180207 (2018-02-07 09:26:04 +0200)

UAPI Changes:

- Userspace whitelist register GEN9_SLICE_COMMON_ECO_CHICKEN1 for GLK (Kenneth)
- Non-existent PMU counters are not placed to sysfs (Tvrtko)
- Add a note to deprecate I915_SET_COLORKEY_NONE and ignore it (Ville)
	* Intel DDX never ended using it, and implementation was wonky

Core Changes:

- Moved away from struct timeval into ktime_t in prep for 2038 (Arnd)
	* Merged the i915 portion through drm-tip, no core dependencies

Driver Changes:

- Base support for Icelake and Icelake PCH (Anusha, Rodrigo, Mahesh, Paulo, James, Kelvin)
- Add AUX-F port support for Cannonlake (Rodrigo)
- New DMC firmware for 1.07 Cannonlake (Anusha)
	* Go to linux-firmware.git to get it
- Reject non-cursor planes nearly (3 px) out of screen on GLK/CNL (Imre)
- Y/Yf modifiers restored for SKL+ sprites (Ville)
- Compressed framebuffer support for sprites (Ville)
- Tune down overly aggressive shrinking (Chris)
- Shrink kmem caches when GPU is idle (Chris)
- EDID bit-banging fallback for HDMI EDID (Stefan)
- Don't boost the GPU when the waited request is already running (Chris)
- Avoid GLK/BXT CDCLK frequency locking timeouts (Imre)
- Limit DP link rate according to VBT on CNL+ (Jani)
- Skip post-reset request emission if the engine is not idle (Chris)
- Report any link training error on a fixed eDP panel as errors (Manasi)
- DSI panel fixes for Bay Trail (Hans)
- Selftest additions and improvements (Chris, Matt)
- DMA fence test additions and accompanying fixes (Chris)
- Power domain vs. register access fix (Maarten)
- Squelch warnings for people with teensy framebuffers (stride < 512) (Maarten)
- Increase Render/Media power gating hysteresis for Gen9+ (Chris)
- HDMI vswing display workaround for Gen9+ (Ville)
- GuC code cleanup and lockdep fixes (Sagar, Michal Wa.)
- Continuously run hangcheck for simplicity (Chris)
- Execlist debugging improvements (Chris)
- GuC debugging improvements (Sujaritha, Michal Wa., Sagar)
- Command parser boundary checks (Michal Srb)
- Add a workaround for 3DSTATE_SAMPLE_PATTERN on CNL (Rafael)
- Fix PMU enabling race condition (Tvrtko)
- Usual smaller testing and debugging improvements

Abdiel Janulgue (1):
      drm/i915: Ignore TMDS clock limit for DP++ when EDID override is set

Anusha Srivatsa (8):
      drm/i915/glk: Disable Guc and HuC on GLK
      drm/i915/dmc: DMC 1.07 for Cannonlake
      drm/i915/icp: Introduce Ice Lake PCH
      drm/i915/icp: Get/set proper Raw clock frequency on ICP
      drm/i915/icp: Add Panel Power Sequencing Support
      drm/i915/icp: Add backlight Support for ICP
      drm/i915/icp: add ICP gmbus and gpio support
      drm/i915/icp: Add the ID for ICL PCH - ICP

Arnd Bergmann (1):
      drm: i915: remove timeval users

C, Ramalingam (2):
      drm/i915: Runtime disable for eDP DRRS
      i915/drrs/debugfs: psr status info addition

Chris Wilson (51):
      drm/i915/selftests: Tweak igt_ggtt_page to speed it up
      drm/i915/selftests: Allow random array allocation to fail
      drm/i915: Delete defunct i915_gem_request_assign()
      drm/i915/execlists: Clear context-switch interrupt earlier in the reset
      drm/i915/execlists: Record elsp offset during engine setup
      drm/i915/execlists: Tidy enabling execlists
      drm/i915: Hold rpm wakeref for modifying the global seqno
      drm/i915: Assert all signalers we depended on did indeed signal
      drm/i915/execlists: Assert there are no simple cycles in the dependencies
      drm/i915/execlists: Reduce list_for_each_safe+list_safe_reset_next
      drm/i915: Assert we do not try to wait on an invalid seqno
      drm/i915: Pass DMA_ATTR_NO_WARN to dma_map_sg()
      drm/i915: Don't adjust priority on an already signaled fence
      drm/i915/pmu: Initialise our dynamic sysfs attributes for use with lockdep
      drm/i915/pmu: Reconstruct active state on starting busy-stats
      drm/i915: Only defer freeing of fence callback when also using the timer
      drm/i915/fence: Separate timeout mechanism for awaiting on dma-fences
      drm/i915: Lock out execlist tasklet while peeking inside for busy-stats
      drm/i915: Use our singlethreaded wq for freeing objects
      drm/i915/selftests: Test i915_sw_fence/dma_fence interop
      drm/i915: Rewrite some comments around RCU-deferred object free
      drm/i915/selftests: Wait for the dma-fence timeout
      drm/i915: Only attempt to scan the requested number of shrinker slabs
      drm/i915: Avoid waitboosting on the active request
      drm/i915: Shrink the request kmem_cache on allocation error
      drm/i915: Protect WC stash allocation against direct reclaim
      drm/i915: Increase render/media power gating hysteresis for gen9+
      drm/i915/execlists: Skip forcewake for ELSP submission
      drm/i915/execlists: Inhibit context save/restore for the fake preempt context
      drm/i915: Track the number of times we have woken the GPU up
      drm/i915: Shrink the GEM kmem_caches upon idling
      drm/i915/lrc: Clear context restore/save inhibit flags for new contexts
      drm/i915/lrc: Remove superfluous WARN_ON
      drm/i915: Simplify guard logic for setup_scratch_page()
      drm/i915: Assert that we do not try to unsubmit a completed request
      drm/i915: Always run hangcheck while the GPU is busy
      drm/i915: Flush ggtt writes through the old fenced vma before changing fences
      drm/i915/ppgtt: Pin page directories before allocation
      drm/i915/execlists: Flush GTIIR on clearing CS interrupts during reset
      drm/i915: Remove spurious DRM_ERROR for cancelled interrupts
      drm/i915: Report if an unbannable context is involved in a GPU hang
      drm/i915: Add some newlines to intel_engine_dump() headers
      drm/i915: Always update the no_fbc_reason when disabling
      drm/i915: Show the GPU state when declaring wedged
      drm/i915/execlists: Remove the startup spam
      drm/i915: Remove unbannable context spam from reset
      drm/i915/breadcrumbs: Drop request reference for the signaler thread
      drm/i915/selftests: Flush old resets between engines
      drm/i915/selftests: Use a sacrificial context for hang testing
      drm/i915/execlists: Move the reset bits to a more natural home
      drm/i915: Skip post-reset request emission if the engine is not idle

Dhinakaran Pandiyan (4):
      drm/i915/psr: Kill psr.source_ok flag.
      drm/i915/psr: CAN_PSR() macro to check for PSR source and sink support.
      drm/i915/psr: Avoid initializing PSR if there is no sink support.
      drm/i915/psr: Don't name status or debug registers like control registers.

Fengguang Wu (1):
      drm/i915/pmu: fix noderef.cocci warnings

Hans de Goede (1):
      drm/i915/vlv: Add cdclk workaround for DSI

Imre Deak (6):
      drm/i915: Fix using BIT_ULL() vs. BIT() for power domain masks
      drm/i915: Add tracking for CDCLK bypass frequency
      drm/i915: Add display WA #1175 for planes ending close to right screen edge
      drm/i915: Add WA for planes ending close to left screen edge
      drm/i915/bxt, glk: Increase PCODE timeouts during CDCLK freq changing
      drm/i915/bxt, glk: Avoid long atomic poll during CDCLK change

James Ausmus (1):
      drm/i915/icl: Handle expanded PLANE_CTL_FORMAT field

Jani Nikula (7):
      drm/i915/bios: add DP max link rate to VBT child device struct
      drm/i915: vbt defs typo fixes
      drm/i915: remove redundant ELD connector type update
      drm/i915/dp: abstract rate array length limiting
      drm/i915/dp: clean up source rate limiting for cnl
      drm/i915/dp: limit DP link rate based on VBT on CNL+
      drm/i915: reduce indent in pch detection

Joonas Lahtinen (2):
      Merge drm-next into drm-intel-next-queued
      drm/i915: Update DRIVER_DATE to 20180207

Kelvin Gardiner (1):
      drm/i915/icl: Set graphics mode register for gen11

Kenneth Graunke (1):
      drm/i915: Whitelist SLICE_COMMON_ECO_CHICKEN1 on Geminilake.

Lionel Landwerlin (1):
      Revert "drm/i915: mark all device info struct with __initconst"

Lucas De Marchi (2):
      drm/i915: Apply Display WA #1183 on skl, kbl, and cfl
      drm/i915/cnl: apply Display WA #1178 to fix type C dongles

Maarten Lankhorst (2):
      drm/i915: Always call to intel_display_set_init_power() in resume_early.
      drm/i915: Do not WARN_ON with small framebuffers.

Mahesh Kumar (5):
      drm/i915/icl: Don't allocate fixed bypass path blocks for ICL
      drm/i915/icl: Do not fix dbuf block size to 512
      drm/i915/icl: Fail flip if ddb allocated are less than min display buffer needed
      drm/i915/icl: NV12 y-plane ddb is not in same plane
      drm/i915/icl: Introduce MBus related registers

Manasi Navare (1):
      drm/i915/edp: Do not do link training fallback or prune modes on EDP

Matthew Auld (1):
      drm/i915/selftests: add missing gtt shrinker test

Michal Srb (2):
      drm/i915/cmdparser: Check reg_table_count before derefencing.
      drm/i915/cmdparser: Do not check past the cmd length.

Michal Wajdeczko (6):
      drm/i915/guc: Redefine guc_log_level modparam values
      drm/i915/guc: Change values for i915_guc_log_control
      drm/i915/guc: Keep GuC log disabled by default
      drm/i915/guc: Don't forget to free GuC error log
      drm/i915/guc: Don't try to create log runtime if there is no log
      drm/i915: Enable inject_load_failure only in DEBUG config

Michel Thierry (3):
      drm/i915: Use the engine name directly in the error_state file
      drm/i915/lrc: Update reg_state macros to pass checkpatch
      drm/i915: Move LRC register offsets to a header file

Mika Kahola (1):
      drm/i915: Check for fused or unused pipes

Oscar Mateo (2):
      drm/i915: Stop getting the fault address from RING_FAULT_REG
      drm/i915: Return a default RCS context size

Paulo Zanoni (2):
      drm/i915/gen11: fix the SAGV block time for gen11
      drm/i915/icl: allow the reg_read ioctl to read the RCS TIMESTAMP register

Rafael Antognolli (1):
      drm/i915/cnl: WaPipeControlBefore3DStateSamplePattern

Rodrigo Vivi (15):
      drm/i915/cnl: Add Port F definition.
      drm/i915/icl: Add initial Icelake definitions.
      drm/i915/cnp: Ignore VBT request for know invalid DDC pin.
      drm/i915/cnl: Fix aux selection for WA 1178
      drm/i915/cnp: Properly handle VBT ddc pin out of bounds.
      drm/i915/cnl: Add Cannonlake PCI IDs for another SKU.
      drm/i915/cnl: Add AUX-F support
      drm/i915/cnl: Extend Wa 1178 to Aux F.
      drm/i915/cnl: Fix _CNL_PORT_TX_DW2_LN0_F definition.
      drm/i915: Fix DPLCLKA_CFGCR0 bits for Port F.
      drm/i915/cnl: Add right GMBUS pin number for HDMI on Port F.
      drm/i915: For HPD connected port use hpd_pin instead of port.
      drm/i915/cnl: Add HPD support for Port F.
      drm/i915/cnl: Enable DDI-F on Cannonlake.
      drm/i915/cnl: Fix DP max rate for Cannonlake with port F.

Sagar Arun Kamble (7):
      drm/i915/guc: Add uc_fini_wq in gem_init unwind path
      drm/i915/guc: Grab RPM wakelock while disabling GuC interrupts
      drm/i915/guc: Enable interrupts before resuming GuC during runtime resume
      drm/i915/guc: Fix lockdep due to log relay channel handling under struct_mutex
      drm/i915/guc: Update name and prototype of i915_guc_log_control
      drm/i915/guc: Fix comments style in intel_guc_log.c
      drm/i915/guc: Fix return from guc_log_relay_file_create

Stefan Brüns (1):
      drm/i915: Try EDID bitbanging on HDMI after failed read

Sujaritha Sundaresan (2):
      drm/i915/guc : Decoupling ADS and logs from submission
      drm/i915/guc : GEM_BUG_ON on invoking GuC reset function

Tvrtko Ursulin (9):
      drm/i915: Apply headless DMC workaround for CNL
      drm/i915/pmu: Only enumerate available counters in sysfs
      drm/i915/pmu: Use kcalloc instead of kzalloc
      drm/i915/icl: Icelake interrupt register addresses and bits
      drm/i915/icl: Gen11 render context size
      drm/i915: Downgrade incorrect engine constructor usage warnings to development
      drm/i915: Per-engine scratch VMA is mandatory
      drm/i915/pmu: Fix sysfs exported counter config
      drm/i915/pmu: Fix PMU enable vs execlists tasklet race

Ville Syrjälä (9):
      drm/i915: Nuke a pointless unreachable()
      drm/i915: Add the missing Y/Yf modifiers for SKL+ sprites
      drm/i915: Clean up the sprite modifier checks
      drm/i915: Add CCS capability for sprites
      drm/i915: Allow up to 32KB stride on SKL+ "sprites"
      drm/i915: Use enum plane_id for frontbuffer tracking
      drm/i915: Implement display w/a #1143
      drm/i915: Add a comment exlaining CCS hsub/vsub
      drm/i915: Deprecate I915_SET_COLORKEY_NONE

 drivers/gpu/drm/i915/Makefile                    |   1 +
 drivers/gpu/drm/i915/i915_cmd_parser.c           |  10 +-
 drivers/gpu/drm/i915/i915_debugfs.c              |  85 +++--
 drivers/gpu/drm/i915/i915_drv.c                  | 208 ++++++-----
 drivers/gpu/drm/i915/i915_drv.h                  |  58 +++-
 drivers/gpu/drm/i915/i915_gem.c                  | 150 ++++++--
 drivers/gpu/drm/i915/i915_gem_fence_reg.c        |   8 +-
 drivers/gpu/drm/i915/i915_gem_gtt.c              | 137 +++++---
 drivers/gpu/drm/i915/i915_gem_request.c          |  32 +-
 drivers/gpu/drm/i915/i915_gem_request.h          |  33 +-
 drivers/gpu/drm/i915/i915_gem_shrinker.c         |   4 +-
 drivers/gpu/drm/i915/i915_gpu_error.c            |  82 +++--
 drivers/gpu/drm/i915/i915_irq.c                  |  82 +++--
 drivers/gpu/drm/i915/i915_params.c               |   5 +-
 drivers/gpu/drm/i915/i915_params.h               |   2 +-
 drivers/gpu/drm/i915/i915_pci.c                  | 110 +++---
 drivers/gpu/drm/i915/i915_pmu.c                  | 419 +++++++++++++++--------
 drivers/gpu/drm/i915/i915_pmu.h                  |   8 +
 drivers/gpu/drm/i915/i915_reg.h                  | 157 ++++++++-
 drivers/gpu/drm/i915/i915_sw_fence.c             |  56 ++-
 drivers/gpu/drm/i915/intel_atomic_plane.c        |   1 -
 drivers/gpu/drm/i915/intel_audio.c               |   2 +-
 drivers/gpu/drm/i915/intel_bios.c                |  50 ++-
 drivers/gpu/drm/i915/intel_breadcrumbs.c         | 163 ++++-----
 drivers/gpu/drm/i915/intel_cdclk.c               |  94 +++--
 drivers/gpu/drm/i915/intel_csr.c                 |   5 +-
 drivers/gpu/drm/i915/intel_ddi.c                 |  46 +++
 drivers/gpu/drm/i915/intel_device_info.c         |   1 +
 drivers/gpu/drm/i915/intel_device_info.h         |   2 +
 drivers/gpu/drm/i915/intel_display.c             | 106 ++++--
 drivers/gpu/drm/i915/intel_display.h             |   4 +
 drivers/gpu/drm/i915/intel_dp.c                  | 263 ++++++++------
 drivers/gpu/drm/i915/intel_dp_link_training.c    |  26 +-
 drivers/gpu/drm/i915/intel_drv.h                 |   9 +-
 drivers/gpu/drm/i915/intel_engine_cs.c           |  40 ++-
 drivers/gpu/drm/i915/intel_fbc.c                 |  27 +-
 drivers/gpu/drm/i915/intel_guc.c                 |  47 ++-
 drivers/gpu/drm/i915/intel_guc_ads.c             | 151 ++++++++
 drivers/gpu/drm/i915/intel_guc_ads.h             |  33 ++
 drivers/gpu/drm/i915/intel_guc_fw.c              |   9 -
 drivers/gpu/drm/i915/intel_guc_log.c             | 297 +++++++++++-----
 drivers/gpu/drm/i915/intel_guc_log.h             |  14 +-
 drivers/gpu/drm/i915/intel_guc_submission.c      | 134 --------
 drivers/gpu/drm/i915/intel_hangcheck.c           |   9 +-
 drivers/gpu/drm/i915/intel_hdmi.c                |  57 ++-
 drivers/gpu/drm/i915/intel_hotplug.c             |  19 +-
 drivers/gpu/drm/i915/intel_huc.c                 |  11 -
 drivers/gpu/drm/i915/intel_i2c.c                 |  17 +-
 drivers/gpu/drm/i915/intel_lrc.c                 | 245 +++++++------
 drivers/gpu/drm/i915/intel_lrc.h                 |   1 +
 drivers/gpu/drm/i915/intel_lrc_reg.h             |  67 ++++
 drivers/gpu/drm/i915/intel_lspcon.c              |   3 +-
 drivers/gpu/drm/i915/intel_modes.c               |  17 -
 drivers/gpu/drm/i915/intel_panel.c               |   8 +-
 drivers/gpu/drm/i915/intel_pm.c                  | 103 +++++-
 drivers/gpu/drm/i915/intel_psr.c                 |  54 ++-
 drivers/gpu/drm/i915/intel_ringbuffer.h          |  14 -
 drivers/gpu/drm/i915/intel_runtime_pm.c          |  46 +++
 drivers/gpu/drm/i915/intel_sprite.c              | 112 ++++--
 drivers/gpu/drm/i915/intel_uc.c                  |  92 ++++-
 drivers/gpu/drm/i915/intel_uc.h                  |   4 +-
 drivers/gpu/drm/i915/intel_uncore.c              |   5 +-
 drivers/gpu/drm/i915/intel_vbt_defs.h            |  15 +-
 drivers/gpu/drm/i915/selftests/i915_gem_gtt.c    | 114 +++++-
 drivers/gpu/drm/i915/selftests/i915_random.c     |   3 +-
 drivers/gpu/drm/i915/selftests/i915_sw_fence.c   | 134 ++++++++
 drivers/gpu/drm/i915/selftests/intel_hangcheck.c | 105 ++++--
 drivers/gpu/drm/i915/selftests/mock_context.c    |  11 +
 drivers/gpu/drm/i915/selftests/mock_context.h    |   3 +
 include/drm/i915_component.h                     |   3 +-
 include/drm/i915_pciids.h                        |  18 +-
 include/uapi/drm/i915_drm.h                      |   4 +-
 72 files changed, 3084 insertions(+), 1381 deletions(-)
 create mode 100644 drivers/gpu/drm/i915/intel_guc_ads.c
 create mode 100644 drivers/gpu/drm/i915/intel_guc_ads.h
 create mode 100644 drivers/gpu/drm/i915/intel_lrc_reg.h

More information about the dri-devel mailing list