浏览代码

drm/nouveau: Double the perf table memory clocks on pre-G71 cards.

Signed-off-by: Francisco Jerez <currojerez@riseup.net>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Francisco Jerez 14 年之前
父节点
当前提交
e829d804d7
共有 1 个文件被更改,包括 8 次插入2 次删除
  1. 8 2
      drivers/gpu/drm/nouveau/nouveau_perf.c

+ 8 - 2
drivers/gpu/drm/nouveau/nouveau_perf.c

@@ -136,7 +136,7 @@ nouveau_perf_init(struct drm_device *dev)
 			perflvl->fanspeed = entry[55];
 			perflvl->voltage = entry[56];
 			perflvl->core = ROM32(entry[1]) * 10;
-			perflvl->memory = ROM32(entry[5]) * 10;
+			perflvl->memory = ROM32(entry[5]) * 20;
 			break;
 		case 0x21:
 		case 0x23:
@@ -144,7 +144,13 @@ nouveau_perf_init(struct drm_device *dev)
 			perflvl->fanspeed = entry[4];
 			perflvl->voltage = entry[5];
 			perflvl->core = ROM16(entry[6]) * 1000;
-			perflvl->memory = ROM16(entry[11]) * 1000;
+
+			if (dev_priv->chipset == 0x49 ||
+			    dev_priv->chipset == 0x4b)
+				perflvl->memory = ROM16(entry[11]) * 1000;
+			else
+				perflvl->memory = ROM16(entry[11]) * 2000;
+
 			break;
 		case 0x25:
 			perflvl->fanspeed = entry[4];