PERFORCE change 172680 for review

Rafal Jaworowski raj at FreeBSD.org
Wed Jan 6 22:18:30 UTC 2010


http://p4web.freebsd.org/chv.cgi?CH=172680

Change 172680 by raj at raj_fdt on 2010/01/06 22:17:59

	mpc85xx: Clean up LAW regs early, so we can start with a known state.

Affected files ...

.. //depot/projects/fdt/sys/powerpc/booke/platform_bare.c#3 edit

Differences ...

==== //depot/projects/fdt/sys/powerpc/booke/platform_bare.c#3 (text+ko) ====

@@ -90,7 +90,8 @@
 static int
 bare_probe(platform_t plat)
 {
-	uint32_t ver;
+	uint32_t ver, sr;
+	int i, law_max, tgt;
 
 	ver = SVR_VER(mfspr(SPR_SVR));
 	if (ver == SVR_MPC8572E || ver == SVR_MPC8572)
@@ -98,6 +99,23 @@
 	else
 		maxcpu = 1;
 
+	/*
+	 * Clear local access windows. Skip DRAM entries, so we don't shoot
+	 * ourselves in the foot.
+	 */
+	law_max = law_getmax();
+	for (i = 0; i < law_max; i++) {
+		sr = ccsr_read4(OCP85XX_LAWSR(i));
+		if ((sr & 0x80000000) == 0)
+			continue;
+		tgt = (sr & 0x01f00000) >> 20;
+		if (tgt == OCP85XX_TGTIF_RAM1 || tgt == OCP85XX_TGTIF_RAM2 ||
+		    tgt == OCP85XX_TGTIF_RAM_INTL)
+			continue;
+
+		ccsr_write4(OCP85XX_LAWSR(i), sr & 0x7fffffff);
+	}
+
 	return (BUS_PROBE_GENERIC);
 }
 


More information about the p4-projects mailing list