linux/include/drm
Thierry Reding 10a2310265 drm: Introduce drm_fb_helper_prepare()
To implement hotplug detection in a race-free manner, drivers must call
drm_kms_helper_poll_init() before hotplug events can be triggered. Such
events can be triggered right after any of the encoders or connectors
are initialized. At the same time, if the drm_fb_helper_hotplug_event()
helper is used by a driver, then the poll helper requires some parts of
the FB helper to be initialized to prevent a crash.

At the same time, drm_fb_helper_init() requires information that is not
necessarily available at such an early stage (number of CRTCs and
connectors), so it cannot be used yet.

Add a new helper, drm_fb_helper_prepare(), that initializes the bare
minimum needed to allow drm_kms_helper_poll_init() to execute and any
subsequent hotplug events to be processed properly.

Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
2014-07-08 11:31:28 +10:00
..
bridge drm/bridge/ptn3460: fix modular build 2014-03-24 09:21:15 +10:00
i2c drm/i2c: tda998x: add video and audio input configuration 2013-08-19 09:10:32 +10:00
ttm drm/ttm: fix handling of TTM_PL_FLAG_TOPDOWN v2 2014-07-08 11:15:58 +10:00
drm_agpsupport.h drm: rip out DRM_AGP_MEM and DRM_AGP_KERN 2013-12-18 11:32:55 +10:00
drm_buffer.h UAPI: (Scripted) Convert #include "..." to #include <path/...> in kernel system headers 2012-10-02 18:01:25 +01:00
drm_cache.h drm/ttm: consolidate cache flushing code in one place. 2009-08-27 09:53:47 +10:00
drm_core.h drm: Fix support for PCI domains 2010-08-10 08:20:20 +10:00
drm_crtc_helper.h Merge tag 'topic/core-stuff-2014-05-05' of git://anongit.freedesktop.org/drm-intel into drm-next 2014-05-16 11:47:13 +10:00
drm_crtc.h drm/debugfs: add an "edid_override" file per connector 2014-06-19 08:56:28 +02:00
drm_dp_helper.h drm/dp: add a hw mutex around the transfer functions. (v2) 2014-06-05 09:54:29 +10:00
drm_edid.h drm/edid: Parse and handle HDMI deep color modes. 2014-06-02 18:37:34 -04:00
drm_encoder_slave.h drm: i2c encoder helper wrappers 2013-02-17 17:55:42 -05:00
drm_fb_cma_helper.h drm: Make drm_fb_cma_describe() static 2013-08-21 12:47:41 +10:00
drm_fb_helper.h drm: Introduce drm_fb_helper_prepare() 2014-07-08 11:31:28 +10:00
drm_fixed.h drm: fix 64 bit drm fixed point helpers 2013-07-30 17:24:13 -04:00
drm_flip_work.h drm: Fixup flip-work kerneldoc 2014-04-29 12:33:35 +02:00
drm_gem_cma_helper.h drm/cma: include <drm/drmP.h> as needed 2014-04-04 10:07:57 +10:00
drm_global.h drm: move ttm global code to core drm 2010-08-04 09:46:06 +10:00
drm_hashtab.h drm: Add a hash-tab rcu-safe API 2012-11-28 18:36:05 +10:00
drm_mem_util.h introduce SIZE_MAX 2012-05-31 17:49:26 -07:00
drm_memory.h UAPI: (Scripted) Convert #include "..." to #include <path/...> in kernel system headers 2012-10-02 18:01:25 +01:00
drm_mipi_dsi.h drm/dsi: Support device shutdown 2014-06-05 16:42:19 +02:00
drm_mm.h drm: Add support for two-ended allocation, v3 2014-04-04 09:28:14 +10:00
drm_modes.h drm: try harder to avoid regression when merging mode bits 2014-05-01 09:26:53 +10:00
drm_modeset_lock.h drm: convert crtc and connection_mutex to ww_mutex (v5) 2014-06-05 09:54:33 +10:00
drm_os_linux.h drm: Kill DRM_SUSER 2013-12-18 11:35:45 +10:00
drm_panel.h drm: Add panel support 2013-12-17 18:09:46 +01:00
drm_pciids.h drm/radeon: add pci ids for Mullins 2014-05-06 12:20:06 +02:00
drm_plane_helper.h drm/plane-helper: Add drm_plane_helper_check_update() (v3) 2014-06-05 08:52:43 +02:00
drm_rect.h drm: Fix drm_rect documentation 2013-05-23 12:51:32 +02:00
drm_sysfs.h drm: Enable drm drivers to add drm sysfs devices. 2009-08-19 16:08:51 +10:00
drm_usb.h drm: add usb framework 2011-02-07 13:09:42 +10:00
drm_vma_manager.h drm: init TTM dev_mapping in ttm_bo_device_init() 2014-03-16 12:23:42 +01:00
drmP.h Merge branch 'drm-next' of git://people.freedesktop.org/~dvdhrm/linux into drm-next 2014-07-08 11:08:31 +10:00
exynos_drm.h drm/exynos: fimd: replace struct fb_videomode with videomode 2013-09-05 13:43:44 +09:00
gma_drm.h drm/gma500: Remove unused ioctls 2014-03-17 20:11:57 +01:00
i915_drm.h x86/gpu: Add Intel graphics stolen memory quirk for gen2 platforms 2014-02-09 15:11:30 +01:00
i915_pciids.h drm/i915: BDW: Adding Reserved PCI IDs. 2014-06-24 14:56:16 +03:00
i915_powerwell.h drm/i915: provide interface for audio driver to query cdclk 2014-07-04 07:46:09 +02:00
intel-gtt.h drm/i915: Fix gen2 mappable calculations 2013-02-15 10:30:38 +01:00