diff options
author | Dave Airlie <airlied@redhat.com> | 2011-03-14 00:17:55 -0400 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2011-03-14 00:37:41 -0400 |
commit | bcd5023c961a44c7149936553b6929b2b233dd27 (patch) | |
tree | 98a2e35423aac2b963909b38a1263c2b812c8697 /drivers/gpu | |
parent | 34db18abd376b2075c760c38f0b861aed379415d (diff) |
drm/i915: disable opregion lid detection for now.
At least on my HP 2540p this is wrong at bootup, fine
at any other time once a lid event has occured. This is due to
_REG vs _INI ordering in the ACPI tables.
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu')
-rw-r--r-- | drivers/gpu/drm/i915/intel_panel.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/intel_panel.c b/drivers/gpu/drm/i915/intel_panel.c index 18391b3ec2c..4e5ff593413 100644 --- a/drivers/gpu/drm/i915/intel_panel.c +++ b/drivers/gpu/drm/i915/intel_panel.c | |||
@@ -248,18 +248,24 @@ void intel_panel_setup_backlight(struct drm_device *dev) | |||
248 | enum drm_connector_status | 248 | enum drm_connector_status |
249 | intel_panel_detect(struct drm_device *dev) | 249 | intel_panel_detect(struct drm_device *dev) |
250 | { | 250 | { |
251 | #if 0 | ||
251 | struct drm_i915_private *dev_priv = dev->dev_private; | 252 | struct drm_i915_private *dev_priv = dev->dev_private; |
253 | #endif | ||
252 | 254 | ||
253 | if (i915_panel_ignore_lid) | 255 | if (i915_panel_ignore_lid) |
254 | return i915_panel_ignore_lid > 0 ? | 256 | return i915_panel_ignore_lid > 0 ? |
255 | connector_status_connected : | 257 | connector_status_connected : |
256 | connector_status_disconnected; | 258 | connector_status_disconnected; |
257 | 259 | ||
260 | /* opregion lid state on HP 2540p is wrong at boot up, | ||
261 | * appears to be either the BIOS or Linux ACPI fault */ | ||
262 | #if 0 | ||
258 | /* Assume that the BIOS does not lie through the OpRegion... */ | 263 | /* Assume that the BIOS does not lie through the OpRegion... */ |
259 | if (dev_priv->opregion.lid_state) | 264 | if (dev_priv->opregion.lid_state) |
260 | return ioread32(dev_priv->opregion.lid_state) & 0x1 ? | 265 | return ioread32(dev_priv->opregion.lid_state) & 0x1 ? |
261 | connector_status_connected : | 266 | connector_status_connected : |
262 | connector_status_disconnected; | 267 | connector_status_disconnected; |
268 | #endif | ||
263 | 269 | ||
264 | return connector_status_unknown; | 270 | return connector_status_unknown; |
265 | } | 271 | } |