summary refs log tree commit diff
diff options
context:
space:
mode:
authorEmil Velikov <emil.l.velikov@gmail.com>2011-03-18 20:19:53 +0000
committerBen Skeggs <bskeggs@redhat.com>2011-04-05 11:06:14 +1000
commitb251d1a488b8a742b621f4cd28f7e57a7bacc434 (patch)
treefe4c5bebba0d247b50403b14c8383775d1051fb6
parentac5c15fa585a89bcebca92dfdbb862dd507534fc (diff)
downloadlinux-b251d1a488b8a742b621f4cd28f7e57a7bacc434.tar.gz
nv30: Fix parsing of perf table
Perf tables v 1.2 and 1.3 (seen on Geforce FX/ 5) are not long enough
to store the voltage label/id

v2 - Remove comment from the code

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
-rw-r--r--drivers/gpu/drm/nouveau/nouveau_perf.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpu/drm/nouveau/nouveau_perf.c b/drivers/gpu/drm/nouveau/nouveau_perf.c
index ac62a1b8c4fc..670e3cb697ec 100644
--- a/drivers/gpu/drm/nouveau/nouveau_perf.c
+++ b/drivers/gpu/drm/nouveau/nouveau_perf.c
@@ -134,7 +134,7 @@ nouveau_perf_init(struct drm_device *dev)
 		case 0x13:
 		case 0x15:
 			perflvl->fanspeed = entry[55];
-			perflvl->voltage = entry[56];
+			perflvl->voltage = (recordlen > 56) ? entry[56] : 0;
 			perflvl->core = ROM32(entry[1]) * 10;
 			perflvl->memory = ROM32(entry[5]) * 20;
 			break;