瀏覽代碼

drm/nouveau/ltc: switch to new-style timer macros

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Ben Skeggs 10 年之前
父節點
當前提交
1302bcbb82
共有 2 個文件被更改,包括 16 次插入4 次删除
  1. 8 2
      drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gf100.c
  2. 8 2
      drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gm107.c

+ 8 - 2
drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gf100.c

@@ -39,10 +39,16 @@ gf100_ltc_cbc_clear(struct nvkm_ltc_priv *ltc, u32 start, u32 limit)
 void
 gf100_ltc_cbc_wait(struct nvkm_ltc_priv *ltc)
 {
+	struct nvkm_device *device = ltc->base.subdev.device;
 	int c, s;
 	for (c = 0; c < ltc->ltc_nr; c++) {
-		for (s = 0; s < ltc->lts_nr; s++)
-			nv_wait(ltc, 0x1410c8 + c * 0x2000 + s * 0x400, ~0, 0);
+		for (s = 0; s < ltc->lts_nr; s++) {
+			const u32 addr = 0x1410c8 + (c * 0x2000) + (s * 0x400);
+			nvkm_msec(device, 2000,
+				if (!nvkm_rd32(device, addr))
+					break;
+			);
+		}
 	}
 }
 

+ 8 - 2
drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gm107.c

@@ -38,10 +38,16 @@ gm107_ltc_cbc_clear(struct nvkm_ltc_priv *ltc, u32 start, u32 limit)
 static void
 gm107_ltc_cbc_wait(struct nvkm_ltc_priv *ltc)
 {
+	struct nvkm_device *device = ltc->base.subdev.device;
 	int c, s;
 	for (c = 0; c < ltc->ltc_nr; c++) {
-		for (s = 0; s < ltc->lts_nr; s++)
-			nv_wait(ltc, 0x14046c + c * 0x2000 + s * 0x200, ~0, 0);
+		for (s = 0; s < ltc->lts_nr; s++) {
+			const u32 addr = 0x14046c + (c * 0x2000) + (s * 0x200);
+			nvkm_msec(device, 2000,
+				if (!nvkm_rd32(device, addr))
+					break;
+			);
+		}
 	}
 }