aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/nouveau/core/subdev/pwr
diff options
context:
space:
mode:
authorMartin Peres <martin.peres@free.fr>2014-08-17 17:33:09 +0200
committerBen Skeggs <bskeggs@redhat.com>2014-09-15 22:24:55 +1000
commit2a5e5fa7345d06e0e92d6c8bdb87415c3ca9b683 (patch)
treefb5800cac460c40dd293c481a53625fc998b099f /drivers/gpu/drm/nouveau/core/subdev/pwr
parentdrm/gm107/therm: add PWM fan support v2 (diff)
downloadlinux-dev-2a5e5fa7345d06e0e92d6c8bdb87415c3ca9b683.tar.xz
linux-dev-2a5e5fa7345d06e0e92d6c8bdb87415c3ca9b683.zip
drm/nouveau/ppwr: enable ppwr on gm107
For some reason, it is now required to wait a 20 µs after the 0x200 reset of the engine. Signed-off-by: Martin Peres <martin.peres@free.fr> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/nouveau/core/subdev/pwr')
-rw-r--r--drivers/gpu/drm/nouveau/core/subdev/pwr/base.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/gpu/drm/nouveau/core/subdev/pwr/base.c b/drivers/gpu/drm/nouveau/core/subdev/pwr/base.c
index 69f1f34f6931..477c9a214264 100644
--- a/drivers/gpu/drm/nouveau/core/subdev/pwr/base.c
+++ b/drivers/gpu/drm/nouveau/core/subdev/pwr/base.c
@@ -204,6 +204,9 @@ _nouveau_pwr_init(struct nouveau_object *object)
nv_mask(ppwr, 0x000200, 0x00002000, 0x00000000);
nv_mask(ppwr, 0x000200, 0x00002000, 0x00002000);
+ /* At least one GM107 needs this delay after reset */
+ udelay(20);
+
/* upload data segment */
nv_wr32(ppwr, 0x10a1c0, 0x01000000);
for (i = 0; i < impl->data.size / 4; i++)