aboutsummaryrefslogtreecommitdiff
path: root/src/arch/ppc
diff options
context:
space:
mode:
authorGreg Watson <jarrah@users.sourceforge.net>2004-01-22 01:00:07 +0000
committerGreg Watson <jarrah@users.sourceforge.net>2004-01-22 01:00:07 +0000
commitaabdf02cdd461b0b3623fd047851ae9d2e872ef8 (patch)
tree821b5abc97f108f8308983666328ddf3b10fa373 /src/arch/ppc
parentc5acd90b53f90363ed691a6fd63675af78fea971 (diff)
updated for other boards
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1350 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'src/arch/ppc')
-rw-r--r--src/arch/ppc/init/ppc_main.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/arch/ppc/init/ppc_main.c b/src/arch/ppc/init/ppc_main.c
index 9853758ce4..268e21436a 100644
--- a/src/arch/ppc/init/ppc_main.c
+++ b/src/arch/ppc/init/ppc_main.c
@@ -21,6 +21,8 @@ void (*payload)(void) = (void (*)(void))_iseg;
* - start hardwaremain() which does remainder of setup
*/
+extern void flush_dcache(void);
+
void ppc_main(void)
{
unsigned *from;
@@ -40,5 +42,13 @@ void ppc_main(void)
*to++ = *from++;
}
+ /*
+ * Flush cache to memory because linux will try and
+ * invalidate it.
+ */
+ flush_dcache();
+
payload();
+
+ /* NOT REACHED */
}