aboutsummaryrefslogtreecommitdiff
path: root/cpu/ppc4xx/start.S
diff options
context:
space:
mode:
authorWolfgang Denk <wd@pollux.denx.de>2006-08-10 15:40:49 +0200
committerWolfgang Denk <wd@pollux.denx.de>2006-08-10 15:40:49 +0200
commitd10afb3916522801fb88c7ad9b6d82657be51567 (patch)
tree022912cb1def87dadf38015cbc298c76ba6ad6af /cpu/ppc4xx/start.S
parenta3d9181e00cca80287d7243c4c1dcf981c2969d3 (diff)
parent692519b1edfd5803cd2a841921492889f46f0ce3 (diff)
Merge with /home/raj/git/u-boot
Diffstat (limited to 'cpu/ppc4xx/start.S')
-rw-r--r--cpu/ppc4xx/start.S16
1 files changed, 16 insertions, 0 deletions
diff --git a/cpu/ppc4xx/start.S b/cpu/ppc4xx/start.S
index 699fa7fd7..60ed2d545 100644
--- a/cpu/ppc4xx/start.S
+++ b/cpu/ppc4xx/start.S
@@ -315,7 +315,23 @@ rsttlb: tlbwe r0,r1,0x0000 /* Invalidate all entries (V=0)*/
/*----------------------------------------------------------------*/
/* TLB entry setup -- step thru tlbtab */
/*----------------------------------------------------------------*/
+#if defined(CONFIG_440SPE)
+ /*----------------------------------------------------------------*/
+ /* We have different TLB tables for revA and rev B of 440SPe */
+ /*----------------------------------------------------------------*/
+ mfspr r1, PVR
+ lis r0,0x5342
+ ori r0,r0,0x1891
+ cmpw r7,r1,r0
+ bne r7,..revA
+ bl tlbtabB
+ b ..goon
+..revA:
+ bl tlbtabA
+..goon:
+#else
bl tlbtab /* Get tlbtab pointer */
+#endif
mr r5,r0
li r1,0x003f /* 64 TLB entries max */
mtctr r1