From: Ben Skeggs Date: Mon, 18 Aug 2014 02:41:57 +0000 (+1000) Subject: drm/nouveau/pwr: wait for scrubbers to finish before uploading new ucode X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=a2410f5a0fcb6326fe8da41a4e8dcdc116436c74;p=linux-beck.git drm/nouveau/pwr: wait for scrubbers to finish before uploading new ucode Signed-off-by: Ben Skeggs --- diff --git a/drivers/gpu/drm/nouveau/core/subdev/pwr/base.c b/drivers/gpu/drm/nouveau/core/subdev/pwr/base.c index 477c9a214264..0ab55f27ec45 100644 --- a/drivers/gpu/drm/nouveau/core/subdev/pwr/base.c +++ b/drivers/gpu/drm/nouveau/core/subdev/pwr/base.c @@ -203,9 +203,8 @@ _nouveau_pwr_init(struct nouveau_object *object) nv_wait(ppwr, 0x10a04c, 0xffffffff, 0x00000000); nv_mask(ppwr, 0x000200, 0x00002000, 0x00000000); nv_mask(ppwr, 0x000200, 0x00002000, 0x00002000); - - /* At least one GM107 needs this delay after reset */ - udelay(20); + nv_rd32(ppwr, 0x000200); + nv_wait(ppwr, 0x10a10c, 0x00000006, 0x00000000); /* upload data segment */ nv_wr32(ppwr, 0x10a1c0, 0x01000000);