linux_dsm_epyc7002/drivers/gpu/drm/i915
Lyude Paul eceae14724 drm/dp_mst: Start tracking per-port VCPI allocations
There has been a TODO waiting for quite a long time in
drm_dp_mst_topology.c:

	/* We cannot rely on port->vcpi.num_slots to update
	 * topology_state->avail_slots as the port may not exist if the parent
	 * branch device was unplugged. This should be fixed by tracking
	 * per-port slot allocation in drm_dp_mst_topology_state instead of
	 * depending on the caller to tell us how many slots to release.
	 */

That's not the only reason we should fix this: forcing the driver to
track the VCPI allocations throughout a state's atomic check is
error prone, because it means that extra care has to be taken with the
order that drm_dp_atomic_find_vcpi_slots() and
drm_dp_atomic_release_vcpi_slots() are called in in order to ensure
idempotency. Currently the only driver actually using these helpers,
i915, doesn't even do this correctly: multiple ->best_encoder() checks
with i915's current implementation would not be idempotent and would
over-allocate VCPI slots, something I learned trying to implement
fallback retraining in MST.

So: simplify this whole mess, and teach drm_dp_atomic_find_vcpi_slots()
and drm_dp_atomic_release_vcpi_slots() to track the VCPI allocations for
each port. This allows us to ensure idempotency without having to rely
on the driver as much. Additionally: the driver doesn't need to do any
kind of VCPI slot tracking anymore if it doesn't need it for it's own
internal state.

Additionally; this adds a new drm_dp_mst_atomic_check() helper which
must be used by atomic drivers to perform validity checks for the new
VCPI allocations incurred by a state.

Also: update the documentation and make it more obvious that these
/must/ be called by /all/ atomic drivers supporting MST.

Changes since v9:
* Add some missing changes that were requested by danvet that I forgot
  about after I redid all of the kref stuff:
  * Remove unnecessary state changes in intel_dp_mst_atomic_check
  * Cleanup atomic check logic for VCPI allocations - all we need to check in
    compute_config is whether or not this state disables a CRTC, then free
    VCPI based off that

Changes since v8:
 * Fix compile errors, whoops!

Changes since v7:
 - Don't check for mixed stale/valid VCPI allocations, just rely on
 connector registration to stop such erroneous modesets

Changes since v6:
 - Keep a kref to all of the ports we have allocations on. This required
   a good bit of changing to when we call drm_dp_find_vcpi_slots(),
   mainly that we need to ensure that we only redo VCPI allocations on
   actual mode or CRTC changes, not crtc_state->active changes.
   Additionally, we no longer take the registration of the DRM connector
   for each port into account because so long as we have a kref to the
   port in the new or previous atomic state, the connector will stay
   registered.
 - Use the small changes to drm_dp_put_port() to add even more error
   checking to make misusage of the helpers more obvious. I added this
   after having to chase down various use-after-free conditions that
   started popping up from the new helpers so no one else has to
   troubleshoot that.
 - Move some accidental DRM_DEBUG_KMS() calls to DRM_DEBUG_ATOMIC()
 - Update documentation again, note that find/release() should both not be
   called on the same port in a single atomic check phase (but multiple
   calls to one or the other is OK)

Changes since v4:
 - Don't skip the atomic checks for VCPI allocations if no new VCPI
   allocations happen in a state. This makes the next change I'm about
   to list here a lot easier to implement.
 - Don't ignore VCPI allocations on destroyed ports, instead ensure that
   when ports are destroyed and still have VCPI allocations in the
   topology state, the only state changes allowed are releasing said
   ports' VCPI. This prevents a state with a mix of VCPI allocations
   from destroyed ports, and allocations from valid ports.

Changes since v3:
 - Don't release VCPI allocations in the topology state immediately in
   drm_dp_atomic_release_vcpi_slots(), instead mark them as 0 and skip
   over them in drm_dp_mst_duplicate_state(). This makes it so
   drm_dp_atomic_release_vcpi_slots() is still idempotent while also
   throwing warnings if the driver messes up it's book keeping and tries
   to release VCPI slots on a port that doesn't have any pre-existing
   VCPI allocation - danvet
 - Change mst_state/state in some debugging messages to "mst state"

