aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu
diff options
context:
space:
mode:
authorBen Skeggs <bskeggs@redhat.com>2010-05-25 20:41:45 -0400
committerBen Skeggs <bskeggs@redhat.com>2010-05-28 02:06:36 -0400
commit73db4bedc5dde97adf59b5b5a07c6cf0ee56e668 (patch)
treee15f58bb72651a2017b2a0df67a068f09338b183 /drivers/gpu
parentf50c0b91e7718e7deda46475cfd0ea1413daed04 (diff)
drm/nouveau: don't execute INIT_GPIO unless we're really running the table
This resulted in accidently switching off the eDP panel on certain laptops since the default state in the GPIO table was off. Fixes rh#582621 Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'drivers/gpu')
-rw-r--r--drivers/gpu/drm/nouveau/nouveau_bios.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/gpu/drm/nouveau/nouveau_bios.c b/drivers/gpu/drm/nouveau/nouveau_bios.c
index 620cbd9767cc..b3c7a87e47d9 100644
--- a/drivers/gpu/drm/nouveau/nouveau_bios.c
+++ b/drivers/gpu/drm/nouveau/nouveau_bios.c
@@ -2807,7 +2807,10 @@ init_gpio(struct nvbios *bios, uint16_t offset, struct init_exec *iexec)
2807 2807
2808 BIOSLOG(bios, "0x%04X: Entry: 0x%08X\n", offset, gpio->entry); 2808 BIOSLOG(bios, "0x%04X: Entry: 0x%08X\n", offset, gpio->entry);
2809 2809
2810 nv50_gpio_set(bios->dev, gpio->tag, gpio->state_default); 2810 BIOSLOG(bios, "0x%04X: set gpio 0x%02x, state %d\n",
2811 offset, gpio->tag, gpio->state_default);
2812 if (bios->execute)
2813 nv50_gpio_set(bios->dev, gpio->tag, gpio->state_default);
2811 2814
2812 /* The NVIDIA binary driver doesn't appear to actually do 2815 /* The NVIDIA binary driver doesn't appear to actually do
2813 * any of this, my VBIOS does however. 2816 * any of this, my VBIOS does however.