linux-stable/drivers/gpu/drm/gma500
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
..
accel_2d.c drm: Kill DRM_HZ 2013-12-18 11:33:24 +10:00
backlight.c drivers/gpu/drm/gma500/backlight.c: fix a defined-but-not-used warning for do_gma_backlight_set() 2014-01-23 16:36:55 -08:00
blitter.c drm/gma500: Add first piece of blitter code 2014-03-17 20:11:51 +01:00
blitter.h drm/gma500: Add first piece of blitter code 2014-03-17 20:11:51 +01:00
cdv_device.c drm/gma500: Unify _get_core_freq for cdv and psb 2014-03-17 20:13:24 +01:00
cdv_device.h
cdv_intel_crt.c drm: add register and unregister functions for connectors 2014-06-19 08:55:28 +02:00
cdv_intel_display.c drm: Replace crtc fb with primary plane fb (v3) 2014-04-01 20:18:28 -04:00
cdv_intel_dp.c drm: add register and unregister functions for connectors 2014-06-19 08:55:28 +02:00
cdv_intel_hdmi.c drm: add register and unregister functions for connectors 2014-06-19 08:55:28 +02:00
cdv_intel_lvds.c drm: add register and unregister functions for connectors 2014-06-19 08:55:28 +02:00
framebuffer.c drm: Introduce drm_fb_helper_prepare() 2014-07-08 11:31:28 +10:00
framebuffer.h
gem.c drm/gma500: Remove dead code 2014-03-17 20:12:02 +01:00
gem.h drm/gma500: Add backing type and base align to psb_gem_create() 2014-03-17 20:11:59 +01:00
gma_device.c drm/gma500: Unify _get_core_freq for cdv and psb 2014-03-17 20:13:24 +01:00
gma_device.h drm/gma500: Unify _get_core_freq for cdv and psb 2014-03-17 20:13:24 +01:00
gma_display.c drm: Replace crtc fb with primary plane fb (v3) 2014-04-01 20:18:28 -04:00
gma_display.h drm/gma500: Unify encoder mode fixup 2014-03-17 20:14:01 +01:00
gtt.c drm/gem: remove misleading gfp parameter to get_pages() 2014-07-08 00:29:53 +02:00
gtt.h drm/gma500: Add backing type and base align to psb_gem_create() 2014-03-17 20:11:59 +01:00
intel_bios.c
intel_bios.h
intel_gmbus.c drm/gma500: Add aux device support for gmbus 2013-11-08 16:22:08 +01:00
intel_i2c.c
Kconfig ACPI / gpu / drm: Stop selecting VIDEO_OUTPUT_CONTROL 2014-03-20 02:37:22 +01:00
Makefile drm/gma500: Unify _get_core_freq for cdv and psb 2014-03-17 20:13:24 +01:00
mdfld_device.c
mdfld_dsi_dpi.c
mdfld_dsi_dpi.h
mdfld_dsi_output.c drm: add register and unregister functions for connectors 2014-06-19 08:55:28 +02:00
mdfld_dsi_output.h
mdfld_dsi_pkg_sender.c drm: Remove spurious ';' 2014-06-10 09:35:42 +10:00
mdfld_dsi_pkg_sender.h
mdfld_intel_display.c drm: Replace crtc fb with primary plane fb (v3) 2014-04-01 20:18:28 -04:00
mdfld_output.c
mdfld_output.h
mdfld_tmd_vid.c
mdfld_tpo_vid.c
mid_bios.c
mid_bios.h
mmu.c Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2014-04-08 09:52:16 -07:00
mmu.h drm/gma500: Give MMU code it's own header file 2014-03-17 20:11:48 +01:00
oaktrail.h
oaktrail_crtc.c drm: Replace crtc fb with primary plane fb (v3) 2014-04-01 20:18:28 -04:00
oaktrail_device.c Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2013-11-15 14:19:54 +09:00
oaktrail_hdmi.c drm: add register and unregister functions for connectors 2014-06-19 08:55:28 +02:00
oaktrail_hdmi_i2c.c tree-wide: use reinit_completion instead of INIT_COMPLETION 2013-11-15 09:32:21 +09:00
oaktrail_lvds.c drm: add register and unregister functions for connectors 2014-06-19 08:55:28 +02:00
opregion.c drm/gma500: Move asle interrupt work into a work task 2014-03-17 20:12:04 +01:00
opregion.h
power.c
power.h
psb_device.c drm/gma500: Unify _get_core_freq for cdv and psb 2014-03-17 20:13:24 +01:00
psb_device.h
psb_drv.c drm: Remove DRM_ARRAY_SIZE() for ARRAY_SIZE() 2014-06-10 09:36:17 +10:00
psb_drv.h drm/gma500: Code cleanup - inline documentation 2014-03-17 20:14:10 +01:00
psb_intel_display.c drm: Replace crtc fb with primary plane fb (v3) 2014-04-01 20:18:28 -04:00
psb_intel_drv.h drm/gma500: Remove unused ioctls 2014-03-17 20:11:57 +01:00
psb_intel_lvds.c drm: add register and unregister functions for connectors 2014-06-19 08:55:28 +02:00
psb_intel_modes.c
psb_intel_reg.h
psb_intel_sdvo.c drm: add register and unregister functions for connectors 2014-06-19 08:55:28 +02:00
psb_intel_sdvo_regs.h
psb_irq.c drm/gma500: Add support for SGX interrupts 2014-03-17 20:11:38 +01:00
psb_irq.h drm: Kill DRM_IRQ_ARGS 2013-12-18 11:33:46 +10:00
psb_lid.c
psb_reg.h
tc35876x-dsi-lvds.c
tc35876x-dsi-lvds.h