OpenCloudOS-Kernel/drivers/gpu/drm/i915
Daniel Vetter abfdc1e375 drm/i915: Move SPLL disabling into hsw_crt_post_disable
Similar to how the ->crtc_mode_set hook should touch the hardware to
enable anything the ->crtc_off hook should disable anything in the
hardware. Otherwise runtime pm for dpms will not work.

Currently the only things left int the haswell_crtc_off hook is
disabling the ddi plls. We can't move the WRPLL enabling out yet
because the current ddi pll sharing code used by the haswell code
doesn't separately track active users and overall users. This must be
fixed by porting it to the generic shared display pll framework, which
is powerful enough.

But the SPLL source is only used by the crt encoder and so can be
moved already. We only need to make sure that the ddi port E is
already off, which hsw_fdi_disable does by calling
intel_ddi_post_disable.

With this the code reorg to shuffle hsw fdi/lpt specific code into a
new hsw-specific crt encoder type is now finally complete.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
[imre: rebased on patchset version w/o pch/crt/fdi refactoring]
Signed-off-by: Imre Deak <imre.deak@intel.com>
Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-07-10 22:05:35 +02:00
..
Kconfig drm/i915: Introduce mapping of user pages into video memory (userptr) ioctl 2014-05-16 19:31:29 +02:00
Makefile drm/i915: Add support for Generic MIPI panel driver 2014-06-05 08:52:32 +02:00
dvo.h drm/i915: Remove unused mode_fixup() vfunc of struct intel_dvo_dev_ops 2013-09-05 21:39:59 +02:00
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: Remove spurious semicolons 2014-04-09 21:54:33 +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 some L3 registers to the parser whitelist 2014-06-18 00:48:35 +02:00
i915_debugfs.c drm/i915: get/put runtime PM at i915_semaphore_status 2014-07-10 08:30:06 +02:00
i915_dma.c drm/i915: Corrected 'file_priv' to 'file' in 'i915_driver_preclose()' 2014-07-07 20:00:44 +02:00
i915_drv.c drm/i915: make system freeze support depend on CONFIG_ACPI_SLEEP 2014-07-08 12:30:15 +02:00
i915_drv.h drm/i915: Remove spll_refcount for hsw 2014-07-10 22:04:37 +02:00
i915_gem.c drm/i915: Generalize intel_ring_get_tail to take a ringbuf 2014-07-08 12:31:02 +02:00
i915_gem_context.c drm/i915: Emphasize that ctx->id is merely a user handle 2014-07-08 12:30:41 +02:00
i915_gem_debug.c drm/i915: prefer struct drm_i915_private to drm_i915_private_t 2014-03-31 15:34:21 +02:00
i915_gem_dmabuf.c drm/i915: Introduce mapping of user pages into video memory (userptr) ioctl 2014-05-16 19:31:29 +02:00
i915_gem_evict.c drm/i915: Prevent negative relocation deltas from wrapping 2014-05-27 11:18:40 +03:00
i915_gem_execbuffer.c drm/i915: Extract the actual workload submission mechanism from execbuffer 2014-07-08 12:31:06 +02:00
i915_gem_gtt.c Linux 3.16-rc4 2014-07-07 10:17:56 +02:00
i915_gem_gtt.h drm/i915: Added write-enable pte bit supportt 2014-06-17 09:21:47 +02:00
i915_gem_render_state.c drm/i915: Simplify processing of the golden render context state 2014-06-16 19:53:09 +02:00
i915_gem_stolen.c drm/i915: Try harder to get FBC 2014-07-03 11:27:57 +03:00
i915_gem_tiling.c drm/i915: prefer struct drm_i915_private to drm_i915_private_t 2014-03-31 15:34:21 +02:00
i915_gem_userptr.c drm/i915: Introduce mapping of user pages into video memory (userptr) ioctl 2014-05-16 19:31:29 +02:00
i915_gpu_error.c drm/i915/bdw: collect semaphore error state 2014-07-07 23:16:54 +02:00
i915_ioc32.c drm: Remove DRM_ARRAY_SIZE() for ARRAY_SIZE() 2014-06-10 09:36:17 +10:00
i915_irq.c drm/i915/vlv: WA for Turbo and RC6 to work together. 2014-07-08 21:05:33 +02:00
i915_params.c drm/i915: Replaced Blitter ring based flips with MMIO flips 2014-06-17 16:16:20 +02:00
i915_reg.h drm/i915: Clean up WRPLL/SPLL #defines 2014-07-10 22:04:45 +02:00
i915_suspend.c drm/i915: disable GT power saving early during system suspend 2014-05-22 21:53:27 +02:00
i915_sysfs.c drm/i915: s/i915_hw_context/intel_context 2014-05-22 23:41:17 +02:00
i915_trace.h drm/i915: s/intel_ring_buffer/intel_engine_cs 2014-05-22 23:01:05 +02:00
i915_trace_points.c
i915_ums.c drm/i915: Only restore backlight combination mode reg for ums 2014-01-24 17:22:45 +01:00
intel_acpi.c Merge branch 'acpi-dsm' 2014-01-12 23:45:52 +01:00
intel_bios.c drm/i915: default to having backlight if VBT not available 2014-06-23 16:08:20 +03:00
intel_bios.h drm/i915: Detect if MIPI panel based on VBT and initialize only if present 2014-06-05 08:52:33 +02:00
intel_crt.c drm/i915: Move SPLL disabling into hsw_crt_post_disable 2014-07-10 22:05:35 +02:00
intel_ddi.c drm/i915: Move SPLL disabling into hsw_crt_post_disable 2014-07-10 22:05:35 +02:00
intel_display.c drm/i915: ddi: move pch cleanup before encoder->post_disable 2014-07-10 22:05:12 +02:00
intel_dp.c drm/i915: Make use of intel_fb_obj() (v2) 2014-07-09 13:52:03 +02:00
intel_drv.h drm/i915: Introduce intel_fb_obj() macro 2014-07-09 13:51:42 +02:00
intel_dsi.c drm/i915: Fix memory leak in intel_dsi_init() error path 2014-06-13 22:08:15 +02:00
intel_dsi.h drm/i915: Add support for Generic MIPI panel driver 2014-06-05 08:52:32 +02:00
intel_dsi_cmd.c drm/i915: Send DPI command explicitely in LP mode 2014-04-09 21:54:30 +02:00
intel_dsi_cmd.h drm/i915: Send DPI command explicitely in LP mode 2014-04-09 21:54:30 +02:00
intel_dsi_panel_vbt.c drm/i915: Fix checkpatch errors 2014-06-11 16:57:33 +02:00
intel_dsi_pll.c drm/i915: Try harder to get best m, n, p values with minimal error 2013-12-11 23:52:18 +01:00
intel_dvo.c drm/i915: Don't get hw state from DVO chip unless DVO is enabled 2014-06-13 15:17:37 +02:00
intel_fbdev.c drm/i915: replace ALIGN(PAGE_SIZE) by PAGE_ALIGN 2014-07-02 13:31:32 +03:00
intel_hdmi.c drm/i915/chv: Force clock buffer enables 2014-06-11 16:57:30 +02:00
intel_i2c.c drm/i915: Kill duplicated cdclk readout code from i2c 2014-07-07 11:27:52 +02:00
intel_lvds.c drm/i915: replace drm_get_connector_name() with direct name field use 2014-06-04 13:14:37 +10:00
intel_modes.c
intel_opregion.c drm: convert crtc and connection_mutex to ww_mutex (v5) 2014-06-05 09:54:33 +10:00
intel_overlay.c drm/i915: Track frontbuffer invalidation/flushing 2014-06-19 18:14:47 +02:00
intel_panel.c drm/i915: set backlight duty cycle after backlight enable for gen4 2014-06-11 11:06:43 +03:00
intel_pm.c drm/i915: Make use of intel_fb_obj() (v2) 2014-07-09 13:52:03 +02:00
intel_renderstate.h drm/i915: Simplify processing of the golden render context state 2014-06-16 19:53:09 +02:00
intel_renderstate_gen6.c drm/i915: Simplify processing of the golden render context state 2014-06-16 19:53:09 +02:00
intel_renderstate_gen7.c drm/i915: Simplify processing of the golden render context state 2014-06-16 19:53:09 +02:00
intel_renderstate_gen8.c drm/i915: Simplify processing of the golden render context state 2014-06-16 19:53:09 +02:00
intel_ringbuffer.c drm/i915: HWS must be in the mappable region for g33 2014-07-08 21:07:17 +02:00
intel_ringbuffer.h drm/i915: Generalize intel_ring_get_tail to take a ringbuf 2014-07-08 12:31:02 +02:00
intel_sdvo.c drm/i915: Avoid div-by-zero when pixel_multiplier is zero 2014-06-11 11:06:43 +03:00
intel_sdvo_regs.h drm/i915: use __packed instead of __attribute__((packed)) 2013-12-03 18:19:49 +01:00
intel_sideband.c drm/i915: vlv/chv: fix DSI sideband register accessing 2014-05-19 17:50:14 +02:00
intel_sprite.c Linux 3.16-rc4 2014-07-07 10:17:56 +02:00
intel_tv.c drm: convert crtc and connection_mutex to ww_mutex (v5) 2014-06-05 09:54:33 +10:00
intel_uncore.c drm/i915: Emphasize that ctx->id is merely a user handle 2014-07-08 12:30:41 +02:00