linux_dsm_epyc7002/drivers/gpu/drm/i915
Imre Deak baa707073b drm/i915: use power get/put instead of set for power on after init
Currently we make sure that all power domains are enabled during driver
init and turn off unneded ones only after the first modeset. Similarly
during suspend we enable all power domains, which will remain on through
the following resume until the first modeset.

This logic is supported by intel_set_power_well() in the power domain
framework. It would be nice to simplify the API, so that we only have
get/put functions and make it more explicit on the higher level how this
"power well on during init" logic works. This will make it also easier
if in the future we want to shorten the time the power wells are on.

For this add a new device private flag tracking whether we have the
power wells on because of init/suspend and use only
intel_display_power_get()/put(). As nothing else uses
intel_set_power_well() we can remove it.

This also fixes

commit 6efdf354dd
Author: Imre Deak <imre.deak@intel.com>
Date:   Wed Oct 16 17:25:52 2013 +0300

    drm/i915: enable only the needed power domains during modeset

where removing intel_set_power_well() resulted in not releasing the
reference on the power well that was taken during init and thus leaving
the power well on all the time. Regression reported by Paulo.

v2:
- move the init_power_on flag to the power_domains struct (Daniel)

v3:
- add note about this being a regression fix too (Paulo)

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>
2013-10-27 17:38:13 +01:00
..
dvo_ch7xxx.c drm/i915: dvo_ch7xxx: fix vsync polarity setting 2013-07-25 16:10:22 +02:00
dvo_ch7017.c
dvo_ivch.c
dvo_ns2501.c
dvo_sil164.c
dvo_tfp410.c
dvo.h drm/i915: Remove unused mode_fixup() vfunc of struct intel_dvo_dev_ops 2013-09-05 21:39:59 +02:00
i915_debugfs.c drm/i915: Use a spin lock to protect the pipe crc struct 2013-10-22 00:27:49 +02:00
i915_dma.c drm/i915: use power get/put instead of set for power on after init 2013-10-27 17:38:13 +01:00
i915_drv.c drm/i915: use power get/put instead of set for power on after init 2013-10-27 17:38:13 +01:00
i915_drv.h drm/i915: use power get/put instead of set for power on after init 2013-10-27 17:38:13 +01:00
i915_gem_context.c drm/i915: cleanup context fini 2013-10-16 11:08:30 +02:00
i915_gem_debug.c drm/i915: Fix #endif comment 2013-08-09 10:45:52 +02:00
i915_gem_dmabuf.c drm/i915: Pin pages whilst mapping the dma-buf 2013-09-03 19:17:58 +02:00
i915_gem_evict.c drm/i915: trace vm eviction instead of everything 2013-10-01 07:45:20 +02:00
i915_gem_execbuffer.c drm/i915: Convert active API to VMA 2013-10-01 07:45:21 +02:00
i915_gem_gtt.c drm/i915: Use kcalloc more 2013-10-01 07:45:01 +02:00
i915_gem_stolen.c Linux 3.12-rc2 2013-09-24 09:32:53 +02:00
i915_gem_tiling.c drm/i915: prevent tiling changes on framebuffer backing storage 2013-10-16 22:04:52 +02:00
i915_gem.c drm/i915: fix open-coded DIV_ROUND_UP 2013-10-21 10:04:03 +02:00
i915_gpu_error.c drm/i915: Educate users in dmesg about reporting gpu hangs 2013-10-10 14:49:17 +02:00
i915_ioc32.c
i915_irq.c drm/i915: Use a spin lock to protect the pipe crc struct 2013-10-22 00:27:49 +02:00
i915_reg.h drm/i915: Remove WaFbcDisableDpfcClockGating on HSW 2013-10-27 16:04:42 +01:00
i915_suspend.c drm/i915: don't save/restore CACHE_MODE_0 on gen7+ 2013-10-11 23:32:32 +02:00
i915_sysfs.c drm/i915: Finish enabling rps before use by sysfs or debugfs 2013-10-10 14:23:39 +02:00
i915_trace_points.c
i915_trace.h drm/i915: Add a tracepoint for using a semaphore 2013-10-01 07:45:24 +02:00
i915_ums.c drm/i915: scrap register address storage 2013-06-10 19:54:14 +02:00
intel_acpi.c i915: fix ACPI _DSM warning 2013-08-05 19:04:05 +02:00
intel_bios.c drm/i915: Rip out SUPPORTS_EDP 2013-10-01 07:45:07 +02:00
intel_bios.h drm/i915: use the HDMI DDI buffer translations from VBT 2013-10-01 07:45:04 +02:00
intel_crt.c drm/i915: vlv: fix VGA hotplug after modeset 2013-10-16 22:03:14 +02:00
intel_ddi.c drm/i915: don't leak dp_connector at intel_ddi_init 2013-10-10 12:47:13 +02:00
intel_display.c drm/i915: use power get/put instead of set for power on after init 2013-10-27 17:38:13 +01:00
intel_dp.c drm/i915/dp: don't mention eDP bpp clamping if it doesn't affect bpp 2013-10-18 16:00:06 +02:00
intel_drv.h drm/i915: use power get/put instead of set for power on after init 2013-10-27 17:38:13 +01:00
intel_dsi_cmd.c drm/i915/dsi: s/size_t/int/ 2013-09-04 17:34:51 +02:00
intel_dsi_cmd.h drm/i915/dsi: s/size_t/int/ 2013-09-04 17:34:51 +02:00
intel_dsi_pll.c drm/i915: Use adjusted_mode in DSI PLL calculations 2013-09-16 23:36:38 +02:00
intel_dsi.c drm/i915: Use pipe_name() instead of the pipe number 2013-10-16 19:42:52 +02:00
intel_dsi.h drm/i915: add VLV DSI PLL Calculations 2013-09-04 17:34:48 +02:00
intel_dvo.c drm/i915: destroy connector sysfs files earlier 2013-10-01 07:45:48 +02:00
intel_fbdev.c drm/i915: fix open-coded DIV_ROUND_UP 2013-10-21 10:04:03 +02:00
intel_hdmi.c drm/i915: Move some hdmi enable function name to vlv specific. 2013-10-16 13:32:18 +02:00
intel_i2c.c drm/i915: Program GMBUS Frequency based on the CDCLK for VLV. 2013-10-01 07:45:41 +02:00
intel_lvds.c drm/i915: destroy connector sysfs files earlier 2013-10-01 07:45:48 +02:00
intel_modes.c drm/i915: Add "Automatic" mode for the "Broadcast RGB" property 2013-01-20 13:09:44 +01:00
intel_opregion.c drm/i915: Add breadcrumbs for why the backlight is being set 2013-10-14 10:02:36 +02:00
intel_overlay.c drm/i915: use pointer = k[cmz...]alloc(sizeof(*pointer), ...) pattern 2013-10-01 07:45:01 +02:00
intel_panel.c drm/i915: Use pipe_name() instead of the pipe number 2013-10-16 19:42:52 +02:00
intel_pm.c drm/i915: use power get/put instead of set for power on after init 2013-10-27 17:38:13 +01:00
intel_ringbuffer.c drm/i915: Do a fuller init after reset 2013-10-16 11:08:08 +02:00
intel_ringbuffer.h drm/i915: Write RING_TAIL once per-request 2013-09-10 15:35:58 +02:00
intel_sdvo_regs.h
intel_sdvo.c drm/i915: destroy connector sysfs files earlier 2013-10-01 07:45:48 +02:00
intel_sideband.c drm/i915/vlv: add doc names to sideband file 2013-10-11 23:33:44 +02:00
intel_sprite.c drm/i915: Rename primary_disabled to primary_enabled 2013-10-10 12:47:14 +02:00
intel_tv.c drm/i915: Rename intel_flush_display_plane to intel_flush_primary_plane 2013-10-10 12:47:02 +02:00
intel_uncore.c drm/i915: Remove gen specific checks in MMIO 2013-10-10 12:47:10 +02:00
Kconfig drm/i915: Kconfig option to disable the legacy fbdev support 2013-10-11 23:37:23 +02:00
Makefile drm/i915: rename intel_fb.c to intel_fbdev.c 2013-10-11 23:37:33 +02:00