Changes since v2:
 - Use kmemdup() for duplicating MST state - danvet
 - Move port validation out of duplicate state callback - danvet
 - Handle looping through MST topology states in
   drm_dp_mst_atomic_check() so the driver doesn't have to do it
 - Fix documentation in drm_dp_atomic_find_vcpi_slots()
 - Move the atomic check for each individual topology state into it's
   own function, reduces indenting
 - Don't consider "stale" MST ports when calculating the bandwidth
   requirements. This is needed because originally we relied on the
   state duplication functions to prune any stale ports from the new
   state, which would prevent us from incorrectly considering their
   bandwidth requirements alongside legitimate new payloads.
 - Add function references in drm_dp_atomic_release_vcpi_slots() - danvet
 - Annotate atomic VCPI and atomic check functions with __must_check
   - danvet

Changes since v1:
 - Don't use the now-removed ->atomic_check() for private objects hook,
   just give drivers a function to call themselves

Signed-off-by: Lyude Paul <lyude@redhat.com>
Reviewed-by: Daniel Vetter <daniel@ffwll.ch>
Cc: David Airlie <airlied@redhat.com>
Cc: Jerry Zuo <Jerry.Zuo@amd.com>
Cc: Harry Wentland <harry.wentland@amd.com>
Cc: Juston Li <juston.li@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190111005343.17443-19-lyude@redhat.com
2019-01-10 20:42:13 -05:00
..
gvt Merge drm/drm-next into drm-intel-next-queued 2018-11-20 13:14:08 +02:00
selftests drm/i915: Compile fix for 64b dma-fence seqno 2018-12-07 13:10:11 +00:00
dvo_ch7xxx.c drm/i915/dvo: switch to kernel unsigned int types 2018-06-18 14:45:58 +03:00
dvo_ch7017.c drm/i915/dvo: switch to kernel unsigned int types 2018-06-18 14:45:58 +03:00
dvo_ivch.c drm/i915/dvo: switch to kernel unsigned int types 2018-06-18 14:45:58 +03:00
dvo_ns2501.c drm/i915/dvo: switch to kernel unsigned int types 2018-06-18 14:45:58 +03:00
dvo_sil164.c drm/i915/dvo: switch to kernel unsigned int types 2018-06-18 14:45:58 +03:00
dvo_tfp410.c drm/i915/dvo: switch to kernel unsigned int types 2018-06-18 14:45:58 +03:00
dvo.h
i915_cmd_parser.c drm/i915/cmdparser: Do not check past the cmd length. 2018-02-06 11:41:40 -08:00
i915_debugfs.c drm: i915: Cleanup drm_display_mode print str 2019-01-09 22:07:43 +01:00
i915_drv.c drm/i915: Keep overlay functions naming consistent 2018-11-08 17:09:18 -08:00
i915_drv.h drm/i915: Update DRIVER_DATE to 20181122 2018-11-22 16:49:47 +02:00
i915_fixed.h drm/i915/fixed: cosmetic cleanup 2018-11-20 12:49:24 +02:00
i915_gem_batch_pool.c drm/i915: Change parameters order in i915_gem_batch_pool_init 2018-03-09 22:21:41 +00:00
i915_gem_batch_pool.h drm/i915: Change parameters order in i915_gem_batch_pool_init 2018-03-09 22:21:41 +00:00
i915_gem_clflush.c drm/i915: Remove unecessary dma_fence_ops 2018-08-17 11:22:15 +02:00
i915_gem_clflush.h
i915_gem_context.c drm/i915: Compile fix for 64b dma-fence seqno 2018-12-07 13:10:11 +00:00
i915_gem_context.h drm/i915/execlists: Flush the CS events before unpinning 2018-10-03 14:27:16 +01:00
i915_gem_dmabuf.c dma-buf: remove kmap_atomic interface 2018-06-20 15:59:34 +02:00
i915_gem_evict.c drm/i915: Provide a timeout to i915_gem_wait_for_idle() 2018-07-09 13:55:41 +01:00
i915_gem_execbuffer.c drm: revert "expand replace_fence to support timeline point v2" 2018-12-05 11:01:11 +01:00
i915_gem_fence_reg.c drm/i915: Use INTEL_GEN everywhere 2018-02-09 22:29:02 +00:00
i915_gem_fence_reg.h
i915_gem_gtt.c drm/i915: Prevent machine hang from Broxton's vtd w/a and error capture 2018-11-19 17:16:44 +00:00
i915_gem_gtt.h drm/i915: Mark pin flags as u64 2018-11-06 17:17:50 +02:00
i915_gem_internal.c drm: move read_domains and write_domain into i915 2018-02-16 14:12:48 +00:00
i915_gem_object.c
i915_gem_object.h drm/i915: Mark up object tiling-and-stride getters as const 2018-07-26 12:31:02 +01:00
i915_gem_render_state.c drm/i915: Start returning an error from i915_vma_move_to_active() 2018-07-06 18:22:37 +01:00
i915_gem_render_state.h drm/i915: Rename drm_i915_gem_request to i915_request 2018-02-21 20:57:22 +00:00
i915_gem_shrinker.c drm/i915: Introduce i915_address_space.mutex 2018-07-11 13:56:16 +01:00
i915_gem_stolen.c drm/i915: pass dev_priv to i915_gem_cleanup_stolen 2018-09-20 16:43:17 +01:00
i915_gem_tiling.c drm/i915: Refactor common list iteration over GGTT vma 2017-12-07 23:26:55 +00:00
i915_gem_userptr.c mm, oom: distinguish blockable mode for mmu notifiers 2018-08-22 10:52:44 -07:00
i915_gem.c drm/i915: Compile fix for 64b dma-fence seqno 2018-12-07 13:10:11 +00:00
i915_gem.h drm/i915: GEM_WARN_ON considered harmful 2018-10-18 10:10:12 +01:00
i915_gemfs.c drm/i915: Disable THP until we have a GPU read BW W/A 2017-11-30 10:11:49 +02:00
i915_gemfs.h drm/i915: introduce simple gemfs 2017-10-07 10:11:41 +01:00
i915_gpu_error.c drm/i915: avoid rebuilding i915_gpu_error.o on version string updates 2018-11-22 11:46:57 +02:00
i915_gpu_error.h drm/i915: Prevent machine hang from Broxton's vtd w/a and error capture 2018-11-19 17:16:44 +00:00
i915_ioc32.c drm/i915: Clean up ancient doc comments for i915_ioc32.c 2018-02-15 16:22:21 +00:00
i915_irq.c drm/i915/icl: Reset PSR interruptions 2018-11-09 10:49:39 -08:00
i915_memcpy.c drm/i915: Do not enable movntdqa optimization in hypervisor guest 2017-12-22 11:12:15 +00:00
i915_mm.c
i915_oa_bdw.c drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_bdw.h drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_bxt.c drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_bxt.h drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_cflgt2.c drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_cflgt2.h drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_cflgt3.c drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_cflgt3.h drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_chv.c drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_chv.h drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_cnl.c drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_cnl.h drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_glk.c drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_glk.h drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_hsw.c drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_hsw.h drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_icl.c drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_icl.h drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_kblgt2.c drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_kblgt2.h drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_kblgt3.c drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_kblgt3.h drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_sklgt2.c drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_sklgt2.h drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_sklgt3.c drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_sklgt3.h drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_sklgt4.c drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_sklgt4.h drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_params.c drm/i915: Hide enable_gvt modparam when not compiled in 2018-11-19 13:19:04 +02:00
i915_params.h drm/i915: Remove i915.enable_ppgtt override 2018-09-27 12:05:31 +01:00
i915_pci.c drm/i915: Make pipe/transcoder offsets not depend on enum values 2018-11-21 13:37:59 +02:00
i915_perf.c Revert "drm/i915/perf: Fix warning in documentation" 2018-11-19 13:08:48 +02:00
i915_pmu.c drm pull for 4.19-rc1 2018-08-15 17:39:07 -07:00
i915_pmu.h drm/i915/pmu: Do not assume fixed hrtimer period 2018-06-05 16:45:01 +01:00
i915_pvinfo.h - Ice Lake's display enabling patches (Jose, Mahesh, Dhinakaran, Paulo, Manasi, Anusha, Arkadiusz) 2018-06-07 10:24:50 +08:00
i915_query.c drm/i915/query: fix subslice length 2018-11-09 11:42:00 -08:00
i915_query.h drm/i915: add query uAPI 2018-03-08 10:07:18 +00:00
i915_reg.h drm/i915: Make CHICKEN_TRANS reg not depend on enum value 2018-11-21 13:45:33 +02:00
i915_request.c drm/i915: Compile fix for 64b dma-fence seqno 2018-12-07 13:10:11 +00:00
i915_request.h drm/i915: Priority boost for waiting clients 2018-10-01 20:34:24 +01:00
i915_scheduler.c drm/i915: Priority boost for waiting clients 2018-10-01 20:34:24 +01:00
i915_scheduler.h drm/i915: Priority boost for waiting clients 2018-10-01 20:34:24 +01:00
i915_selftest.h drm/i915/selftests: Downgrade igt_timeout message 2018-07-16 11:23:45 +01:00
i915_suspend.c
i915_sw_fence.c dma-buf: make fence sequence numbers 64 bit v2 2018-12-07 12:44:16 +01:00
i915_sw_fence.h
i915_syncmap.c drm/i915: Convert to BITS_PER_TYPE 2018-09-26 13:32:03 +01:00
i915_syncmap.h
i915_sysfs.c drm/i915: Kick the rps worker when changing the boost frequency 2018-03-12 11:24:49 -07:00
i915_timeline.c drm/i915: Split i915_gem_timeline into individual timelines 2018-05-02 23:57:18 +01:00
i915_timeline.h drm/i915/selftests: Workaround an issue with unused lockdep subclass 2018-11-16 08:38:21 +00:00
i915_trace_points.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
i915_trace.h drm/i915/ringbuffer: Fix context restore upon reset 2018-06-11 14:03:47 +01:00
i915_utils.h drm/i915: Convert to BITS_PER_TYPE 2018-09-26 13:32:03 +01:00
i915_vgpu.c drm/i915/gtt: Rename i915_hw_ppgtt base member 2018-06-05 21:11:20 +01:00
i915_vgpu.h drm/i915: Add new vGPU cap info bit VGT_CAPS_HUGE_GTT 2018-06-05 16:57:01 +03:00
i915_vma.c Merge drm/drm-next into drm-intel-next-queued 2018-11-20 13:14:08 +02:00
i915_vma.h drm/i915: Fix gtt_view asserts 2018-08-28 18:49:33 +03:00
icl_dsi.c drm/i915/icl: Find DSI presence for ICL 2018-11-01 12:23:40 +02:00
intel_acpi.c drm/i915/dsm: remove unnecessary dsm priv structure 2018-06-14 15:59:09 +03:00
intel_atomic_plane.c drm/i915: Fix plane allocation/free functions 2018-11-15 12:16:33 +01:00
intel_atomic.c drm/i915: Prefer IS_GEN<n> check with bitmask. 2018-10-29 10:44:11 -07:00
intel_audio.c drm/i915/hdmi: Reorder structure to match specification 2018-11-15 16:02:47 +02:00
intel_bios.c drm/i915/bios: rename intel_aux_ch() to intel_bios_port_aux_ch() 2018-11-15 16:21:58 +02:00
intel_bios.h
intel_breadcrumbs.c drm/i915: Pull seqno started checks together 2018-08-07 12:43:00 +01:00
intel_cdclk.c drm/i915: add ICP support to cnp_rawclk() and kill icp_rawclk() 2018-11-13 16:37:16 -08:00
intel_color.c drm/i915: Add CRTC output format YCBCR 4:4:4 2018-10-15 16:01:50 +03:00
intel_combo_phy.c drm/i915/icl: reverse uninit order 2018-11-15 16:36:58 -08:00
intel_connector.c drm/i915: Keep malloc references to MST ports 2019-01-10 20:12:23 -05:00
intel_crt.c drm/i915: Introduce CRTC output format 2018-10-15 16:01:49 +03:00
intel_csr.c drm/i915: Downgrade unknown CSR firmware warnings 2018-11-20 14:14:18 -08:00
intel_ddi.c drm/i915: Make CHICKEN_TRANS reg not depend on enum value 2018-11-21 13:45:33 +02:00
intel_device_info.c drm/i915: fix broadwell EU computation 2018-11-14 13:17:33 +02:00
intel_device_info.h drm/i915: fix subslice mask array size 2018-11-09 11:41:43 -08:00
intel_display.c drm/dp_mst: Start tracking per-port VCPI allocations 2019-01-10 20:42:13 -05:00
intel_display.h drm/i915: Add code comment on assumption of pipe==transcoder 2018-11-21 13:38:27 +02:00
intel_dp_aux_backlight.c drm/i915/backlight: switch to kernel unsigned int types 2018-06-18 14:46:04 +03:00
intel_dp_link_training.c drm/i915/dp: Link train Fallback on eDP only if fallback link BW can fit panel's native mode 2018-10-17 18:23:59 -07:00
intel_dp_mst.c drm/dp_mst: Start tracking per-port VCPI allocations 2019-01-10 20:42:13 -05:00
intel_dp.c drm/i915/bios: rename intel_aux_ch() to intel_bios_port_aux_ch() 2018-11-15 16:21:58 +02:00
intel_dpio_phy.c drm/i915: Get rid of crtc->config in chv_data_lane_soft_reset 2018-10-05 15:19:08 +02:00
intel_dpll_mgr.c drm/i915/icl: Fix crash when getting DPLL of a MST encoder in TC ports 2018-10-31 15:25:05 -07:00
intel_dpll_mgr.h drm/i915/icl: Refactor icl pll functions 2018-10-16 09:00:58 -07:00
intel_drv.h drm/edid: Add display_info.rgb_quant_range_selectable 2019-01-10 19:01:06 +02:00
intel_dsi_dcs_backlight.c
intel_dsi_vbt.c drm/i915/icl: Don't wait for empty FIFO 2018-11-01 12:24:56 +02:00
intel_dsi.c drm/i915: Determine DSI panel orientation from VBT 2018-11-13 17:20:32 +02:00
intel_dsi.h drm/i915: Determine DSI panel orientation from VBT 2018-11-13 17:20:32 +02:00
intel_dvo.c drm/i915: Introduce CRTC output format 2018-10-15 16:01:49 +03:00
intel_engine_cs.c dma-buf: make fence sequence numbers 64 bit v2 2018-12-07 12:44:16 +01:00
intel_fbc.c drm/i915: Prefer IS_GEN<n> check with bitmask. 2018-10-29 10:44:11 -07:00
intel_fbdev.c drm/i915: Use crtc->state in intel_fbdev_init_bios 2018-10-05 15:18:38 +02:00
intel_fifo_underrun.c
intel_frontbuffer.c drm/i915/psr: Nuke PSR support for VLV and CHV 2018-05-24 16:05:19 +03:00
intel_frontbuffer.h
intel_gpu_commands.h drm/i915: Split GPU commands definitions into separate header 2018-03-15 10:00:03 +00:00
intel_guc_ads.c drm/i915: Pull unpin map into vma release 2018-07-24 09:55:12 +01:00
intel_guc_ads.h drm/i915/guc : Decoupling ADS and logs from submission 2018-01-03 14:02:10 +00:00
intel_guc_ct.c drm/i915: Pull unpin map into vma release 2018-07-24 09:55:12 +01:00
intel_guc_ct.h drm/i915/guc: Prepare to process incoming requests from CT 2018-03-28 20:35:17 +01:00
intel_guc_fw.c drm/i915: Downgrade unknown firmware warnings 2018-11-16 15:35:36 +00:00
intel_guc_fw.h drm/i915/guc: Move firmware selection to init_early 2017-12-06 14:41:47 +00:00
intel_guc_fwif.h drm/i915/guc: doorbell checking cleanup 2018-10-23 09:42:25 +01:00
intel_guc_log.c drm/i915: Pull unpin map into vma release 2018-07-24 09:55:12 +01:00
intel_guc_log.h drm/i915/guc: Add support for define guc_log_size in megabytes. 2018-06-12 15:44:47 +01:00
intel_guc_reg.h drm/i915/guc: doorbell checking cleanup 2018-10-23 09:42:25 +01:00
intel_guc_submission.c drm/i915/guc: doorbell checking cleanup 2018-10-23 09:42:25 +01:00
intel_guc_submission.h drm/i915/selftests: ring all doorbells in igt_guc_doorbells 2018-08-28 13:41:27 +01:00
intel_guc.c drm/i915/guc: Limit number of scratch registers used for H2G 2018-10-22 12:36:49 +01:00
intel_guc.h drm/i915/guc: init GuC descriptors after GuC load 2018-10-04 07:29:47 +01:00
intel_gvt.c drm/i915: Unwind HW init after GVT setup failure 2018-07-10 16:46:09 +01:00
intel_gvt.h
intel_hangcheck.c drm/i915: Pull seqno started checks together 2018-08-07 12:43:00 +01:00
intel_hdcp.c drm/i915: Reassigning log level for HDCP failures 2018-10-29 16:14:58 +01:00
intel_hdmi.c drm/edid: Add display_info.rgb_quant_range_selectable 2019-01-10 19:01:06 +02:00
intel_hotplug.c drm/i915: Fix hpd handling for pins with two encoders 2018-11-12 17:07:12 +02:00
intel_huc_fw.c drm/i915/uc: Fetch uC firmware in init_early 2018-03-23 17:03:24 +00:00
intel_huc_fw.h drm/i915/uc: Make GuC/HuC fw fetch and loading functions/file structure symmetric 2018-03-02 09:04:45 +00:00
intel_huc.c drm/i915/huc: Normalize HuC status returned by I915_PARAM_HAS_HUC 2018-10-18 10:20:08 +01:00
intel_huc.h drm/i915/uc: Fetch GuC/HuC firmwares from guc/huc specific init 2018-06-28 22:51:33 +01:00
intel_i2c.c drm/i915: remove confusing GPIO vs PCH_GPIO 2018-08-16 11:52:08 -07:00
intel_lpe_audio.c drm/i915: Don't oops during modeset shutdown after lpe audio deinit 2018-11-06 17:18:01 +02:00
intel_lrc_reg.h drm/i915/execlists: Terminate the context image with BB_END 2018-08-01 17:03:31 +01:00
intel_lrc.c drm/i915: Compile fix for 64b dma-fence seqno 2018-12-07 13:10:11 +00:00
intel_lrc.h drm/i915: Remove superfluous GEN8_LR_CONTEXT_ALIGN 2018-07-27 11:30:42 +01:00
intel_lspcon.c drm/edid: Add display_info.rgb_quant_range_selectable 2019-01-10 19:01:06 +02:00
intel_lvds.c drm/i915: Introduce CRTC output format 2018-10-15 16:01:49 +03:00
intel_mocs.c drm/i915: Remove useless error return from intel_init_mocs_engine() 2018-08-15 23:25:43 +01:00
intel_mocs.h drm/i915: Remove useless error return from intel_init_mocs_engine() 2018-08-15 23:25:43 +01:00
intel_opregion.c drm/i915: Stop calling intel_opregion unregister/register in suspend/resume 2018-10-30 11:52:54 +00:00
intel_opregion.h drm/i915: Stop calling intel_opregion unregister/register in suspend/resume 2018-10-30 11:52:54 +00:00
intel_overlay.c drm/i915: Keep overlay functions naming consistent 2018-11-08 17:09:18 -08:00
intel_panel.c drm/i915: Use intel_panel_actually_set_backlight() to disable PWM backlight 2018-10-31 23:44:55 +02:00
intel_pipe_crc.c Merge drm/drm-next into drm-misc-next 2018-08-27 10:00:03 -04:00
intel_pm.c drm/i915: Disable LP3 watermarks on all SNB machines 2018-11-16 15:44:09 +02:00
intel_psr.c drm/i915: Make CHICKEN_TRANS reg not depend on enum value 2018-11-21 13:45:33 +02:00
intel_quirks.c drm/i915/quirks: pass dev_priv instead of drm dev to quirk code 2018-10-18 13:40:13 +03:00
intel_renderstate_gen6.c
intel_renderstate_gen7.c
intel_renderstate_gen8.c
intel_renderstate_gen9.c
intel_renderstate.h
intel_ringbuffer.c drm/i915/ringbuffer: Delay after EMIT_INVALIDATE for gen4/gen5 2018-11-12 17:07:12 +02:00
intel_ringbuffer.h drm/i915/ringbuffer: change header SPDX identifier to MIT 2018-10-31 11:57:11 +02:00
intel_runtime_pm.c drm/i195: spell out reverse on for_each macros 2018-11-15 16:36:58 -08:00
intel_sdvo_regs.h
intel_sdvo.c drm/edid: Add display_info.rgb_quant_range_selectable 2019-01-10 19:01:06 +02:00
intel_sideband.c drm/i915: Move rps.hw_lock to dev_priv and s/hw_lock/pcu_lock 2017-10-11 08:56:56 +01:00
intel_sprite.c drm/i915: Account for scale factor when calculating initial phase 2018-11-15 13:57:20 +02:00
intel_tv.c drm/i915: Introduce CRTC output format 2018-10-15 16:01:49 +03:00
intel_uc_fw.c drm/i915/guc: Move the pin bias value from GuC to GGTT 2018-07-27 16:03:41 +01:00
intel_uc_fw.h drm/i915/guc: init GuC descriptors after GuC load 2018-10-04 07:29:47 +01:00
intel_uc.c drm/i915/guc: Fix Gen9 GuC loading workarounds 2018-10-17 09:08:00 +01:00
intel_uc.h drm/i915/uc: Fetch uC firmware in init_early 2018-03-23 17:03:24 +00:00
intel_uncore.c drm/i915: uncore_fw_domains_init sort platforms newer-to-older 2018-10-22 14:40:43 -07:00
intel_uncore.h drm/i915: Restore user forcewake domains across suspend 2018-08-15 13:41:05 -07:00
intel_vbt_defs.h drm/i915/bios: make the aux channel macros private to the vbt parser 2018-11-15 16:22:17 +02:00
intel_wopcm.c drm/i915: Add a fault injection point to WOPCM init 2018-07-27 16:07:45 +01:00
intel_wopcm.h drm/i915/guc: Check the locking status of GuC WOPCM registers 2018-03-14 15:35:37 +02:00
intel_workarounds.c drm/i915: Fix icl workarounds whitespaces 2018-11-14 11:37:41 +02:00
intel_workarounds.h drm/i915: Check whitelist registers across resets 2018-04-14 18:36:45 +01:00
Kconfig - New Drivers 2018-08-20 15:38:44 -07:00
Kconfig.debug drm/i915: Verify power domains after enabling them 2018-08-20 12:13:09 +03:00
Makefile Merge drm/drm-next into drm-intel-next-queued 2018-11-20 13:14:08 +02:00
vlv_dsi_pll.c drm/i915/dsi: use vlv and bxt prefixes for the global DSI functions 2018-07-06 10:54:05 +03:00
vlv_dsi.c drm/i915: Determine DSI panel orientation from VBT 2018-11-13 17:20:32 +02:00