linux/drivers/gpu/drm/i915
Matt Roper c6f95f2793 drm/i915: Setup dummy atomic state for connectors (v3)
We want to enable/test plane updates via the atomic interface, but as
soon as we flip DRIVER_ATOMIC on, the DRM core will take some atomic
codepaths to lookup properties during drmModeGetConnector() and some of
those codepaths unconditionally dereference connector->state
(specifically when looking up the CRTC ID property in
drm_atomic_connector_get_property()).  Create a dummy connector state
for each connector at init time to ensure the DRM core doesn't try to
dereference a NULL connector->state.  The actual connector properties
will never be updated or contain useful information, but since we're
doing this specifically for testing/debug of the plane operations (and
only when a specific kernel module option is given), that shouldn't
really matter.

Once we start creating connector states, the DRM core will want to be
able to clean them up for us.  We also need to hook up the destruction
entrypoint to the core's helper.

v2: Squash in the patch to set the state destruction hook (Ander & Bob)

v3: Only create dummy connector states when we're actually faking
    atomic support.  (Ander)

Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Reviewed-by: Ander Conselvan de Oliveira <conselvan2@gmail.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2015-01-27 09:57:02 +01:00
..
Kconfig drm/i915: Ditch UMS config option 2014-07-24 10:59:53 +02:00
Makefile drm/i915: Add main atomic entrypoints (v2) 2015-01-27 09:56:46 +01:00
dvo.h
dvo_ch7xxx.c drm/i915: Remove spurious semicolons 2014-04-09 21:54:33 +02:00
dvo_ch7017.c
dvo_ivch.c drm/i915: Remove spurious semicolons 2014-04-09 21:54:33 +02:00
dvo_ns2501.c drm/i915: Check pixel clock in ns2501 mode_valid hook 2014-09-03 11:05:21 +02:00
dvo_sil164.c drm/i915: Remove spurious semicolons 2014-04-09 21:54:33 +02:00
dvo_tfp410.c drm/i915: Remove spurious semicolons 2014-04-09 21:54:33 +02:00
i915_cmd_parser.c drm/i915: Add GPGPU_THREADS_DISPATCHED to the register whitelist 2014-12-16 10:39:10 +01:00
i915_debugfs.c drm/i915: Use intel_gpu_freq() and intel_freq_opcode() 2015-01-27 09:51:17 +01:00
i915_dma.c drm/i915: add I915_PARAM_HAS_BSD2 to i915_getparam 2015-01-27 09:51:05 +01:00
i915_drv.c drm/i915: Rename the forcewake get/put functions 2015-01-27 09:50:57 +01:00
i915_drv.h drm/i915: Use intel_gpu_freq() and intel_freq_opcode() 2015-01-27 09:51:17 +01:00
i915_gem.c drm/i915: Simplify flush_cpu_write_domain 2015-01-27 09:51:08 +01:00
i915_gem_batch_pool.c drm/i915: Mark shadow batch buffers as purgeable 2014-12-16 10:39:09 +01:00
i915_gem_context.c Merge tag 'topic/i915-hda-componentized-2015-01-12' into drm-intel-next-queued 2015-01-12 23:07:46 +01:00
i915_gem_debug.c
i915_gem_dmabuf.c dma-buf: use reservation objects 2014-07-08 13:03:20 -07:00
i915_gem_evict.c drm/i915: Add some extra guards in evict_vm 2015-01-06 09:07:59 +01:00
i915_gem_execbuffer.c drm/i915: Specify bsd rings through exec flag 2015-01-27 09:51:05 +01:00
i915_gem_gtt.c drm/i915: Organize bind_vma funcs 2014-12-17 18:23:12 +01:00
i915_gem_gtt.h drm/i915: Infrastructure for supporting different GGTT views per object 2014-12-15 11:25:04 +01:00
i915_gem_render_state.c drm/i915: Remove obsolete seqno parameter from 'i915_add_request' 2014-12-03 09:35:19 +01:00
i915_gem_render_state.h drm/i915/bdw: Render state init for Execlists 2014-09-03 11:04:52 +02:00
i915_gem_stolen.c drm/i915: Don't complain about stolen conflicts on gen3 2014-12-10 11:11:28 +02:00
i915_gem_tiling.c drm/i915: Replace last_[rwf]_seqno with last_[rwf]_req 2014-12-03 09:35:14 +01:00
i915_gem_userptr.c drm/i915: Do not leak pages when freeing userptr objects 2014-09-29 15:31:01 +02:00
i915_gpu_error.c drm/i915: Removed duplicate members from submit_request 2015-01-27 09:50:52 +01:00
i915_ioc32.c drm/i915: remove redundant #ifdef CONFIG_COMPAT 2014-10-24 16:34:07 +02:00
i915_irq.c drm/i915: Use symbolic irqreturn for ->hpd_pulse 2015-01-27 09:51:14 +01:00
i915_params.c drm/i915: tame the chattermouth (v2) 2014-12-16 10:39:13 +01:00
i915_reg.h drm/i915/skl: Gen9 coarse power gating 2015-01-27 09:51:00 +01:00
i915_suspend.c Merge tag 'topic/i915-hda-componentized-2015-01-12' into drm-intel-next-queued 2015-01-12 23:07:46 +01:00
i915_sysfs.c drm/i915: Use intel_gpu_freq() and intel_freq_opcode() 2015-01-27 09:51:17 +01:00
i915_trace.h drm/i915: Additional request structure tracing 2014-12-06 01:46:27 +01:00
i915_trace_points.c
i915_ums.c drm/i915: don't save/restore backlight hist ctl registers 2014-11-14 10:29:28 +01:00
intel_acpi.c
intel_atomic.c drm/i915: Add main atomic entrypoints (v2) 2015-01-27 09:56:46 +01:00
intel_atomic_plane.c drm/i915: Add .atomic_{get, set}_property() entrypoints to planes 2015-01-27 09:56:15 +01:00
intel_audio.c drm/i915: Make intel_crtc->config a pointer 2015-01-27 09:50:50 +01:00
intel_bios.c Revert "drm/i915: Parsing LFP brightness control from VBT" 2015-01-07 09:45:38 +01:00
intel_bios.h Revert "drm/i915: Parsing LFP brightness control from VBT" 2015-01-07 09:45:38 +01:00
intel_crt.c drm/i915: Setup dummy atomic state for connectors (v3) 2015-01-27 09:57:02 +01:00
intel_ddi.c drm/i915: Enable/disable DRRS 2015-01-27 09:51:15 +01:00
intel_display.c drm/i915: Setup dummy atomic state for connectors (v3) 2015-01-27 09:57:02 +01:00
intel_dp.c drm/i915: Setup dummy atomic state for connectors (v3) 2015-01-27 09:57:02 +01:00
intel_dp_mst.c drm/i915: Setup dummy atomic state for connectors (v3) 2015-01-27 09:57:02 +01:00
intel_drv.h drm/i915: Add main atomic entrypoints (v2) 2015-01-27 09:56:46 +01:00
intel_dsi.c drm/i915: Setup dummy atomic state for connectors (v3) 2015-01-27 09:57:02 +01:00
intel_dsi.h drm/i915/dsi: remove unnecessary dsi device callbacks 2015-01-27 09:51:13 +01:00
intel_dsi_cmd.c drm/i915/dsi: move wait_for_dsi_fifo_empty to intel_dsi.c 2015-01-27 09:51:12 +01:00
intel_dsi_cmd.h drm/i915/dsi: move wait_for_dsi_fifo_empty to intel_dsi.c 2015-01-27 09:51:12 +01:00
intel_dsi_panel_vbt.c drm/i915/dsi: add some constness to vbt panel driver 2015-01-27 09:51:13 +01:00
intel_dsi_pll.c drm/i915: Use DSI Pll1 for enabling MIPI DSI on Port C 2014-12-10 17:47:21 +01:00
intel_dvo.c drm/i915: Setup dummy atomic state for connectors (v3) 2015-01-27 09:57:02 +01:00
intel_fbc.c drm/i915: Move rotation from intel_plane to drm_plane_state 2015-01-27 09:51:18 +01:00
intel_fbdev.c drm/i915: Rename plane_config to initial_plane_config 2015-01-27 09:51:04 +01:00
intel_fifo_underrun.c drm/i915: kerneldoc for intel_fifo_underrun.c 2014-10-24 16:33:55 +02:00
intel_frontbuffer.c drm/i915: DRRS calls based on frontbuffer 2015-01-27 09:51:15 +01:00
intel_hdmi.c drm/i915: Setup dummy atomic state for connectors (v3) 2015-01-27 09:57:02 +01:00
intel_i2c.c drm/i915: Kill duplicated cdclk readout code from i2c 2014-07-07 11:27:52 +02:00
intel_lrc.c drm/i915: Rename unpin_count to pin_count 2015-01-27 09:51:06 +01:00
intel_lrc.h drm/i915: Subsume intel_ctx_submit_request in to drm_i915_gem_request 2015-01-27 09:50:53 +01:00
intel_lvds.c drm/i915: Setup dummy atomic state for connectors (v3) 2015-01-27 09:57:02 +01:00
intel_modes.c
intel_opregion.c ACPI / i915: Update the condition to ignore firmware backlight change request 2014-09-30 01:11:18 +02:00
intel_overlay.c drm/i915: Make intel_crtc->config a pointer 2015-01-27 09:50:50 +01:00
intel_panel.c drm/i915: Embedded struct drm_crtc_state in intel_crtc_state 2015-01-27 09:50:48 +01:00
intel_pm.c drm/i915: Use intel_gpu_freq() and intel_freq_opcode() 2015-01-27 09:51:17 +01:00
intel_psr.c drm/i915: Make intel_crtc->config a pointer 2015-01-27 09:50:50 +01:00
intel_renderstate.h drm/i915 Add golden context support for Gen9 2014-11-04 14:04:55 +01:00
intel_renderstate_gen6.c drm/i915: Add headers to the various render state 2014-12-10 17:47:23 +01:00
intel_renderstate_gen7.c drm/i915: Add headers to the various render state 2014-12-10 17:47:23 +01:00
intel_renderstate_gen8.c drm/i915: Add headers to the various render state 2014-12-10 17:47:23 +01:00
intel_renderstate_gen9.c drm/i915: Add headers to the various render state 2014-12-10 17:47:23 +01:00
intel_ringbuffer.c drm/i915: Change CHV WIZ hashing mode to 16x4 2015-01-27 09:51:10 +01:00
intel_ringbuffer.h drm/i915: Remove FIXME_lrc_ctx backpointer 2015-01-27 09:50:53 +01:00
intel_runtime_pm.c drm/i915/skl: Adding power domains for AUX controllers 2015-01-27 09:50:58 +01:00
intel_sdvo.c drm/i915: Setup dummy atomic state for connectors (v3) 2015-01-27 09:57:02 +01:00
intel_sdvo_regs.h
intel_sideband.c drm/i915: Increase the range of sideband address. 2015-01-27 09:50:43 +01:00
intel_sprite.c drm/i915: Consolidate plane handler vtables 2015-01-27 09:51:18 +01:00
intel_tv.c drm/i915: Setup dummy atomic state for connectors (v3) 2015-01-27 09:57:02 +01:00
intel_uncore.c drm/i915: Enum forcewake domains and domain identifiers 2015-01-27 09:50:57 +01:00