diff options
author | Daniel Vetter <daniel.vetter@ffwll.ch> | 2013-01-30 09:59:57 -0500 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2013-01-31 05:50:09 -0500 |
commit | 6b25a88752e8e9dc33c700712059b094d3da3219 (patch) | |
tree | 2da67fb0fbac7eb1777ea8bf887c93bd20d610e5 /drivers/gpu/drm | |
parent | 725a5b54028916cd2511a251c5b5b13d1715addc (diff) |
drm/i915: kill cargo-culted locking from power well code
We may not concurrently change the power wells code. Which
is already guaranteed since modesets aren't concurrent. That
leaves races against setup/teardown/suspend/resume, and for
those we already (try) rather hard not to hit concurrent
modesets.
No debug WARN_ON added since that would require us to grab the
modeset locks in init/suspend code. Which is again just cargo
culting since just grabbing the locks in those paths isn't good
enough, we need the right order of operations, too.
Cc: Paulo Zanoni <paulo.r.zanoni@intel.com>
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@gmail.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm')
-rw-r--r-- | drivers/gpu/drm/i915/intel_pm.c | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c index 64d65f564a7c..bec1f9ffba2d 100644 --- a/drivers/gpu/drm/i915/intel_pm.c +++ b/drivers/gpu/drm/i915/intel_pm.c | |||
@@ -4088,8 +4088,6 @@ void intel_init_power_well(struct drm_device *dev) | |||
4088 | if (!IS_HASWELL(dev)) | 4088 | if (!IS_HASWELL(dev)) |
4089 | return; | 4089 | return; |
4090 | 4090 | ||
4091 | mutex_lock(&dev->struct_mutex); | ||
4092 | |||
4093 | /* For now, we need the power well to be always enabled. */ | 4091 | /* For now, we need the power well to be always enabled. */ |
4094 | intel_set_power_well(dev, true); | 4092 | intel_set_power_well(dev, true); |
4095 | 4093 | ||
@@ -4097,8 +4095,6 @@ void intel_init_power_well(struct drm_device *dev) | |||
4097 | * the driver is in charge now. */ | 4095 | * the driver is in charge now. */ |
4098 | if (I915_READ(HSW_PWR_WELL_BIOS) & HSW_PWR_WELL_ENABLE) | 4096 | if (I915_READ(HSW_PWR_WELL_BIOS) & HSW_PWR_WELL_ENABLE) |
4099 | I915_WRITE(HSW_PWR_WELL_BIOS, 0); | 4097 | I915_WRITE(HSW_PWR_WELL_BIOS, 0); |
4100 | |||
4101 | mutex_unlock(&dev->struct_mutex); | ||
4102 | } | 4098 | } |
4103 | 4099 | ||
4104 | /* Set up chip specific power management-related functions */ | 4100 | /* Set up chip specific power management-related functions */ |