haswell: Misc updates from 1.6.1 ref code

These programming sequences were changed in the latest code.

Change-Id: Ia4b763a49542635713d11a9ee81f7e7f200bf841
Signed-off-by: Duncan Laurie <dlaurie@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/65612
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: http://review.coreboot.org/4466
Tested-by: build bot (Jenkins)
Reviewed-by: Patrick Georgi <patrick@georgi-clan.de>
diff --git a/src/northbridge/intel/haswell/gma.c b/src/northbridge/intel/haswell/gma.c
index f13ef7a..00d7583 100644
--- a/src/northbridge/intel/haswell/gma.c
+++ b/src/northbridge/intel/haswell/gma.c
@@ -350,20 +350,11 @@
 		gpu_is_ulx = 1;
 
 	/* CD Frequency */
-	if (gtt_read(0x42014) & 0x1000000) {
-		cdclk = 0; /* only 450mhz */
-	} else {
-		cdclk = 2; /* 337.5mhz, 450mhz, or 540mhz */
-		if (gpu_is_ulx)
-			cdclk = 0; /* only 337.5mhz */
+	if ((gtt_read(0x42014) & 0x1000000) || gpu_is_ulx || haswell_is_ult())
+		cdclk = 0; /* fixed frequency */
+	else
+		cdclk = 2; /* variable frequency */
 
-		/* TODO: this check does not seem right... */
-		if (haswell_is_ult() &&
-		    haswell_stepping() < HASWELL_STEPPING_MOBILE_D0)
-			cdclk = 0; /* only 450mhz */
-		else
-			cdclk = 1; /* 337.5mhz and 450mhz */
-	}
 	if (gpu_is_ulx || cdclk != 0)
 		gtt_rmw(0x130040, 0xf7ffffff, 0x04000000);
 	else
@@ -371,7 +362,7 @@
 
 	/* More magic */
 	if (haswell_is_ult() || gpu_is_ulx) {
-		if (cdclk == 1 && gpu_is_ulx == 0)
+		if (!gpu_is_ulx)
 			gtt_write(0x138128, 0x00000000);
 		else
 			gtt_write(0x138128, 0x00000001);