nv40: fail completely if we don't have a ctxprog for the chipset
diff --git a/shared-core/nv40_graph.c b/shared-core/nv40_graph.c
index de178f5..4c378a0 100644
--- a/shared-core/nv40_graph.c
+++ b/shared-core/nv40_graph.c
@@ -1982,20 +1982,17 @@
 	default:
 		DRM_ERROR("Context program for 0x%02x unavailable\n",
 			  dev_priv->chipset);
-		ctx_prog = NULL;
-		break;
+		return -EINVAL;
 	}
 
 	/* Load the context program onto the card */
-	if (ctx_prog) {
-		DRM_DEBUG("Loading context program\n");
-		i = 0;
+	DRM_DEBUG("Loading context program\n");
 
-		NV_WRITE(NV40_PGRAPH_CTXCTL_UCODE_INDEX, 0);
-		while (ctx_prog[i] != ~0) {
-			NV_WRITE(NV40_PGRAPH_CTXCTL_UCODE_DATA, ctx_prog[i]);
-			i++;
-		}
+	i = 0;
+	NV_WRITE(NV40_PGRAPH_CTXCTL_UCODE_INDEX, 0);
+	while (ctx_prog[i] != ~0) {
+		NV_WRITE(NV40_PGRAPH_CTXCTL_UCODE_DATA, ctx_prog[i]);
+		i++;
 	}
 
 	/* No context present currently */