summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarian Balakowicz <m8@semihalf.com>2006-03-14 16:02:31 +0100
committerMarian Balakowicz <m8@semihalf.com>2006-03-14 16:02:31 +0100
commitcd94ba397ed9c7d06578977d6c34c24732b2a9f1 (patch)
tree232b73e5829779148efcda36a3dadeac148ba2bd
parenta7c66ad2e52b49a7cf5efb9665dd0527db96ea29 (diff)
Add Dcbz(), Dcbi() and Dcbf() routines for MPC83xx.
-rw-r--r--CHANGELOG2
-rw-r--r--cpu/mpc83xx/start.S34
-rw-r--r--include/common.h3
3 files changed, 38 insertions, 1 deletions
diff --git a/CHANGELOG b/CHANGELOG
index e40ba053e9..7a8a2f3851 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -2,6 +2,8 @@
Changes since U-Boot 1.1.4:
======================================================================
+* Add Dcbz(), Dcbi() and Dcbf() routines for MPC83xx.
+
* Correct shift offsets in icache_status and dcache_status for MPC83xx.
* Add support for DS1374 RTC chip.
diff --git a/cpu/mpc83xx/start.S b/cpu/mpc83xx/start.S
index 324f6c36fe..6e02cce799 100644
--- a/cpu/mpc83xx/start.S
+++ b/cpu/mpc83xx/start.S
@@ -836,6 +836,40 @@ get_pvr:
mfspr r3, PVR
blr
+/*------------------------------------------------------------------------------- */
+/* Function: ppcDcbf */
+/* Description: Data Cache block flush */
+/* Input: r3 = effective address */
+/* Output: none. */
+/*------------------------------------------------------------------------------- */
+ .globl ppcDcbf
+ppcDcbf:
+ dcbf r0,r3
+ blr
+
+/*------------------------------------------------------------------------------- */
+/* Function: ppcDcbi */
+/* Description: Data Cache block Invalidate */
+/* Input: r3 = effective address */
+/* Output: none. */
+/*------------------------------------------------------------------------------- */
+ .globl ppcDcbi
+ppcDcbi:
+ dcbi r0,r3
+ blr
+
+/*--------------------------------------------------------------------------
+ * Function: ppcDcbz
+ * Description: Data Cache block zero.
+ * Input: r3 = effective address
+ * Output: none.
+ *-------------------------------------------------------------------------- */
+
+ .globl ppcDcbz
+ppcDcbz:
+ dcbz r0,r3
+ blr
+
/*-------------------------------------------------------------------*/
/*
diff --git a/include/common.h b/include/common.h
index d2570a803e..5d8b15628b 100644
--- a/include/common.h
+++ b/include/common.h
@@ -365,7 +365,8 @@ void trap_init (ulong);
defined (CONFIG_75x) || \
defined (CONFIG_74xx) || \
defined (CONFIG_MPC8220) || \
- defined(CONFIG_MPC85xx)
+ defined (CONFIG_MPC85xx) || \
+ defined (CONFIG_MPC83XX)
unsigned char in8(unsigned int);
void out8(unsigned int, unsigned char);
unsigned short in16(unsigned int);