summaryrefslogtreecommitdiff
path: root/cpu/74xx_7xx/kgdb.S
diff options
context:
space:
mode:
authorwdenk <wdenk>2004-09-28 21:39:45 +0000
committerwdenk <wdenk>2004-09-28 21:39:45 +0000
commite1a3f6b39b46086954fc9746724e784b155d2402 (patch)
tree4ec13a0b08172ea6e7acf75084c75d536a969c4c /cpu/74xx_7xx/kgdb.S
parentc65fdc74aa2c8ce6f7e500bb5dbf95425270adb9 (diff)
* Patch by Yuli Barcohen, 19 Jul 2004:
- Fix host tools building in Cygwin environment - Fix header files search order for host tools * Patch by Tom Armistead, 19 Jul 2004: Fix kgdb.S support for 74xx_75x cpu
Diffstat (limited to 'cpu/74xx_7xx/kgdb.S')
-rw-r--r--cpu/74xx_7xx/kgdb.S18
1 files changed, 11 insertions, 7 deletions
diff --git a/cpu/74xx_7xx/kgdb.S b/cpu/74xx_7xx/kgdb.S
index c3132c29bc..e838513c1d 100644
--- a/cpu/74xx_7xx/kgdb.S
+++ b/cpu/74xx_7xx/kgdb.S
@@ -20,8 +20,6 @@
* MA 02111-1307USA
*/
-/* note - this won't work with the 74xx cpus. needs more work [josh] */
-
#include <config.h>
#include <command.h>
#include <74xx_7xx.h>
@@ -41,12 +39,18 @@
.globl kgdb_flush_cache_all
kgdb_flush_cache_all:
- lis r3, IDC_INVALL@h
- mtspr DC_CST, r3
- sync
- lis r3, IDC_INVALL@h
- mtspr IC_CST, r3
+ lis r3,0
+ addis r4,r0,0x0040
+kgdb_flush_loop:
+ lwz r5,0(r3)
+ addi r3,r3,CFG_CACHELINE_SIZE
+ cmp 0,0,r3,r4
+ bne kgdb_flush_loop
SYNC
+ mfspr r3,1008
+ ori r3,r3,0x8800
+ mtspr 1008,r3
+ sync
blr
.globl kgdb_flush_cache_range