[LinuxBIOS] r2404 - in trunk/LinuxBIOSv2/src/northbridge/amd: gx2 lx

svn at openbios.org svn at openbios.org
Wed Sep 13 03:57:48 CEST 2006


Author: rminnich
Date: 2006-09-13 03:57:47 +0200 (Wed, 13 Sep 2006)
New Revision: 2404

Modified:
   trunk/LinuxBIOSv2/src/northbridge/amd/gx2/raminit.c
   trunk/LinuxBIOSv2/src/northbridge/amd/lx/raminit.c
Log:
warm boot patch from richard smith.
signed-off-by: Ronald G. Minnich


Modified: trunk/LinuxBIOSv2/src/northbridge/amd/gx2/raminit.c
===================================================================
--- trunk/LinuxBIOSv2/src/northbridge/amd/gx2/raminit.c	2006-09-13 01:14:45 UTC (rev 2403)
+++ trunk/LinuxBIOSv2/src/northbridge/amd/gx2/raminit.c	2006-09-13 01:57:47 UTC (rev 2404)
@@ -94,6 +94,17 @@
 	msr.lo = 0x8ea0ad6a;
 	wrmsr(0x4c00000f, msr);
 
-	/* DRAM working now?? */
+	/* Fixes from Jordan Crouse of AMD. */
 
+	/* make sure there is nothing stale in the cache */
+	__asm__("wbinvd\n");
+
+	print_debug("RAM DLL lock\r\n");
+	/* The RAM dll needs a write to lock on so generate a few dummy writes */
+	volatile unsigned long *ptr;
+	for (i=0;i<5;i++) {
+		ptr = (void *)i;
+		*ptr = (unsigned long)i;
+	}
+
 }

Modified: trunk/LinuxBIOSv2/src/northbridge/amd/lx/raminit.c
===================================================================
--- trunk/LinuxBIOSv2/src/northbridge/amd/lx/raminit.c	2006-09-13 01:14:45 UTC (rev 2403)
+++ trunk/LinuxBIOSv2/src/northbridge/amd/lx/raminit.c	2006-09-13 01:57:47 UTC (rev 2404)
@@ -135,6 +135,17 @@
 
 	print_debug("DRAM controller init done.\r\n");
 
-	/* DRAM working now?? */
+	/* Fixes from Jordan Crouse of AMD. */
 
+	/* make sure there is nothing stale in the cache */
+	__asm__("wbinvd\n");
+
+	print_debug("RAM DLL lock\r\n");
+	/* The RAM dll needs a write to lock on so generate a few dummy writes */
+	volatile unsigned long *ptr;
+	for (i=0;i<5;i++) {
+		ptr = (void *)i;
+		*ptr = (unsigned long)i;
+	}
+
 }





More information about the coreboot mailing list