summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorWolfgang Denk <wd@denx.de>2010-10-06 09:05:45 +0200
committerWolfgang Denk <wd@denx.de>2010-10-18 22:12:04 +0200
commit2ae1824196884ba2bafffb7c0d3e8297350591e9 (patch)
tree5af805bde716ea0438e9f39898e6cb4f7677f97a /include
parent2bad5df7274dd2802ba9526ea7218e9c09d3f89c (diff)
downloadtalos-obmc-uboot-2ae1824196884ba2bafffb7c0d3e8297350591e9.tar.gz
talos-obmc-uboot-2ae1824196884ba2bafffb7c0d3e8297350591e9.zip
Makefile: move all Power Architecture boards into boards.cfg
Clean up Makefile, and drop a lot of the config.mk files on the way. We now also automatically pick all boards that are listed in boards.cfg (and with all configurations), so we can drop the redundant entries from MAKEALL to avoid building these twice. Signed-off-by: Wolfgang Denk <wd@denx.de>
Diffstat (limited to 'include')
-rw-r--r--include/configs/A3000.h1
-rw-r--r--include/configs/ADCIOP.h2
-rw-r--r--include/configs/ADS860.h2
-rw-r--r--include/configs/AMX860.h2
-rw-r--r--include/configs/AP1000.h7
-rw-r--r--include/configs/APC405.h2
-rw-r--r--include/configs/AR405.h2
-rw-r--r--include/configs/ASH405.h2
-rw-r--r--include/configs/ATUM8548.h4
-rw-r--r--include/configs/Adder.h2
-rw-r--r--include/configs/Alaska8220.h2
-rw-r--r--include/configs/BAB7xx.h2
-rw-r--r--include/configs/BC3450.h10
-rw-r--r--include/configs/BMW.h2
-rw-r--r--include/configs/CANBT.h2
-rw-r--r--include/configs/CATcenter.h2
-rw-r--r--include/configs/CMS700.h2
-rw-r--r--include/configs/CPC45.h1
-rw-r--r--include/configs/CPCI2DP.h2
-rw-r--r--include/configs/CPCI405.h2
-rw-r--r--include/configs/CPCI4052.h2
-rw-r--r--include/configs/CPCI405AB.h2
-rw-r--r--include/configs/CPCI405DT.h2
-rw-r--r--include/configs/CPCI750.h2
-rw-r--r--include/configs/CPCIISER4.h2
-rw-r--r--include/configs/CPU86.h6
-rw-r--r--include/configs/CPU87.h6
-rw-r--r--include/configs/CRAYL1.h7
-rw-r--r--include/configs/CU824.h1
-rw-r--r--include/configs/DASA_SIM.h2
-rw-r--r--include/configs/DB64360.h2
-rw-r--r--include/configs/DB64460.h2
-rw-r--r--include/configs/DP405.h2
-rw-r--r--include/configs/DU405.h2
-rw-r--r--include/configs/DU440.h4
-rw-r--r--include/configs/ELPPC.h2
-rw-r--r--include/configs/ELPT860.h2
-rw-r--r--include/configs/EP88x.h2
-rw-r--r--include/configs/ERIC.h2
-rw-r--r--include/configs/ESTEEM192E.h2
-rw-r--r--include/configs/ETX094.h2
-rw-r--r--include/configs/EVB64260.h2
-rw-r--r--include/configs/FADS823.h2
-rw-r--r--include/configs/FADS850SAR.h2
-rw-r--r--include/configs/FADS860T.h2
-rw-r--r--include/configs/FLAGADM.h2
-rw-r--r--include/configs/FPS850L.h2
-rw-r--r--include/configs/FPS860L.h2
-rw-r--r--include/configs/G2000.h2
-rw-r--r--include/configs/GEN860T.h2
-rw-r--r--include/configs/GENIETV.h2
-rw-r--r--include/configs/HH405.h2
-rw-r--r--include/configs/HIDDEN_DRAGON.h2
-rw-r--r--include/configs/HUB405.h2
-rw-r--r--include/configs/IAD210.h2
-rw-r--r--include/configs/ICU862.h2
-rw-r--r--include/configs/IDS8247.h2
-rw-r--r--include/configs/IP860.h3
-rw-r--r--include/configs/IPHASE4539.h2
-rw-r--r--include/configs/ISPAN.h2
-rw-r--r--include/configs/IVML24.h2
-rw-r--r--include/configs/IVMS8.h2
-rw-r--r--include/configs/IceCube.h11
-rw-r--r--include/configs/JSE.h4
-rw-r--r--include/configs/KAREF.h3
-rw-r--r--include/configs/KUP4K.h2
-rw-r--r--include/configs/KUP4X.h2
-rw-r--r--include/configs/LANTEC.h2
-rw-r--r--include/configs/MBX.h2
-rw-r--r--include/configs/MBX860T.h2
-rw-r--r--include/configs/METROBOX.h3
-rw-r--r--include/configs/MHPC.h2
-rw-r--r--include/configs/MIP405.h3
-rw-r--r--include/configs/ML2.h1
-rw-r--r--include/configs/MOUSSE.h4
-rw-r--r--include/configs/MPC8260ADS.h4
-rw-r--r--include/configs/MPC8266ADS.h2
-rw-r--r--include/configs/MPC8308RDB.h2
-rw-r--r--include/configs/MPC8313ERDB.h4
-rw-r--r--include/configs/MPC8315ERDB.h6
-rw-r--r--include/configs/MPC8323ERDB.h2
-rw-r--r--include/configs/MPC832XEMDS.h4
-rw-r--r--include/configs/MPC8349EMDS.h10
-rw-r--r--include/configs/MPC8349ITX.h8
-rw-r--r--include/configs/MPC8360EMDS.h3
-rw-r--r--include/configs/MPC8360ERDK.h6
-rw-r--r--include/configs/MPC837XEMDS.h2
-rw-r--r--include/configs/MPC837XERDB.h2
-rw-r--r--include/configs/MPC8536DS.h10
-rw-r--r--include/configs/MPC8540ADS.h6
-rw-r--r--include/configs/MPC8540EVAL.h2
-rw-r--r--include/configs/MPC8541CDS.h2
-rw-r--r--include/configs/MPC8544DS.h4
-rw-r--r--include/configs/MPC8548CDS.h4
-rw-r--r--include/configs/MPC8555CDS.h2
-rw-r--r--include/configs/MPC8560ADS.h6
-rw-r--r--include/configs/MPC8568MDS.h2
-rw-r--r--include/configs/MPC8569MDS.h6
-rw-r--r--include/configs/MPC8572DS.h4
-rw-r--r--include/configs/MPC8610HPCD.h2
-rw-r--r--include/configs/MPC8641HPCN.h6
-rw-r--r--include/configs/MPC86xADS.h2
-rw-r--r--include/configs/MPC885ADS.h2
-rw-r--r--include/configs/MUSENKI.h1
-rw-r--r--include/configs/MVBC_P.h4
-rw-r--r--include/configs/MVBLM7.h4
-rw-r--r--include/configs/MVBLUE.h2
-rw-r--r--include/configs/MVSMR.h4
-rw-r--r--include/configs/NC650.h2
-rw-r--r--include/configs/NETPHONE.h2
-rw-r--r--include/configs/NETTA.h2
-rw-r--r--include/configs/NETTA2.h2
-rw-r--r--include/configs/NETVIA.h2
-rw-r--r--include/configs/NSCU.h2
-rw-r--r--include/configs/NX823.h2
-rw-r--r--include/configs/OCRTC.h2
-rw-r--r--include/configs/OXC.h2
-rw-r--r--include/configs/P1022DS.h4
-rw-r--r--include/configs/P1_P2_RDB.h10
-rw-r--r--include/configs/P2020DS.h4
-rw-r--r--include/configs/P3G4.h2
-rw-r--r--include/configs/P4080DS.h4
-rw-r--r--include/configs/PATI.h3
-rw-r--r--include/configs/PCI405.h2
-rw-r--r--include/configs/PCIPPC2.h2
-rw-r--r--include/configs/PCIPPC6.h2
-rw-r--r--include/configs/PIP405.h3
-rw-r--r--include/configs/PLU405.h2
-rw-r--r--include/configs/PM520.h2
-rw-r--r--include/configs/PM826.h4
-rw-r--r--include/configs/PM828.h4
-rw-r--r--include/configs/PM854.h2
-rw-r--r--include/configs/PM856.h2
-rw-r--r--include/configs/PMC405.h2
-rw-r--r--include/configs/PMC405DE.h2
-rw-r--r--include/configs/PMC440.h4
-rw-r--r--include/configs/PN62.h2
-rw-r--r--include/configs/PPChameleonEVB.h2
-rw-r--r--include/configs/QS823.h2
-rw-r--r--include/configs/QS850.h2
-rw-r--r--include/configs/QS860T.h3
-rw-r--r--include/configs/R360MPI.h2
-rw-r--r--include/configs/RBC823.h1
-rw-r--r--include/configs/RPXClassic.h2
-rw-r--r--include/configs/RPXlite.h2
-rw-r--r--include/configs/RPXlite_DW.h2
-rw-r--r--include/configs/RPXsuper.h1
-rw-r--r--include/configs/RRvision.h2
-rw-r--r--include/configs/Rattler.h2
-rw-r--r--include/configs/SBC8540.h2
-rw-r--r--include/configs/SCM.h2
-rw-r--r--include/configs/SIMPC8313.h4
-rw-r--r--include/configs/SM850.h2
-rw-r--r--include/configs/SPD823TS.h2
-rw-r--r--include/configs/SXNI855T.h2
-rw-r--r--include/configs/Sandpoint8240.h2
-rw-r--r--include/configs/Sandpoint8245.h2
-rw-r--r--include/configs/TB5200.h11
-rw-r--r--include/configs/TK885D.h2
-rw-r--r--include/configs/TOP5200.h8
-rw-r--r--include/configs/TOP860.h3
-rw-r--r--include/configs/TQM5200.h11
-rw-r--r--include/configs/TQM823L.h2
-rw-r--r--include/configs/TQM823M.h2
-rw-r--r--include/configs/TQM8260.h2
-rw-r--r--include/configs/TQM8272.h2
-rw-r--r--include/configs/TQM834x.h2
-rw-r--r--include/configs/TQM850L.h2
-rw-r--r--include/configs/TQM850M.h2
-rw-r--r--include/configs/TQM855L.h2
-rw-r--r--include/configs/TQM855M.h2
-rw-r--r--include/configs/TQM85xx.h6
-rw-r--r--include/configs/TQM860L.h2
-rw-r--r--include/configs/TQM860M.h2
-rw-r--r--include/configs/TQM862L.h2
-rw-r--r--include/configs/TQM862M.h2
-rw-r--r--include/configs/TQM866M.h2
-rw-r--r--include/configs/TQM885D.h2
-rw-r--r--include/configs/Total5200.h10
-rw-r--r--include/configs/VOH405.h2
-rw-r--r--include/configs/VOM405.h2
-rw-r--r--include/configs/VoVPN-GW.h2
-rw-r--r--include/configs/W7OLMC.h2
-rw-r--r--include/configs/W7OLMG.h2
-rw-r--r--include/configs/WUH405.h2
-rw-r--r--include/configs/XPEDITE1000.h2
-rw-r--r--include/configs/XPEDITE5170.h2
-rw-r--r--include/configs/XPEDITE5200.h4
-rw-r--r--include/configs/XPEDITE5370.h4
-rw-r--r--include/configs/Yukon8220.h2
-rw-r--r--include/configs/ZPC1900.h3
-rw-r--r--include/configs/ZUMA.h2
-rw-r--r--include/configs/acadia.h4
-rw-r--r--include/configs/aev.h11
-rw-r--r--include/configs/alpr.h3
-rw-r--r--include/configs/aria.h2
-rw-r--r--include/configs/atc.h2
-rw-r--r--include/configs/bamboo.h4
-rw-r--r--include/configs/barco.h2
-rw-r--r--include/configs/bluestone.h5
-rw-r--r--include/configs/bubinga.h2
-rw-r--r--include/configs/c2mon.h2
-rw-r--r--include/configs/canmb.h7
-rw-r--r--include/configs/canyonlands.h4
-rw-r--r--include/configs/cm5200.h2
-rw-r--r--include/configs/cmi_mpc5xx.h2
-rw-r--r--include/configs/cogent_mpc8260.h2
-rw-r--r--include/configs/cogent_mpc8xx.h2
-rw-r--r--include/configs/cpci5200.h4
-rw-r--r--include/configs/csb272.h2
-rw-r--r--include/configs/csb472.h2
-rw-r--r--include/configs/debris.h2
-rw-r--r--include/configs/digsy_mtc.h10
-rw-r--r--include/configs/dlvision.h2
-rw-r--r--include/configs/eXalion.h2
-rw-r--r--include/configs/ebony.h2
-rw-r--r--include/configs/ep8248.h2
-rw-r--r--include/configs/ep8260.h2
-rw-r--r--include/configs/ep82xxm.h2
-rw-r--r--include/configs/galaxy5200.h14
-rw-r--r--include/configs/gdppc440etx.h2
-rw-r--r--include/configs/gw8260.h2
-rw-r--r--include/configs/hcu4.h2
-rw-r--r--include/configs/hcu5.h2
-rw-r--r--include/configs/hermes.h2
-rw-r--r--include/configs/hmi1001.h4
-rw-r--r--include/configs/hymod.h2
-rw-r--r--include/configs/icon.h3
-rw-r--r--include/configs/inka4x0.h9
-rw-r--r--include/configs/intip.h4
-rw-r--r--include/configs/ipek01.h2
-rw-r--r--include/configs/jupiter.h9
-rw-r--r--include/configs/katmai.h2
-rw-r--r--include/configs/kilauea.h4
-rw-r--r--include/configs/kmeter1.h2
-rw-r--r--include/configs/kmsupx4.h2
-rw-r--r--include/configs/korat.h6
-rw-r--r--include/configs/kvme080.h2
-rw-r--r--include/configs/linkstation.h16
-rw-r--r--include/configs/luan.h2
-rw-r--r--include/configs/lwmon.h2
-rw-r--r--include/configs/lwmon5.h5
-rw-r--r--include/configs/makalu.h2
-rw-r--r--include/configs/mcc200.h10
-rw-r--r--include/configs/mcu25.h2
-rw-r--r--include/configs/mecp5123.h2
-rw-r--r--include/configs/mecp5200.h4
-rw-r--r--include/configs/mgcoge.h2
-rw-r--r--include/configs/mgsuvd.h2
-rw-r--r--include/configs/motionpro.h2
-rw-r--r--include/configs/mpc5121ads.h2
-rw-r--r--include/configs/mpc7448hpc2.h2
-rw-r--r--include/configs/mpc8308_p1m.h4
-rw-r--r--include/configs/muas3001.h2
-rw-r--r--include/configs/mucmc52.h4
-rw-r--r--include/configs/munices.h5
-rw-r--r--include/configs/neo.h2
-rw-r--r--include/configs/o2dnt.h2
-rw-r--r--include/configs/ocotea.h2
-rw-r--r--include/configs/p3mx.h2
-rw-r--r--include/configs/p3p440.h3
-rw-r--r--include/configs/pcm030.h11
-rw-r--r--include/configs/pcs440ep.h3
-rw-r--r--include/configs/pdm360ng.h2
-rw-r--r--include/configs/pf5200.h4
-rw-r--r--include/configs/ppmc7xx.h1
-rw-r--r--include/configs/ppmc8260.h2
-rw-r--r--include/configs/quad100hd.h2
-rw-r--r--include/configs/quantum.h2
-rw-r--r--include/configs/redwood.h2
-rw-r--r--include/configs/rmu.h2
-rw-r--r--include/configs/rsdproto.h2
-rw-r--r--include/configs/sacsng.h2
-rw-r--r--include/configs/sbc405.h2
-rw-r--r--include/configs/sbc8240.h2
-rw-r--r--include/configs/sbc8260.h2
-rw-r--r--include/configs/sbc8349.h17
-rw-r--r--include/configs/sbc8548.h4
-rw-r--r--include/configs/sbc8560.h2
-rw-r--r--include/configs/sbc8641d.h2
-rw-r--r--include/configs/sc3.h2
-rw-r--r--include/configs/sequoia.h4
-rw-r--r--include/configs/socrates.h2
-rw-r--r--include/configs/sorcery.h2
-rw-r--r--include/configs/spc1920.h2
-rw-r--r--include/configs/stxgp3.h2
-rw-r--r--include/configs/stxssa.h2
-rw-r--r--include/configs/stxxtc.h2
-rw-r--r--include/configs/svm_sc8xx.h2
-rw-r--r--include/configs/t3corp.h4
-rw-r--r--include/configs/taihu.h2
-rw-r--r--include/configs/taishan.h2
-rw-r--r--include/configs/uc100.h2
-rw-r--r--include/configs/uc101.h4
-rw-r--r--include/configs/utx8245.h3
-rw-r--r--include/configs/v37.h2
-rw-r--r--include/configs/v38b.h3
-rw-r--r--include/configs/ve8313.h4
-rw-r--r--include/configs/virtlab2.h2
-rw-r--r--include/configs/vme8349.h12
-rw-r--r--include/configs/walnut.h4
-rw-r--r--include/configs/yosemite.h2
-rw-r--r--include/configs/yucca.h2
-rw-r--r--include/configs/zeus.h2
304 files changed, 897 insertions, 39 deletions
diff --git a/include/configs/A3000.h b/include/configs/A3000.h
index 0532a75db8..ffc58af309 100644
--- a/include/configs/A3000.h
+++ b/include/configs/A3000.h
@@ -45,6 +45,7 @@
#define CONFIG_MPC8245 1
#define CONFIG_A3000 1
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
#define CONFIG_CONS_INDEX 1
#define CONFIG_BAUDRATE 9600
diff --git a/include/configs/ADCIOP.h b/include/configs/ADCIOP.h
index d8303f3b8c..263dab2361 100644
--- a/include/configs/ADCIOP.h
+++ b/include/configs/ADCIOP.h
@@ -36,6 +36,8 @@
#define CONFIG_IOP480 1 /* This is a IOP480 CPU */
#define CONFIG_ADCIOP 1 /* ...on a ADCIOP board */
+#define CONFIG_SYS_TEXT_BASE 0xFFFD0000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_CLOCKS_IN_MHZ 1 /* clocks passsed to Linux in MHz */
diff --git a/include/configs/ADS860.h b/include/configs/ADS860.h
index 688e77a731..82ea172d7a 100644
--- a/include/configs/ADS860.h
+++ b/include/configs/ADS860.h
@@ -20,6 +20,8 @@
/* Processor type */
#define CONFIG_MPC860 1
+#define CONFIG_SYS_TEXT_BASE 0xFE000000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#undef CONFIG_8xx_CONS_SMC2
#undef CONFIG_8xx_CONS_NONE
diff --git a/include/configs/AMX860.h b/include/configs/AMX860.h
index 6e2907e7ef..095c7f0e64 100644
--- a/include/configs/AMX860.h
+++ b/include/configs/AMX860.h
@@ -36,6 +36,8 @@
#define CONFIG_MPC860 1
#define CONFIG_AMX860 1
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#undef CONFIG_8xx_CONS_SMC1 /* Console is on SCC2 */
#undef CONFIG_8xx_CONS_SMC2
#define CONFIG_8xx_CONS_SCC2 1
diff --git a/include/configs/AP1000.h b/include/configs/AP1000.h
index 875cb142b8..a8edafa1bb 100644
--- a/include/configs/AP1000.h
+++ b/include/configs/AP1000.h
@@ -27,6 +27,13 @@
#define CONFIG_AP1000 1 /* ...on an AP1000 board */
+/*
+ * Start at bottom of RAM, but at an aliased address so that it looks
+ * like it's not in RAM. This is a bit of voodoo to allow it to be
+ * run from RAM instead of Flash.
+ */
+#define CONFIG_SYS_TEXT_BASE 0x08000000
+
#define CONFIG_PCI 1
#define CONFIG_SYS_HUSH_PARSER 1 /* use "hush" command parser */
diff --git a/include/configs/APC405.h b/include/configs/APC405.h
index cb3f80bfa0..8179e1b043 100644
--- a/include/configs/APC405.h
+++ b/include/configs/APC405.h
@@ -38,6 +38,8 @@
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_APCG405 1 /* ...on a APC405 board */
+#define CONFIG_SYS_TEXT_BASE 0xFFF80000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_BOARD_EARLY_INIT_R 1
#define CONFIG_MISC_INIT_R 1 /* call misc_init_r() */
diff --git a/include/configs/AR405.h b/include/configs/AR405.h
index d3c60f2097..0725e6f1cf 100644
--- a/include/configs/AR405.h
+++ b/include/configs/AR405.h
@@ -37,6 +37,8 @@
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_AR405 1 /* ...on a AR405 board */
+#define CONFIG_SYS_TEXT_BASE 0xFFFA0000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_SYS_CLK_FREQ 33000000 /* external frequency to pll */
diff --git a/include/configs/ASH405.h b/include/configs/ASH405.h
index 789f7501fd..c8b96132f4 100644
--- a/include/configs/ASH405.h
+++ b/include/configs/ASH405.h
@@ -37,6 +37,8 @@
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_ASH405 1 /* ...on a ASH405 board */
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_MISC_INIT_R 1 /* call misc_init_r() */
diff --git a/include/configs/ATUM8548.h b/include/configs/ATUM8548.h
index 388234cfe8..b544a4772a 100644
--- a/include/configs/ATUM8548.h
+++ b/include/configs/ATUM8548.h
@@ -47,6 +47,10 @@
#define CONFIG_MPC85xx 1 /* MPC8540/60/55/41/48 */
#define CONFIG_MPC8548 1 /* MPC8548 specific */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xfff80000
+#endif
+
#define CONFIG_PCI 1 /* enable any pci type devices */
#define CONFIG_PCI1 1 /* PCI controller 1 */
#define CONFIG_PCIE1 1 /* PCIE controler 1 (slot 1) */
diff --git a/include/configs/Adder.h b/include/configs/Adder.h
index 7371a9ccf5..4d7c5172c2 100644
--- a/include/configs/Adder.h
+++ b/include/configs/Adder.h
@@ -32,6 +32,8 @@
#define CONFIG_ADDER /* Analogue&Micro Adder board */
+#define CONFIG_SYS_TEXT_BASE 0xFE000000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#define CONFIG_BAUDRATE 38400
diff --git a/include/configs/Alaska8220.h b/include/configs/Alaska8220.h
index d9c27efb17..7fba1b39c2 100644
--- a/include/configs/Alaska8220.h
+++ b/include/configs/Alaska8220.h
@@ -31,6 +31,8 @@
#define CONFIG_MPC8220 1
#define CONFIG_ALASKA8220 1 /* ... on Alaska board */
+#define CONFIG_SYS_TEXT_BASE 0xfff00000
+
#define CONFIG_BAT_RW 1 /* Use common BAT rw code */
#define CONFIG_HIGH_BATS 1 /* High BATs supported */
diff --git a/include/configs/BAB7xx.h b/include/configs/BAB7xx.h
index 555145e189..0cfd5d94fa 100644
--- a/include/configs/BAB7xx.h
+++ b/include/configs/BAB7xx.h
@@ -35,6 +35,8 @@
* (easy to change)
*/
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
/* these hardware addresses are pretty bogus, please change them to
suit your needs */
diff --git a/include/configs/BC3450.h b/include/configs/BC3450.h
index f6246faeee..4fbcb7d7ed 100644
--- a/include/configs/BC3450.h
+++ b/include/configs/BC3450.h
@@ -56,6 +56,16 @@
#define CONFIG_BC3450_FP 1 /* + enable FP O/P */
#undef CONFIG_BC3450_CRT /* + enable CRT O/P (Debug only!) */
+/*
+ * Valid values for CONFIG_SYS_TEXT_BASE are:
+ * 0xFC000000 boot low (standard configuration with room for
+ * max 64 MByte Flash ROM)
+ * 0x00100000 boot from RAM (for testing only)
+ */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFC000000
+#endif
+
#define CONFIG_SYS_MPC5XXX_CLKIN 33000000 /* ... running at 33.000000MHz */
#define BOOTFLAG_COLD 0x01 /* Normal Power-On: Boot from FLASH */
diff --git a/include/configs/BMW.h b/include/configs/BMW.h
index 6e7f012b9c..134ad1fa0b 100644
--- a/include/configs/BMW.h
+++ b/include/configs/BMW.h
@@ -45,6 +45,8 @@
#define CONFIG_MPC8245 1
#define CONFIG_BMW 1
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
#define CONFIG_MISC_INIT_F 1 /* Use misc_init_f() */
#define CONFIG_BCM570x 1 /* Use Broadcom BCM570x Ethernet Driver */
diff --git a/include/configs/CANBT.h b/include/configs/CANBT.h
index c7854abc46..9d75616a83 100644
--- a/include/configs/CANBT.h
+++ b/include/configs/CANBT.h
@@ -37,6 +37,8 @@
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_CANBT 1 /* ...on a CANBT board */
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_SYS_CLK_FREQ 25000000 /* external frequency to pll */
diff --git a/include/configs/CATcenter.h b/include/configs/CATcenter.h
index 764f71be3e..81f6391199 100644
--- a/include/configs/CATcenter.h
+++ b/include/configs/CATcenter.h
@@ -75,6 +75,8 @@
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_PPCHAMELEONEVB 1 /* ...on a PPChameleonEVB board */
+#define CONFIG_SYS_TEXT_BASE 0xFFFB0000 /* Reserve 320 kB for Monitor */
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_MISC_INIT_R 1 /* call misc_init_r() */
diff --git a/include/configs/CMS700.h b/include/configs/CMS700.h
index 099e30de85..6438b72582 100644
--- a/include/configs/CMS700.h
+++ b/include/configs/CMS700.h
@@ -37,6 +37,8 @@
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_VOM405 1 /* ...on a VOM405 board */
+#define CONFIG_SYS_TEXT_BASE 0xFFFC8000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_MISC_INIT_R 1 /* call misc_init_r() */
diff --git a/include/configs/CPC45.h b/include/configs/CPC45.h
index 8ba3c7d440..f75050090b 100644
--- a/include/configs/CPC45.h
+++ b/include/configs/CPC45.h
@@ -45,6 +45,7 @@
#define CONFIG_MPC8245 1
#define CONFIG_CPC45 1
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
#define CONFIG_CONS_INDEX 1
#define CONFIG_BAUDRATE 9600
diff --git a/include/configs/CPCI2DP.h b/include/configs/CPCI2DP.h
index c6882fdda3..ba875eccc6 100644
--- a/include/configs/CPCI2DP.h
+++ b/include/configs/CPCI2DP.h
@@ -36,6 +36,8 @@
#define CONFIG_405GP 1 /* This is a PPC405 CPU */
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_SYS_CLK_FREQ 33330000 /* external frequency to pll */
diff --git a/include/configs/CPCI405.h b/include/configs/CPCI405.h
index e0066211ab..4a47c7abe1 100644
--- a/include/configs/CPCI405.h
+++ b/include/configs/CPCI405.h
@@ -37,6 +37,8 @@
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_CPCI405 1 /* ...on a CPCI405 board */
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_MISC_INIT_R 1 /* call misc_init_r() */
diff --git a/include/configs/CPCI4052.h b/include/configs/CPCI4052.h
index d682d3726f..be3742feb9 100644
--- a/include/configs/CPCI4052.h
+++ b/include/configs/CPCI4052.h
@@ -39,6 +39,8 @@
#define CONFIG_CPCI405_VER2 1 /* ...version 2 */
#undef CONFIG_CPCI405_6U /* enable this for 6U boards */
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_MISC_INIT_R 1 /* call misc_init_r() */
diff --git a/include/configs/CPCI405AB.h b/include/configs/CPCI405AB.h
index 1c521f2a3f..3e1b482836 100644
--- a/include/configs/CPCI405AB.h
+++ b/include/configs/CPCI405AB.h
@@ -39,6 +39,8 @@
#define CONFIG_CPCI405_VER2 1 /* ...version 2 */
#define CONFIG_CPCI405AB 1 /* ...and special AB version */
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_MISC_INIT_R 1 /* call misc_init_r() */
diff --git a/include/configs/CPCI405DT.h b/include/configs/CPCI405DT.h
index c7b79311cc..342bcc36f1 100644
--- a/include/configs/CPCI405DT.h
+++ b/include/configs/CPCI405DT.h
@@ -38,6 +38,8 @@
#define CONFIG_CPCI405 1 /* ...on a CPCI405 board */
#define CONFIG_CPCI405_VER2 1 /* ...version 2 */
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_MISC_INIT_R 1 /* call misc_init_r() */
diff --git a/include/configs/CPCI750.h b/include/configs/CPCI750.h
index f2d51f75ee..68a27e663a 100644
--- a/include/configs/CPCI750.h
+++ b/include/configs/CPCI750.h
@@ -57,6 +57,8 @@
#define CONFIG_CPCI750 1 /* this is an CPCI750 board */
+#define CONFIG_SYS_TEXT_BASE 0xfff00000
+
#define CONFIG_BAUDRATE 9600 /* console baudrate = 9600 */
#define CONFIG_MV64360_ECC /* enable ECC support */
diff --git a/include/configs/CPCIISER4.h b/include/configs/CPCIISER4.h
index f114290130..0f11a75e5d 100644
--- a/include/configs/CPCIISER4.h
+++ b/include/configs/CPCIISER4.h
@@ -37,6 +37,8 @@
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_CPCIISER4 1 /* ...on a CPCIISER4 board */
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_SYS_CLK_FREQ 25000000 /* external frequency to pll */
diff --git a/include/configs/CPU86.h b/include/configs/CPU86.h
index 0927f2c5de..3aa35c3e2a 100644
--- a/include/configs/CPU86.h
+++ b/include/configs/CPU86.h
@@ -37,6 +37,12 @@
#define CONFIG_CPU86 1 /* ...on a CPU86 board */
#define CONFIG_CPM2 1 /* Has a CPM2 */
+#ifdef CONFIG_BOOT_ROM
+#define CONFIG_SYS_TEXT_BASE 0xFF800000
+#else
+#define CONFIG_SYS_TEXT_BASE 0xFF000000
+#endif
+
/*
* select serial console configuration
*
diff --git a/include/configs/CPU87.h b/include/configs/CPU87.h
index c50ff99964..82b6411879 100644
--- a/include/configs/CPU87.h
+++ b/include/configs/CPU87.h
@@ -38,6 +38,12 @@
#define CONFIG_PCI
#define CONFIG_CPM2 1 /* Has a CPM2 */
+#ifdef CONFIG_BOOT_ROM
+#define CONFIG_SYS_TEXT_BASE 0xFF800000
+#else
+#define CONFIG_SYS_TEXT_BASE 0xFF000000
+#endif
+
/*
* select serial console configuration
*
diff --git a/include/configs/CRAYL1.h b/include/configs/CRAYL1.h
index da0a57625a..77b6a15dc2 100644
--- a/include/configs/CRAYL1.h
+++ b/include/configs/CRAYL1.h
@@ -36,6 +36,13 @@
#define CONFIG_405GP 1 /* This is a PPC405 CPU */
#define CONFIG_4xx 1 /* ...member of PPC405 family */
+
+/*
+ * Note: I make an "image" from U-Boot itself, which prefixes 0x40
+ * bytes of header info, hence start address is thus shifted.
+ */
+#define CONFIG_SYS_TEXT_BASE 0xFFFD0040
+
#define CONFIG_SYS_CLK_FREQ 25000000
#define CONFIG_BAUDRATE 9600
#define CONFIG_BOOTDELAY 5 /* autoboot after 5 seconds */
diff --git a/include/configs/CU824.h b/include/configs/CU824.h
index e093120bc5..4a7d8705f5 100644
--- a/include/configs/CU824.h
+++ b/include/configs/CU824.h
@@ -45,6 +45,7 @@
#define CONFIG_MPC8240 1
#define CONFIG_CU824 1
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
#define CONFIG_CONS_INDEX 1
#define CONFIG_BAUDRATE 9600
diff --git a/include/configs/DASA_SIM.h b/include/configs/DASA_SIM.h
index 21230e158c..7ace011a25 100644
--- a/include/configs/DASA_SIM.h
+++ b/include/configs/DASA_SIM.h
@@ -36,6 +36,8 @@
#define CONFIG_IOP480 1 /* This is a IOP480 CPU */
#define CONFIG_DASA_SIM 1 /* ...on a DASA_SIM board */
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_CLOCKS_IN_MHZ 1 /* clocks passsed to Linux in MHz */
diff --git a/include/configs/DB64360.h b/include/configs/DB64360.h
index 910933ad58..3a20d02e55 100644
--- a/include/configs/DB64360.h
+++ b/include/configs/DB64360.h
@@ -120,6 +120,8 @@ if we use PCI it has its own MAC addr */
#define CONFIG_DB64360 1 /* this is an DB64360 board */
+#define CONFIG_SYS_TEXT_BASE 0xfff00000
+
#define CONFIG_BAUDRATE 115200 /* console baudrate = 115000 */
/*ronen - we don't use the global CONFIG_ECC, since in the global ecc we initialize the
DRAM for ECC in the phase we are relocating to it, which isn't so sufficient.
diff --git a/include/configs/DB64460.h b/include/configs/DB64460.h
index 765eaaf0fb..ef5277ef05 100644
--- a/include/configs/DB64460.h
+++ b/include/configs/DB64460.h
@@ -58,6 +58,8 @@
#define CONFIG_DB64460 1 /* this is an DB64460 board */
+#define CONFIG_SYS_TEXT_BASE 0xfff00000
+
#define CONFIG_BAUDRATE 115200 /* console baudrate = 115000 */
/*ronen - we don't use the global CONFIG_ECC, since in the global ecc we initialize the
DRAM for ECC in the phase we are relocating to it, which isn't so sufficient.
diff --git a/include/configs/DP405.h b/include/configs/DP405.h
index f86305ed3e..3cdf3e8b46 100644
--- a/include/configs/DP405.h
+++ b/include/configs/DP405.h
@@ -37,6 +37,8 @@
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_DP405 1 /* ...on a DP405 board */
+#define CONFIG_SYS_TEXT_BASE 0xFFFD0000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_MISC_INIT_R 1 /* call misc_init_r() */
diff --git a/include/configs/DU405.h b/include/configs/DU405.h
index 6ba9f13bf1..d6c9f4bc9f 100644
--- a/include/configs/DU405.h
+++ b/include/configs/DU405.h
@@ -36,6 +36,8 @@
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_DU405 1 /* ...on a DU405 board */
+#define CONFIG_SYS_TEXT_BASE 0xFFFD0000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_MISC_INIT_R 1 /* call misc_init_r() */
diff --git a/include/configs/DU440.h b/include/configs/DU440.h
index c36185dd0c..baa54b4559 100644
--- a/include/configs/DU440.h
+++ b/include/configs/DU440.h
@@ -37,6 +37,10 @@
#define CONFIG_4xx 1 /* ... PPC4xx family */
#define CONFIG_SYS_CLK_FREQ 33333400 /* external freq to pll */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFFFA0000
+#endif
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* Call board_early_init_f */
#define CONFIG_MISC_INIT_R 1 /* Call misc_init_r */
#define CONFIG_LAST_STAGE_INIT 1 /* last_stage_init */
diff --git a/include/configs/ELPPC.h b/include/configs/ELPPC.h
index 84d27b67a9..1650e65e13 100644
--- a/include/configs/ELPPC.h
+++ b/include/configs/ELPPC.h
@@ -35,6 +35,8 @@
* (easy to change)
*/
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
/* these hardware addresses are pretty bogus, please change them to
suit your needs */
diff --git a/include/configs/ELPT860.h b/include/configs/ELPT860.h
index 0f56302003..99d0eb1ed5 100644
--- a/include/configs/ELPT860.h
+++ b/include/configs/ELPT860.h
@@ -47,6 +47,8 @@
#define CONFIG_MPC860T 1
#define CONFIG_ELPT860 1 /* ...on a LEOX's ELPT860 CPU board */
+#define CONFIG_SYS_TEXT_BASE 0x02000000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#undef CONFIG_8xx_CONS_SMC2
#undef CONFIG_8xx_CONS_NONE
diff --git a/include/configs/EP88x.h b/include/configs/EP88x.h
index aa5de9b4d5..6204229339 100644
--- a/include/configs/EP88x.h
+++ b/include/configs/EP88x.h
@@ -30,6 +30,8 @@
#define CONFIG_EP88X /* Embedded Planet EP88x board */
+#define CONFIG_SYS_TEXT_BASE 0xFC000000
+
#define CONFIG_BOARD_EARLY_INIT_F /* Call board_early_init_f */
/* Allow serial number (serial#) and MAC address (ethaddr) to be overwritten */
diff --git a/include/configs/ERIC.h b/include/configs/ERIC.h
index da3b4ae22a..094db45e90 100644
--- a/include/configs/ERIC.h
+++ b/include/configs/ERIC.h
@@ -37,6 +37,8 @@
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_ERIC 1 /* ...on a ERIC board */
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* run board_early_init_f() */
#define CONFIG_SYS_CLK_FREQ 33333333 /* external frequency to pll */
diff --git a/include/configs/ESTEEM192E.h b/include/configs/ESTEEM192E.h
index 11a862e987..1f0d2bb2d6 100644
--- a/include/configs/ESTEEM192E.h
+++ b/include/configs/ESTEEM192E.h
@@ -36,6 +36,8 @@
#define CONFIG_MPC850 1 /* This is a MPC850 CPU */
#define CONFIG_ESTEEM192E 1 /* ...on a EST ESTEEM192E */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_FLASH_16BIT 1 /* Rom 16 bit data bus */
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
diff --git a/include/configs/ETX094.h b/include/configs/ETX094.h
index c36f2bb18c..366df3a66f 100644
--- a/include/configs/ETX094.h
+++ b/include/configs/ETX094.h
@@ -36,6 +36,8 @@
#define CONFIG_MPC850 1 /* This is a MPC850 CPU */
#define CONFIG_ETX094 1 /* ...on a ETX_094 board */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#undef CONFIG_8xx_CONS_SMC2
#undef CONFIG_8xx_CONS_NONE
diff --git a/include/configs/EVB64260.h b/include/configs/EVB64260.h
index 0903536348..ebc36bbb3a 100644
--- a/include/configs/EVB64260.h
+++ b/include/configs/EVB64260.h
@@ -42,6 +42,8 @@
#define CONFIG_EVB64260 1 /* this is an EVB64260 board */
#define CONFIG_SYS_GT_6426x GT_64260 /* with a 64260 system controller */
+#define CONFIG_SYS_TEXT_BASE 0xfff00000
+
#define CONFIG_BAUDRATE 38400 /* console baudrate = 38400 */
#undef CONFIG_ECC /* enable ECC support */
diff --git a/include/configs/FADS823.h b/include/configs/FADS823.h
index cb759602b9..0b7aee265b 100644
--- a/include/configs/FADS823.h
+++ b/include/configs/FADS823.h
@@ -38,6 +38,8 @@
#ifndef __CONFIG_H
#define __CONFIG_H
+#define CONFIG_SYS_TEXT_BASE 0xFE000000
+
#define CONFIG_ETHADDR 08:00:22:50:70:63 /* Ethernet address */
#define CONFIG_ENV_OVERWRITE 1 /* Overwrite the environment */
diff --git a/include/configs/FADS850SAR.h b/include/configs/FADS850SAR.h
index 84187fbb4d..c2c9093f51 100644
--- a/include/configs/FADS850SAR.h
+++ b/include/configs/FADS850SAR.h
@@ -34,6 +34,8 @@
#define CONFIG_MPC850SAR 1
#define CONFIG_FADS 1
+#define CONFIG_SYS_TEXT_BASE 0xFE000000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#undef CONFIG_8xx_CONS_SMC2
#undef CONFIG_8xx_CONS_NONE
diff --git a/include/configs/FADS860T.h b/include/configs/FADS860T.h
index dcb0c39445..ed7484bd1c 100644
--- a/include/configs/FADS860T.h
+++ b/include/configs/FADS860T.h
@@ -20,6 +20,8 @@
/* processor type */
#define CONFIG_MPC860T 1 /* 860T */
+#define CONFIG_SYS_TEXT_BASE 0xFE000000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#undef CONFIG_8xx_CONS_SMC2
#undef CONFIG_8xx_CONS_NONE
diff --git a/include/configs/FLAGADM.h b/include/configs/FLAGADM.h
index 0f4277c4e3..4f526b7bde 100644
--- a/include/configs/FLAGADM.h
+++ b/include/configs/FLAGADM.h
@@ -37,6 +37,8 @@
#define CONFIG_FLAGADM 1 /* ...on a FLAGA DM */
#define CONFIG_8xx_GCLK_FREQ 48000000 /*48MHz*/
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#undef CONFIG_8xx_CONS_SMC1 /* Console is on SMC1 */
#define CONFIG_8xx_CONS_SMC2 1
#undef CONFIG_8xx_CONS_NONE
diff --git a/include/configs/FPS850L.h b/include/configs/FPS850L.h
index addca2fe3a..ac0c48ebf6 100644
--- a/include/configs/FPS850L.h
+++ b/include/configs/FPS850L.h
@@ -36,6 +36,8 @@
#define CONFIG_MPC850 1 /* This is a MPC850 CPU */
#define CONFIG_FPS850L 1 /* ...on a FingerPrint Sensor */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_8xx_CONS_SMC2 1 /* Console is on SMC2 */
#define CONFIG_SYS_SMC_RXBUFLEN 128
#define CONFIG_SYS_MAXIDLE 10
diff --git a/include/configs/FPS860L.h b/include/configs/FPS860L.h
index ec9000d9fc..ffb40e0051 100644
--- a/include/configs/FPS860L.h
+++ b/include/configs/FPS860L.h
@@ -36,6 +36,8 @@
#define CONFIG_MPC860 1 /* This is a MPC860 CPU */
#define CONFIG_FPS860L 1 /* ...on a FingerPrint Sensor */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_8xx_CONS_SMC2 1 /* Console is on SMC2 */
#define CONFIG_SYS_SMC_RXBUFLEN 128
#define CONFIG_SYS_MAXIDLE 10
diff --git a/include/configs/G2000.h b/include/configs/G2000.h
index e2e6cb29ce..2865b84966 100644
--- a/include/configs/G2000.h
+++ b/include/configs/G2000.h
@@ -37,6 +37,8 @@
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_G2000 1 /* ...on a PLU405 board */
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_MISC_INIT_R 1 /* call misc_init_r() */
diff --git a/include/configs/GEN860T.h b/include/configs/GEN860T.h
index 12f879a0e0..a2b934fd94 100644
--- a/include/configs/GEN860T.h
+++ b/include/configs/GEN860T.h
@@ -35,6 +35,8 @@
#define CONFIG_MPC860
#define CONFIG_GEN860T
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
/*
* Identify the board
*/
diff --git a/include/configs/GENIETV.h b/include/configs/GENIETV.h
index fadd83027b..4faafe5b6e 100644
--- a/include/configs/GENIETV.h
+++ b/include/configs/GENIETV.h
@@ -38,6 +38,8 @@
#ifndef __CONFIG_H
#define __CONFIG_H
+#define CONFIG_SYS_TEXT_BASE 0x00000000
+
#define CONFIG_ETHADDR 08:00:22:50:70:63 /* Ethernet address */
#define CONFIG_ENV_OVERWRITE 1 /* Overwrite the environment */
diff --git a/include/configs/HH405.h b/include/configs/HH405.h
index 8991db4130..661db2b16e 100644
--- a/include/configs/HH405.h
+++ b/include/configs/HH405.h
@@ -43,6 +43,8 @@
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_HH405 1 /* ...on a HH405 board */
+#define CONFIG_SYS_TEXT_BASE 0xFFF80000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_MISC_INIT_R 1 /* call misc_init_r() */
diff --git a/include/configs/HIDDEN_DRAGON.h b/include/configs/HIDDEN_DRAGON.h
index 359187a751..ac6a455f5c 100644
--- a/include/configs/HIDDEN_DRAGON.h
+++ b/include/configs/HIDDEN_DRAGON.h
@@ -42,6 +42,8 @@
#define CONFIG_MPC8245 1
#define CONFIG_HIDDEN_DRAGON 1
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
#if 0
#define USE_DINK32 1
#else
diff --git a/include/configs/HUB405.h b/include/configs/HUB405.h
index 5dea96ef5b..b7a8dae7e2 100644
--- a/include/configs/HUB405.h
+++ b/include/configs/HUB405.h
@@ -37,6 +37,8 @@
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_HUB405 1 /* ...on a HUB405 board */
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_MISC_INIT_R 1 /* call misc_init_r() */
diff --git a/include/configs/IAD210.h b/include/configs/IAD210.h
index ea1e706eed..54e8a72a20 100644
--- a/include/configs/IAD210.h
+++ b/include/configs/IAD210.h
@@ -44,6 +44,8 @@
#define CONFIG_MPC860T 1
#define CONFIG_MPC862 1
+#define CONFIG_SYS_TEXT_BASE 0x08000000
+
#define CONFIG_LOADS_ECHO 1 /* echo on for serial download */
#undef CONFIG_8xx_CONS_SMC1
diff --git a/include/configs/ICU862.h b/include/configs/ICU862.h
index f286449e3b..635f916652 100644
--- a/include/configs/ICU862.h
+++ b/include/configs/ICU862.h
@@ -39,6 +39,8 @@
#define CONFIG_ICU862 1
#define CONFIG_MPC862 1
+#define CONFIG_SYS_TEXT_BASE 0x40F00000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#undef CONFIG_8xx_CONS_SMC2
#undef CONFIG_8xx_CONS_NONE
diff --git a/include/configs/IDS8247.h b/include/configs/IDS8247.h
index 52a57a9d0d..a3a79e876e 100644
--- a/include/configs/IDS8247.h
+++ b/include/configs/IDS8247.h
@@ -39,6 +39,8 @@
#define CPU_ID_STR "MPC8247"
#define CONFIG_CPM2 1 /* Has a CPM2 */
+#define CONFIG_SYS_TEXT_BASE 0xfff00000
+
#define CONFIG_BOOTDELAY 5 /* autoboot after 5 seconds */
#define CONFIG_BOOTCOUNT_LIMIT
diff --git a/include/configs/IP860.h b/include/configs/IP860.h
index ed6b7fde9c..eef1d6b5b5 100644
--- a/include/configs/IP860.h
+++ b/include/configs/IP860.h
@@ -35,6 +35,9 @@
#define CONFIG_MPC860 1 /* This is a MPC860 CPU */
#define CONFIG_IP860 1 /* ...on a IP860 board */
+
+#define CONFIG_SYS_TEXT_BASE 0x10000000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* Call board_early_init_f */
#define CONFIG_RESET_PHY_R 1 /* Call reset_phy() */
diff --git a/include/configs/IPHASE4539.h b/include/configs/IPHASE4539.h
index 9d19e37bb7..88ef4bb423 100644
--- a/include/configs/IPHASE4539.h
+++ b/include/configs/IPHASE4539.h
@@ -38,6 +38,8 @@
#define CONFIG_MPC8260 1 /* This is an MPC8260 CPU */
#define CONFIG_IPHASE4539 1 /* ...on a Interphase 4539 PMC */
+#define CONFIG_SYS_TEXT_BASE 0xffb00000
+
#define CONFIG_CPM2 1 /* Has a CPM2 */
/*-----------------------------------------------------------------------
diff --git a/include/configs/ISPAN.h b/include/configs/ISPAN.h
index 3ea7e5daec..bcd73484dc 100644
--- a/include/configs/ISPAN.h
+++ b/include/configs/ISPAN.h
@@ -33,6 +33,8 @@
#define CONFIG_ISPAN /* ...on one of Interphase iSPAN boards */
#define CONFIG_CPM2 1 /* Has a CPM2 */
+#define CONFIG_SYS_TEXT_BASE 0xFE7A0000
+
/*-----------------------------------------------------------------------
* Select serial console configuration
*
diff --git a/include/configs/IVML24.h b/include/configs/IVML24.h
index 1a4924e1e6..5cc8e9a476 100644
--- a/include/configs/IVML24.h
+++ b/include/configs/IVML24.h
@@ -36,6 +36,8 @@
#define CONFIG_MPC860 1 /* This is a MPC860 CPU */
#define CONFIG_IVML24 1 /* ...on a IVML24 board */
+#define CONFIG_SYS_TEXT_BASE 0xFF000000
+
#if defined (CONFIG_IVML24_16M)
# define CONFIG_IDENT_STRING " IVML24"
#elif defined (CONFIG_IVML24_32M)
diff --git a/include/configs/IVMS8.h b/include/configs/IVMS8.h
index 256cabd036..ed73b570cf 100644
--- a/include/configs/IVMS8.h
+++ b/include/configs/IVMS8.h
@@ -36,6 +36,8 @@
#define CONFIG_MPC860 1 /* This is a MPC860 CPU */
#define CONFIG_IVMS8 1 /* ...on a IVMS8 board */
+#define CONFIG_SYS_TEXT_BASE 0xFF000000
+
#if defined (CONFIG_IVMS8_16M)
# define CONFIG_IDENT_STRING " IVMS8"
#elif defined (CONFIG_IVMS8_32M)
diff --git a/include/configs/IceCube.h b/include/configs/IceCube.h
index b62945e838..327b0bbb1e 100644
--- a/include/configs/IceCube.h
+++ b/include/configs/IceCube.h
@@ -33,6 +33,17 @@
#define CONFIG_MPC5200 1 /* (more precisely a MPC5200 CPU) */
#define CONFIG_ICECUBE 1 /* ... on IceCube board */
+/*
+ * Valid values for CONFIG_SYS_TEXT_BASE are:
+ * 0xFFF00000 boot high (standard configuration)
+ * 0xFF000000 boot low for 16 MiB boards
+ * 0xFF800000 boot low for 8 MiB boards
+ * 0x00100000 boot from RAM (for testing only)
+ */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+#endif
+
#define CONFIG_SYS_MPC5XXX_CLKIN 33000000 /* ... running at 33.000000MHz */
#define BOOTFLAG_COLD 0x01 /* Normal Power-On: Boot from FLASH */
diff --git a/include/configs/JSE.h b/include/configs/JSE.h
index b0b117575c..69711581a6 100644
--- a/include/configs/JSE.h
+++ b/include/configs/JSE.h
@@ -37,7 +37,7 @@
/* JSE has a PPC405GPr */
#define CONFIG_405GP 1
/* ... which is a 4xxx series */
-#define CONFIG_4xx 1
+#define CONFIG_4x 1
/* ... with a 33MHz OSC. connected to the SysCLK input */
#define CONFIG_SYS_CLK_FREQ 33333333
/* ... with on-chip memory here (4KBytes) */
@@ -46,6 +46,8 @@
/* Do not set up locked dcache as init ram. */
#undef CONFIG_SYS_INIT_DCACHE_CS
+#define CONFIG_SYS_TEXT_BASE 0xFFF80000
+
/* Map the SystemACE chip (CS#1) here. (Must be a multiple of 1Meg) */
#define CONFIG_SYSTEMACE 1
#define CONFIG_SYS_SYSTEMACE_BASE 0xf0000000
diff --git a/include/configs/KAREF.h b/include/configs/KAREF.h
index 94cc31756c..5b6da4ff0b 100644
--- a/include/configs/KAREF.h
+++ b/include/configs/KAREF.h
@@ -43,6 +43,9 @@
#define CONFIG_BOARD_EARLY_INIT_F 1 /* Call board_pre_init */
#define CONFIG_MISC_INIT_F 1 /* Call board misc_init_f */
#define CONFIG_MISC_INIT_R 1 /* Call board misc_init_r */
+
+#define CONFIG_SYS_TEXT_BASE 0xFFF80000
+
#undef CONFIG_SYS_DRAM_TEST /* Disable-takes long time!*/
#define CONFIG_SYS_CLK_FREQ 66666666 /* external freq to pll */
diff --git a/include/configs/KUP4K.h b/include/configs/KUP4K.h
index c6978c3352..b5f48b11da 100644
--- a/include/configs/KUP4K.h
+++ b/include/configs/KUP4K.h
@@ -38,6 +38,8 @@
#define CONFIG_MPC855 1 /* This is a MPC855 CPU */
#define CONFIG_KUP4K 1 /* ...on a KUP4K module */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#undef CONFIG_8xx_CONS_SMC2
#undef CONFIG_8xx_CONS_NONE
diff --git a/include/configs/KUP4X.h b/include/configs/KUP4X.h
index ab535e15b5..7fea5f772c 100644
--- a/include/configs/KUP4X.h
+++ b/include/configs/KUP4X.h
@@ -38,6 +38,8 @@
#define CONFIG_MPC859T 1 /* This is a MPC859T CPU */
#define CONFIG_KUP4X 1 /* ...on a KUP4X module */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#undef CONFIG_8xx_CONS_SMC2
#undef CONFIG_8xx_CONS_NONE
diff --git a/include/configs/LANTEC.h b/include/configs/LANTEC.h
index 6e8a4b8085..d10958d06a 100644
--- a/include/configs/LANTEC.h
+++ b/include/configs/LANTEC.h
@@ -40,6 +40,8 @@
#define CONFIG_MPC850 1 /* This is a MPC850 CPU */
#define CONFIG_LANTEC 2 /* ...on a Lantec rev.2 board */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
/*
* Port assignments (CONFIG_LANTEC == 1):
* - SMC1: J11 (MDB) ?
diff --git a/include/configs/MBX.h b/include/configs/MBX.h
index 5f7c7a8e4f..7cda287cfb 100644
--- a/include/configs/MBX.h
+++ b/include/configs/MBX.h
@@ -46,6 +46,8 @@
#define CONFIG_MPC860 1 /* This is a MPC860 CPU */
#define CONFIG_MBX 1 /* ...on an MBX module */
+#define CONFIG_SYS_TEXT_BASE 0xfe000000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#undef CONFIG_8xx_CONS_SMC2
#undef CONFIG_8xx_CONS_NONE
diff --git a/include/configs/MBX860T.h b/include/configs/MBX860T.h
index afe23836ce..aed17297c3 100644
--- a/include/configs/MBX860T.h
+++ b/include/configs/MBX860T.h
@@ -28,6 +28,8 @@
#define CONFIG_MPC860T 1
#define CONFIG_MBX 1
+#define CONFIG_SYS_TEXT_BASE 0xfe000000
+
#define CONFIG_8xx_CPUCLOCK 40
#define CONFIG_8xx_BUSCLOCK (CONFIG_8xx_CPUCLOCK)
#define TARGET_SYSTEM_FREQUENCY 40
diff --git a/include/configs/METROBOX.h b/include/configs/METROBOX.h
index 2e63306d97..04ae4f883a 100644
--- a/include/configs/METROBOX.h
+++ b/include/configs/METROBOX.h
@@ -109,6 +109,9 @@
#define CONFIG_BOARD_EARLY_INIT_F 1 /* Call board_pre_init */
#define CONFIG_MISC_INIT_F 1 /* Call board misc_init_f */
#define CONFIG_MISC_INIT_R 1 /* Call board misc_init_r */
+
+#define CONFIG_SYS_TEXT_BASE 0xFFF80000
+
#undef CONFIG_SYS_DRAM_TEST /* Disable-takes long time!*/
#define CONFIG_SYS_CLK_FREQ 66666666 /* external freq to pll */
diff --git a/include/configs/MHPC.h b/include/configs/MHPC.h
index 19a288c582..7ad2712ca8 100644
--- a/include/configs/MHPC.h
+++ b/include/configs/MHPC.h
@@ -43,6 +43,8 @@
#define CONFIG_BOARD_EARLY_INIT_F 1 /* do special hardware init. */
#define CONFIG_MISC_INIT_R 1
+#define CONFIG_SYS_TEXT_BASE 0xfe000000
+
#define CONFIG_8xx_GCLK_FREQ MPC8XX_SPEED
#undef CONFIG_8xx_CONS_SMC1
#define CONFIG_8xx_CONS_SMC2 1 /* Console is on SMC2 */
diff --git a/include/configs/MIP405.h b/include/configs/MIP405.h
index bfff7504fc..a097639ef6 100644
--- a/include/configs/MIP405.h
+++ b/include/configs/MIP405.h
@@ -35,6 +35,9 @@
#define CONFIG_405GP 1 /* This is a PPC405 CPU */
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_MIP405 1 /* ...on a MIP405 board */
+
+#define CONFIG_SYS_TEXT_BASE 0xFFF80000
+
/***********************************************************
* Note that it may also be a MIP405T board which is a subset of the
* MIP405
diff --git a/include/configs/ML2.h b/include/configs/ML2.h
index 2fc0119e5f..8f56902e63 100644
--- a/include/configs/ML2.h
+++ b/include/configs/ML2.h
@@ -30,6 +30,7 @@
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_ML2 1 /* ...on a ML2 board */
+#define CONFIG_SYS_TEXT_BASE 0x18000000
#define CONFIG_ENV_IS_IN_FLASH 1
diff --git a/include/configs/MOUSSE.h b/include/configs/MOUSSE.h
index 986590aaaf..9dccd2418a 100644
--- a/include/configs/MOUSSE.h
+++ b/include/configs/MOUSSE.h
@@ -48,7 +48,11 @@
#define CONFIG_MPC824X 1
#define CONFIG_MPC8240 1
#define CONFIG_MOUSSE 1
+
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
#define CONFIG_SYS_ADDR_MAP_B 1
+
#define CONFIG_CONS_INDEX 1
#define CONFIG_BAUDRATE 9600
#if 1
diff --git a/include/configs/MPC8260ADS.h b/include/configs/MPC8260ADS.h
index cb406aea01..fd7ef90cf2 100644
--- a/include/configs/MPC8260ADS.h
+++ b/include/configs/MPC8260ADS.h
@@ -48,6 +48,10 @@
#define CONFIG_MPC8260ADS 1 /* Motorola PQ2 ADS family board */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000 /* Standard: boot high */
+#endif
+
#define CONFIG_CPM2 1 /* Has a CPM2 */
/*
diff --git a/include/configs/MPC8266ADS.h b/include/configs/MPC8266ADS.h
index 376ff3e29e..1fbc190476 100644
--- a/include/configs/MPC8266ADS.h
+++ b/include/configs/MPC8266ADS.h
@@ -53,6 +53,8 @@
#define CONFIG_MPC8266ADS 1 /* ...on motorola ADS board */
#define CONFIG_CPM2 1 /* Has a CPM2 */
+#define CONFIG_SYS_TEXT_BASE 0xfe000000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* Call board_early_init_f */
#define CONFIG_RESET_PHY_R 1 /* Call reset_phy() */
diff --git a/include/configs/MPC8308RDB.h b/include/configs/MPC8308RDB.h
index b717c1bbef..de03a97d39 100644
--- a/include/configs/MPC8308RDB.h
+++ b/include/configs/MPC8308RDB.h
@@ -33,6 +33,8 @@
#define CONFIG_MPC8308 1 /* MPC8308 CPU specific */
#define CONFIG_MPC8308RDB 1 /* MPC8308RDB board specific */
+#define CONFIG_SYS_TEXT_BASE 0xFE000000
+
#define CONFIG_MISC_INIT_R
/*
diff --git a/include/configs/MPC8313ERDB.h b/include/configs/MPC8313ERDB.h
index 18af02871f..3eca719bdc 100644
--- a/include/configs/MPC8313ERDB.h
+++ b/include/configs/MPC8313ERDB.h
@@ -35,6 +35,10 @@
#define CONFIG_MPC8313 1
#define CONFIG_MPC8313ERDB 1
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFE000000
+#endif
+
#define CONFIG_PCI
#define CONFIG_FSL_ELBC 1
diff --git a/include/configs/MPC8315ERDB.h b/include/configs/MPC8315ERDB.h
index b0f5cbde3d..2e6cc51213 100644
--- a/include/configs/MPC8315ERDB.h
+++ b/include/configs/MPC8315ERDB.h
@@ -27,7 +27,11 @@
#ifdef CONFIG_NAND
#define CONFIG_NAND_U_BOOT 1
-#define CONFIG_RAMBOOT_TEXT_BASE 0x00100000
+#define CONFIG_SYS_TEXT_BASE 0x00100000
+#endif
+
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFE000000
#endif
/*
diff --git a/include/configs/MPC8323ERDB.h b/include/configs/MPC8323ERDB.h
index f81ca8c642..177e6e9b4e 100644
--- a/include/configs/MPC8323ERDB.h
+++ b/include/configs/MPC8323ERDB.h
@@ -17,6 +17,8 @@
#define CONFIG_MPC83xx 1 /* MPC83xx family */
#define CONFIG_MPC832x 1 /* MPC832x CPU specific */
+#define CONFIG_SYS_TEXT_BASE 0xFE000000
+
#define CONFIG_PCI 1
/*
diff --git a/include/configs/MPC832XEMDS.h b/include/configs/MPC832XEMDS.h
index f57290a279..fe51208941 100644
--- a/include/configs/MPC832XEMDS.h
+++ b/include/configs/MPC832XEMDS.h
@@ -28,8 +28,8 @@
#define CONFIG_MPC83xx 1 /* MPC83xx family */
#define CONFIG_MPC832x 1 /* MPC832x CPU specific */
#define CONFIG_MPC832XEMDS 1 /* MPC832XEMDS board specific */
-#undef CONFIG_PQ_MDS_PIB /* POWERQUICC MDS Platform IO Board */
-#undef CONFIG_PQ_MDS_PIB_ATM /* QOC3 ATM card */
+
+#define CONFIG_SYS_TEXT_BASE 0xFE000000
/*
* System Clock Setup
diff --git a/include/configs/MPC8349EMDS.h b/include/configs/MPC8349EMDS.h
index 8e508b6f15..6f02db0278 100644
--- a/include/configs/MPC8349EMDS.h
+++ b/include/configs/MPC8349EMDS.h
@@ -1,5 +1,5 @@
/*
- * (C) Copyright 2006
+ * (C) Copyright 2006-2010
* Wolfgang Denk, DENX Software Engineering, wd@denx.de.
*
* See file CREDITS for list of people who contributed to this
@@ -38,8 +38,10 @@
#define CONFIG_MPC8349 1 /* MPC8349 specific */
#define CONFIG_MPC8349EMDS 1 /* MPC8349EMDS board specific */
-#define PCI_66M
-#ifdef PCI_66M
+#define CONFIG_SYS_TEXT_BASE 0xFE000000
+
+#define CONFIG_PCI_66M
+#ifdef CONFIG_PCI_66M
#define CONFIG_83XX_CLKIN 66000000 /* in Hz */
#else
#define CONFIG_83XX_CLKIN 33000000 /* in Hz */
@@ -51,7 +53,7 @@
#endif /* CONFIG_PCISLAVE */
#ifndef CONFIG_SYS_CLK_FREQ
-#ifdef PCI_66M
+#ifdef CONFIG_PCI_66M
#define CONFIG_SYS_CLK_FREQ 66000000
#define HRCWL_CSB_TO_CLKIN HRCWL_CSB_TO_CLKIN_4X1
#else
diff --git a/include/configs/MPC8349ITX.h b/include/configs/MPC8349ITX.h
index 3659d88255..d49c1ff76b 100644
--- a/include/configs/MPC8349ITX.h
+++ b/include/configs/MPC8349ITX.h
@@ -67,6 +67,10 @@
#define CONFIG_MPC834x /* MPC834x family (8343, 8347, 8349) */
#define CONFIG_MPC8349 /* MPC8349 specific */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFEF00000
+#endif
+
#define CONFIG_SYS_IMMR 0xE0000000 /* The IMMR is relocated to here */
#define CONFIG_MISC_INIT_F
@@ -394,8 +398,8 @@ boards, we say we have two, but don't display a message if we find only one. */
#endif
-#define PCI_66M
-#ifdef PCI_66M
+#define CONFIG_PCI_66M
+#ifdef CONFIG_PCI_66M
#define CONFIG_83XX_CLKIN 66666666 /* in Hz */
#else
#define CONFIG_83XX_CLKIN 33333333 /* in Hz */
diff --git a/include/configs/MPC8360EMDS.h b/include/configs/MPC8360EMDS.h
index 5449d0fd7a..e5165e9473 100644
--- a/include/configs/MPC8360EMDS.h
+++ b/include/configs/MPC8360EMDS.h
@@ -30,6 +30,9 @@
#define CONFIG_MPC83xx 1 /* MPC83xx family */
#define CONFIG_MPC8360 1 /* MPC8360 CPU specific */
#define CONFIG_MPC8360EMDS 1 /* MPC8360EMDS board specific */
+
+#define CONFIG_SYS_TEXT_BASE 0xFE000000
+
#undef CONFIG_PQ_MDS_PIB /* POWERQUICC MDS Platform IO Board */
#undef CONFIG_PQ_MDS_PIB_ATM /* QOC3 ATM card */
diff --git a/include/configs/MPC8360ERDK.h b/include/configs/MPC8360ERDK.h
index 680e329d03..dbbeeca57a 100644
--- a/include/configs/MPC8360ERDK.h
+++ b/include/configs/MPC8360ERDK.h
@@ -26,18 +26,20 @@
#define CONFIG_MPC8360 1 /* MPC8360 CPU specific */
#define CONFIG_MPC8360ERDK 1 /* MPC8360ERDK board specific */
+#define CONFIG_SYS_TEXT_BASE 0xFF800000
+
/*
* System Clock Setup
*/
#ifdef CONFIG_CLKIN_33MHZ
#define CONFIG_83XX_CLKIN 33333333
#define CONFIG_SYS_CLK_FREQ 33333333
-#define PCI_33M 1
+#define CONFIG_PCI_33M 1
#define HRCWL_CSB_TO_CLKIN_MPC8360ERDK HRCWL_CSB_TO_CLKIN_10X1
#else
#define CONFIG_83XX_CLKIN 66000000
#define CONFIG_SYS_CLK_FREQ 66000000
-#define PCI_66M 1
+#define CONFIG_PCI_66M 1
#define HRCWL_CSB_TO_CLKIN_MPC8360ERDK HRCWL_CSB_TO_CLKIN_5X1
#endif /* CONFIG_CLKIN_33MHZ */
diff --git a/include/configs/MPC837XEMDS.h b/include/configs/MPC837XEMDS.h
index 45b22a5acc..5d30c790da 100644
--- a/include/configs/MPC837XEMDS.h
+++ b/include/configs/MPC837XEMDS.h
@@ -29,6 +29,8 @@
#define CONFIG_MPC837x 1 /* MPC837x CPU specific */
#define CONFIG_MPC837XEMDS 1 /* MPC837XEMDS board specific */
+#define CONFIG_SYS_TEXT_BASE 0xFE000000
+
/*
* System Clock Setup
*/
diff --git a/include/configs/MPC837XERDB.h b/include/configs/MPC837XERDB.h
index d69d25e401..afc37b5c60 100644
--- a/include/configs/MPC837XERDB.h
+++ b/include/configs/MPC837XERDB.h
@@ -30,6 +30,8 @@
#define CONFIG_MPC837x 1 /* MPC837x CPU specific */
#define CONFIG_MPC837XERDB 1
+#define CONFIG_SYS_TEXT_BASE 0xFE000000
+
#define CONFIG_PCI 1
#define CONFIG_BOARD_EARLY_INIT_F
diff --git a/include/configs/MPC8536DS.h b/include/configs/MPC8536DS.h
index 8ef24e62dd..cc83d92479 100644
--- a/include/configs/MPC8536DS.h
+++ b/include/configs/MPC8536DS.h
@@ -36,17 +36,21 @@
#ifdef CONFIG_NAND
#define CONFIG_NAND_U_BOOT 1
#define CONFIG_RAMBOOT_NAND 1
-#define CONFIG_RAMBOOT_TEXT_BASE 0xf8f82000
+#define CONFIG_SYS_TEXT_BASE 0xf8f82000
#endif
#ifdef CONFIG_SDCARD
#define CONFIG_RAMBOOT_SDCARD 1
-#define CONFIG_RAMBOOT_TEXT_BASE 0xf8f80000
+#define CONFIG_SYS_TEXT_BASE 0xf8f80000
#endif
#ifdef CONFIG_SPIFLASH
#define CONFIG_RAMBOOT_SPIFLASH 1
-#define CONFIG_RAMBOOT_TEXT_BASE 0xf8f80000
+#define CONFIG_SYS_TEXT_BASE 0xf8f80000
+#endif
+
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xeff80000
#endif
/* High Level Configuration Options */
diff --git a/include/configs/MPC8540ADS.h b/include/configs/MPC8540ADS.h
index 84db2fb70f..4ac1f6e822 100644
--- a/include/configs/MPC8540ADS.h
+++ b/include/configs/MPC8540ADS.h
@@ -41,6 +41,12 @@
#define CONFIG_MPC8540 1 /* MPC8540 specific */
#define CONFIG_MPC8540ADS 1 /* MPC8540ADS board specific */
+/*
+ * default CCARBAR is at 0xff700000
+ * assume U-Boot is less than 0.5MB
+ */
+#define CONFIG_SYS_TEXT_BASE 0xfff80000
+
#ifndef CONFIG_HAS_FEC
#define CONFIG_HAS_FEC 1 /* 8540 has FEC */
#endif
diff --git a/include/configs/MPC8540EVAL.h b/include/configs/MPC8540EVAL.h
index 66fea852f8..85ecf47252 100644
--- a/include/configs/MPC8540EVAL.h
+++ b/include/configs/MPC8540EVAL.h
@@ -36,6 +36,8 @@
#define CONFIG_MPC8540 1 /* MPC8540 specific */
#define CONFIG_MPC8540EVAL 1 /* MPC8540EVAL board specific */
+#define CONFIG_SYS_TEXT_BASE 0xfff80000
+
#undef CONFIG_PCI /* pci ethernet support */
#define CONFIG_TSEC_ENET /* tsec ethernet support */
#define CONFIG_ENV_OVERWRITE
diff --git a/include/configs/MPC8541CDS.h b/include/configs/MPC8541CDS.h
index 359426924d..5bd851ff16 100644
--- a/include/configs/MPC8541CDS.h
+++ b/include/configs/MPC8541CDS.h
@@ -37,6 +37,8 @@
#define CONFIG_MPC8541 1 /* MPC8541 specific */
#define CONFIG_MPC8541CDS 1 /* MPC8541CDS board specific */
+#define CONFIG_SYS_TEXT_BASE 0xfff80000
+
#define CONFIG_PCI
#define CONFIG_SYS_PCI_64BIT 1 /* enable 64-bit PCI resources */
#define CONFIG_TSEC_ENET /* tsec ethernet support */
diff --git a/include/configs/MPC8544DS.h b/include/configs/MPC8544DS.h
index 3af7f6de86..5322a2368f 100644
--- a/include/configs/MPC8544DS.h
+++ b/include/configs/MPC8544DS.h
@@ -34,6 +34,10 @@
#define CONFIG_MPC8544 1
#define CONFIG_MPC8544DS 1
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xfff80000
+#endif
+
#define CONFIG_PCI 1 /* Enable PCI/PCIE */
#define CONFIG_PCI1 1 /* PCI controller 1 */
#define CONFIG_PCIE1 1 /* PCIE controler 1 (slot 1) */
diff --git a/include/configs/MPC8548CDS.h b/include/configs/MPC8548CDS.h
index cda3936a06..2d99358287 100644
--- a/include/configs/MPC8548CDS.h
+++ b/include/configs/MPC8548CDS.h
@@ -36,6 +36,10 @@
#define CONFIG_MPC8548 1 /* MPC8548 specific */
#define CONFIG_MPC8548CDS 1 /* MPC8548CDS board specific */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xfff80000
+#endif
+
#define CONFIG_PCI /* enable any pci type devices */
#define CONFIG_PCI1 /* PCI controller 1 */
#define CONFIG_PCIE1 /* PCIE controler 1 (slot 1) */
diff --git a/include/configs/MPC8555CDS.h b/include/configs/MPC8555CDS.h
index b22f4d0204..7bc1bcefb6 100644
--- a/include/configs/MPC8555CDS.h
+++ b/include/configs/MPC8555CDS.h
@@ -37,6 +37,8 @@
#define CONFIG_MPC8555 1 /* MPC8555 specific */
#define CONFIG_MPC8555CDS 1 /* MPC8555CDS board specific */
+#define CONFIG_SYS_TEXT_BASE 0xfff80000
+
#define CONFIG_PCI
#define CONFIG_SYS_PCI_64BIT 1 /* enable 64-bit PCI resources */
#define CONFIG_TSEC_ENET /* tsec ethernet support */
diff --git a/include/configs/MPC8560ADS.h b/include/configs/MPC8560ADS.h
index cdb66636ae..fad180ffb7 100644
--- a/include/configs/MPC8560ADS.h
+++ b/include/configs/MPC8560ADS.h
@@ -42,6 +42,12 @@
#define CONFIG_MPC8560ADS 1 /* MPC8560ADS board specific */
#define CONFIG_MPC8560 1
+/*
+ * default CCARBAR is at 0xff700000
+ * assume U-Boot is less than 0.5MB
+ */
+#define CONFIG_SYS_TEXT_BASE 0xfff80000
+
#define CONFIG_PCI
#define CONFIG_SYS_PCI_64BIT 1 /* enable 64-bit PCI resources */
#define CONFIG_TSEC_ENET /* tsec ethernet support */
diff --git a/include/configs/MPC8568MDS.h b/include/configs/MPC8568MDS.h
index 3a405d46dd..054991e716 100644
--- a/include/configs/MPC8568MDS.h
+++ b/include/configs/MPC8568MDS.h
@@ -33,6 +33,8 @@
#define CONFIG_MPC8568 1 /* MPC8568 specific */
#define CONFIG_MPC8568MDS 1 /* MPC8568MDS board specific */
+#define CONFIG_SYS_TEXT_BASE 0xfff80000
+
#define CONFIG_PCI 1 /* Enable PCI/PCIE */
#define CONFIG_PCI1 1 /* PCI controller */
#define CONFIG_PCIE1 1 /* PCIE controller */
diff --git a/include/configs/MPC8569MDS.h b/include/configs/MPC8569MDS.h
index d09b2f721c..62a4039d69 100644
--- a/include/configs/MPC8569MDS.h
+++ b/include/configs/MPC8569MDS.h
@@ -65,7 +65,11 @@ extern unsigned long get_clock_freq(void);
#ifdef CONFIG_NAND
#define CONFIG_NAND_U_BOOT 1
#define CONFIG_RAMBOOT_NAND 1
-#define CONFIG_RAMBOOT_TEXT_BASE 0xf8f82000
+#define CONFIG_SYS_TEXT_BASE 0xf8f82000
+#endif
+
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xfff80000
#endif
/*
diff --git a/include/configs/MPC8572DS.h b/include/configs/MPC8572DS.h
index 9601029618..336d62d12b 100644
--- a/include/configs/MPC8572DS.h
+++ b/include/configs/MPC8572DS.h
@@ -41,6 +41,10 @@
#define CONFIG_MPC8572DS 1
#define CONFIG_MP 1 /* support multiple processors */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xeff80000
+#endif
+
#define CONFIG_FSL_ELBC 1 /* Has Enhanced localbus controller */
#define CONFIG_PCI 1 /* Enable PCI/PCIE */
#define CONFIG_PCIE1 1 /* PCIE controler 1 (slot 1) */
diff --git a/include/configs/MPC8610HPCD.h b/include/configs/MPC8610HPCD.h
index 004b764b29..9128c985fb 100644
--- a/include/configs/MPC8610HPCD.h
+++ b/include/configs/MPC8610HPCD.h
@@ -19,6 +19,8 @@
#define CONFIG_MPC8610HPCD 1 /* MPC8610HPCD board specific */
#define CONFIG_LINUX_RESET_VEC 0x100 /* Reset vector used by Linux */
+#define CONFIG_SYS_TEXT_BASE 0xfff00000
+
#define CONFIG_FSL_DIU_FB 1 /* FSL DIU */
/* video */
diff --git a/include/configs/MPC8641HPCN.h b/include/configs/MPC8641HPCN.h
index a46ec28f59..c4efababd5 100644
--- a/include/configs/MPC8641HPCN.h
+++ b/include/configs/MPC8641HPCN.h
@@ -41,6 +41,12 @@
/*#define CONFIG_PHYS_64BIT 1*/ /* Place devices in 36-bit space */
#define CONFIG_ADDR_MAP 1 /* Use addr map */
+/*
+ * default CCSRBAR is at 0xff700000
+ * assume U-Boot is less than 0.5MB
+ */
+#define CONFIG_SYS_TEXT_BASE 0xeff00000
+
#ifdef RUN_DIAG
#define CONFIG_SYS_DIAG_ADDR CONFIG_SYS_FLASH_BASE
#endif
diff --git a/include/configs/MPC86xADS.h b/include/configs/MPC86xADS.h
index 85c68900ce..beada7ee2a 100644
--- a/include/configs/MPC86xADS.h
+++ b/include/configs/MPC86xADS.h
@@ -28,6 +28,8 @@
#undef CONFIG_MPC859DSL
#undef CONFIG_MPC852T
+#define CONFIG_SYS_TEXT_BASE 0xFE000000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#undef CONFIG_8xx_CONS_SMC2
#undef CONFIG_8xx_CONS_NONE
diff --git a/include/configs/MPC885ADS.h b/include/configs/MPC885ADS.h
index 8ffc1b2b15..eeb2355b9f 100644
--- a/include/configs/MPC885ADS.h
+++ b/include/configs/MPC885ADS.h
@@ -15,6 +15,8 @@
#define CONFIG_MPC885 1 /* MPC885 CPU (Duet family) */
+#define CONFIG_SYS_TEXT_BASE 0xFE000000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#undef CONFIG_8xx_CONS_SMC2
#undef CONFIG_8xx_CONS_NONE
diff --git a/include/configs/MUSENKI.h b/include/configs/MUSENKI.h
index c0c716d232..e60063985b 100644
--- a/include/configs/MUSENKI.h
+++ b/include/configs/MUSENKI.h
@@ -45,6 +45,7 @@
#define CONFIG_MPC8245 1
#define CONFIG_MUSENKI 1
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
#define CONFIG_CONS_INDEX 1
#define CONFIG_BAUDRATE 9600
diff --git a/include/configs/MVBC_P.h b/include/configs/MVBC_P.h
index 05603bec43..cd867666c3 100644
--- a/include/configs/MVBC_P.h
+++ b/include/configs/MVBC_P.h
@@ -32,6 +32,10 @@
#define CONFIG_MPC5xxx 1
#define CONFIG_MPC5200 1
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFF800000
+#endif
+
#define CONFIG_SYS_MPC5XXX_CLKIN 33000000
#define BOOTFLAG_COLD 0x01
diff --git a/include/configs/MVBLM7.h b/include/configs/MVBLM7.h
index 1cfdef5f49..9ec03d9a46 100644
--- a/include/configs/MVBLM7.h
+++ b/include/configs/MVBLM7.h
@@ -37,6 +37,8 @@
#define CONFIG_MPC834x 1
#define CONFIG_MPC8343 1
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
#define CONFIG_SYS_IMMR 0xE0000000
#define CONFIG_PCI
@@ -186,7 +188,7 @@
#define CONFIG_NET_MULTI 1
#define CONFIG_NET_RETRY_COUNT 3
-#define PCI_66M
+#define CONFIG_PCI_66M
#define CONFIG_83XX_CLKIN 66666667
#define CONFIG_PCI_PNP
#define CONFIG_PCI_SCAN_SHOW
diff --git a/include/configs/MVBLUE.h b/include/configs/MVBLUE.h
index cff33047fd..bee1327354 100644
--- a/include/configs/MVBLUE.h
+++ b/include/configs/MVBLUE.h
@@ -43,6 +43,8 @@
#define MVBLUE_BOARD_BOX 1
#define MVBLUE_BOARD_LYNX 2
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
#if 0
#define ERR_LED(code) do { if (code) \
*(volatile char *)(0xff000003) = ( 3 | (code<<4) ) & 0xf3; \
diff --git a/include/configs/MVSMR.h b/include/configs/MVSMR.h
index 074e55579e..ec93245ef2 100644
--- a/include/configs/MVSMR.h
+++ b/include/configs/MVSMR.h
@@ -32,6 +32,10 @@
#define CONFIG_MPC5xxx 1
#define CONFIG_MPC5200 1
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFF800000
+#endif
+
#define CONFIG_SYS_MPC5XXX_CLKIN 33000000
#define BOOTFLAG_COLD 0x01
diff --git a/include/configs/NC650.h b/include/configs/NC650.h
index b0a42d61f7..8d1d45de5a 100644
--- a/include/configs/NC650.h
+++ b/include/configs/NC650.h
@@ -36,6 +36,8 @@
#define CONFIG_MPC852T 1
#define CONFIG_NC650 1
+#define CONFIG_SYS_TEXT_BASE 0x40700000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#undef CONFIG_8xx_CONS_SMC2
#undef CONFIG_8xx_CONS_NONE
diff --git a/include/configs/NETPHONE.h b/include/configs/NETPHONE.h
index 76ca916636..24d9110a69 100644
--- a/include/configs/NETPHONE.h
+++ b/include/configs/NETPHONE.h
@@ -41,6 +41,8 @@
#define CONFIG_MPC870 1 /* This is a MPC885 CPU */
#define CONFIG_NETPHONE 1 /* ...on a NetPhone board */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#undef CONFIG_8xx_CONS_SMC2
#undef CONFIG_8xx_CONS_NONE
diff --git a/include/configs/NETTA.h b/include/configs/NETTA.h
index 4f9f9fe0f1..3c2c958a50 100644
--- a/include/configs/NETTA.h
+++ b/include/configs/NETTA.h
@@ -37,6 +37,8 @@
#define CONFIG_MPC885 1 /* This is a MPC885 CPU */
#define CONFIG_NETTA 1 /* ...on a NetTA board */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#undef CONFIG_8xx_CONS_SMC2
#undef CONFIG_8xx_CONS_NONE
diff --git a/include/configs/NETTA2.h b/include/configs/NETTA2.h
index d060cb7a42..a89c77d3db 100644
--- a/include/configs/NETTA2.h
+++ b/include/configs/NETTA2.h
@@ -41,6 +41,8 @@
#define CONFIG_MPC870 1 /* This is a MPC885 CPU */
#define CONFIG_NETTA2 1 /* ...on a NetTA2 board */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#undef CONFIG_8xx_CONS_SMC2
#undef CONFIG_8xx_CONS_NONE
diff --git a/include/configs/NETVIA.h b/include/configs/NETVIA.h
index a18b480127..0cc07f8230 100644
--- a/include/configs/NETVIA.h
+++ b/include/configs/NETVIA.h
@@ -37,6 +37,8 @@
#define CONFIG_MPC850 1 /* This is a MPC850 CPU */
#define CONFIG_NETVIA 1 /* ...on a NetVia board */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#if !defined(CONFIG_NETVIA_VERSION) || CONFIG_NETVIA_VERSION == 1
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#undef CONFIG_8xx_CONS_SMC2
diff --git a/include/configs/NSCU.h b/include/configs/NSCU.h
index 6a4c47d888..cd8c769643 100644
--- a/include/configs/NSCU.h
+++ b/include/configs/NSCU.h
@@ -37,6 +37,8 @@
#define CONFIG_TQM855M 1 /* ...on a TQM8xxM module */
#define CONFIG_NSCU 1
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_8xx_CONS_SCC1 1 /* Console is on SMC1 */
#define CONFIG_SYS_SMC_RXBUFLEN 128
#define CONFIG_SYS_MAXIDLE 10
diff --git a/include/configs/NX823.h b/include/configs/NX823.h
index 5054d5e61f..70c6bb5cfa 100644
--- a/include/configs/NX823.h
+++ b/include/configs/NX823.h
@@ -39,6 +39,8 @@
#define CONFIG_MPC823 1 /* This is a MPC823 CPU */
#define CONFIG_NX823 1 /* ...on a NEXUS 823 module */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
/*#define CONFIG_VIDEO 1 */
#define CONFIG_8xx_GCLK_FREQ MPC8XX_SPEED
diff --git a/include/configs/OCRTC.h b/include/configs/OCRTC.h
index ad2e4da389..a275b548e5 100644
--- a/include/configs/OCRTC.h
+++ b/include/configs/OCRTC.h
@@ -37,6 +37,8 @@
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_OCRTC 1 /* ...on a OCRTC board */
+#define CONFIG_SYS_TEXT_BASE 0xFFFD0000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_SYS_CLK_FREQ 33000000 /* external frequency to pll */
diff --git a/include/configs/OXC.h b/include/configs/OXC.h
index 7f4babeede..76d8b04707 100644
--- a/include/configs/OXC.h
+++ b/include/configs/OXC.h
@@ -39,6 +39,8 @@
#define CONFIG_MPC8240 1
#define CONFIG_OXC 1
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* Call board_early_init_f */
#define CONFIG_IDENT_STRING " [oxc] "
diff --git a/include/configs/P1022DS.h b/include/configs/P1022DS.h
index f3c2883200..5d127cfd78 100644
--- a/include/configs/P1022DS.h
+++ b/include/configs/P1022DS.h
@@ -22,6 +22,10 @@
#define CONFIG_P1022DS
#define CONFIG_MP /* support multiple processors */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xeff80000
+#endif
+
#define CONFIG_FSL_ELBC /* Has Enhanced localbus controller */
#define CONFIG_PCI /* Enable PCI/PCIE */
#define CONFIG_PCIE1 /* PCIE controler 1 (slot 1) */
diff --git a/include/configs/P1_P2_RDB.h b/include/configs/P1_P2_RDB.h
index 0b0822d584..8c373fa248 100644
--- a/include/configs/P1_P2_RDB.h
+++ b/include/configs/P1_P2_RDB.h
@@ -46,17 +46,21 @@
#ifdef CONFIG_NAND
#define CONFIG_NAND_U_BOOT 1
#define CONFIG_RAMBOOT_NAND 1
-#define CONFIG_RAMBOOT_TEXT_BASE 0xf8f82000
+#define CONFIG_SYS_TEXT_BASE 0xf8f82000
#endif
#ifdef CONFIG_SDCARD
#define CONFIG_RAMBOOT_SDCARD 1
-#define CONFIG_RAMBOOT_TEXT_BASE 0xf8f80000
+#define CONFIG_SYS_TEXT_BASE 0xf8f80000
#endif
#ifdef CONFIG_SPIFLASH
#define CONFIG_RAMBOOT_SPIFLASH 1
-#define CONFIG_RAMBOOT_TEXT_BASE 0xf8f80000
+#define CONFIG_SYS_TEXT_BASE 0xf8f80000
+#endif
+
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xeff80000
#endif
/* High Level Configuration Options */
diff --git a/include/configs/P2020DS.h b/include/configs/P2020DS.h
index 27e8d8edb0..102e4c96f2 100644
--- a/include/configs/P2020DS.h
+++ b/include/configs/P2020DS.h
@@ -41,6 +41,10 @@
#define CONFIG_P2020DS 1
#define CONFIG_MP 1 /* support multiple processors */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xeff80000
+#endif
+
#define CONFIG_FSL_ELBC 1 /* Has Enhanced localbus controller */
#define CONFIG_PCI 1 /* Enable PCI/PCIE */
#define CONFIG_PCIE1 1 /* PCIE controler 1 (slot 1) */
diff --git a/include/configs/P3G4.h b/include/configs/P3G4.h
index 6aa214a4b5..5f3c41475f 100644
--- a/include/configs/P3G4.h
+++ b/include/configs/P3G4.h
@@ -42,6 +42,8 @@
#define CONFIG_P3G4 1 /* this is a P3G4 board */
#define CONFIG_SYS_GT_6426x GT_64260 /* with a 64260 system controller */
+#define CONFIG_SYS_TEXT_BASE 0xfff00000
+
#define CONFIG_BAUDRATE 115200 /* console baudrate = 115200 */
#undef CONFIG_ECC /* enable ECC support */
diff --git a/include/configs/P4080DS.h b/include/configs/P4080DS.h
index 87703c98b3..5e7b81f0a2 100644
--- a/include/configs/P4080DS.h
+++ b/include/configs/P4080DS.h
@@ -36,4 +36,8 @@
#define CONFIG_SYS_P4080_ERRATUM_CPU22
#define CONFIG_SYS_P4080_ERRATUM_SERDES8
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xeff80000
+#endif
+
#include "corenet_ds.h"
diff --git a/include/configs/PATI.h b/include/configs/PATI.h
index 8d67ee7e8c..8a913f550d 100644
--- a/include/configs/PATI.h
+++ b/include/configs/PATI.h
@@ -33,6 +33,9 @@
#define CONFIG_MPC555 1 /* This is an MPC555 CPU */
#define CONFIG_PATI 1 /* ...On a PATI board */
+
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
/* Serial Console Configuration */
#define CONFIG_5xx_CONS_SCI1
#undef CONFIG_5xx_CONS_SCI2
diff --git a/include/configs/PCI405.h b/include/configs/PCI405.h
index 244d6fe502..bea7e49c5e 100644
--- a/include/configs/PCI405.h
+++ b/include/configs/PCI405.h
@@ -39,6 +39,8 @@
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_PCI405 1 /* ...on a PCI405 board */
+#define CONFIG_SYS_TEXT_BASE 0xFFFD0000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_MISC_INIT_R 1 /* call misc_init_r() on init */
diff --git a/include/configs/PCIPPC2.h b/include/configs/PCIPPC2.h
index 7587ecc8cd..f98295aa06 100644
--- a/include/configs/PCIPPC2.h
+++ b/include/configs/PCIPPC2.h
@@ -43,6 +43,8 @@
#define CONFIG_PCIPPC2 1 /* this is a PCIPPC2 board */
+#define CONFIG_SYS_TEXT_BASE 0xfff00000
+
#define CONFIG_BOARD_EARLY_INIT_F 1
#define CONFIG_MISC_INIT_R 1
diff --git a/include/configs/PCIPPC6.h b/include/configs/PCIPPC6.h
index 447321a84c..a33d946877 100644
--- a/include/configs/PCIPPC6.h
+++ b/include/configs/PCIPPC6.h
@@ -43,6 +43,8 @@
#define CONFIG_PCIPPC2 1 /* this is a PCIPPC2 board */
+#define CONFIG_SYS_TEXT_BASE 0xfff00000
+
#define CONFIG_BOARD_EARLY_INIT_F 1
#define CONFIG_MISC_INIT_R 1
diff --git a/include/configs/PIP405.h b/include/configs/PIP405.h
index 2901cfd6d6..8d89c80908 100644
--- a/include/configs/PIP405.h
+++ b/include/configs/PIP405.h
@@ -35,6 +35,9 @@
#define CONFIG_405GP 1 /* This is a PPC405 CPU */
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_PIP405 1 /* ...on a PIP405 board */
+
+#define CONFIG_SYS_TEXT_BASE 0xFFF80000
+
/***********************************************************
* Clock
***********************************************************/
diff --git a/include/configs/PLU405.h b/include/configs/PLU405.h
index c7a0172ed2..7d91a75498 100644
--- a/include/configs/PLU405.h
+++ b/include/configs/PLU405.h
@@ -37,6 +37,8 @@
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_PLU405 1 /* ...on a PLU405 board */
+#define CONFIG_SYS_TEXT_BASE 0xFFF80000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_MISC_INIT_R 1 /* call misc_init_r() */
diff --git a/include/configs/PM520.h b/include/configs/PM520.h
index 957bf22708..e1e709fe36 100644
--- a/include/configs/PM520.h
+++ b/include/configs/PM520.h
@@ -33,6 +33,8 @@
#define CONFIG_MPC5xxx 1 /* This is an MPC5xxx CPU */
#define CONFIG_PM520 1 /* ... on PM520 board */
+#define CONFIG_SYS_TEXT_BASE 0xfff00000
+
#define CONFIG_SYS_MPC5XXX_CLKIN 33000000 /* ... running at 33MHz */
#define CONFIG_MISC_INIT_R
diff --git a/include/configs/PM826.h b/include/configs/PM826.h
index 6d24c26732..31874b12b6 100644
--- a/include/configs/PM826.h
+++ b/include/configs/PM826.h
@@ -39,6 +39,10 @@
#define CONFIG_PM826 1 /* ...on a PM8260 module */
#define CONFIG_CPM2 1 /* Has a CPM2 */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFF000000 /* Standard: boot 64-bit flash */
+#endif
+
#undef CONFIG_DB_CR826_J30x_ON /* J30x jumpers on D.B. carrier */
#define CONFIG_BOOTDELAY 5 /* autoboot after 5 seconds */
diff --git a/include/configs/PM828.h b/include/configs/PM828.h
index 509c8b45da..8573ef92a4 100644
--- a/include/configs/PM828.h
+++ b/include/configs/PM828.h
@@ -39,6 +39,10 @@
#define CONFIG_PM828 1 /* ...on a PM828 module */
#define CONFIG_CPM2 1 /* Has a CPM2 */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0x40000000 /* Standard: boot 64-bit flash */
+#endif
+
#undef CONFIG_DB_CR826_J30x_ON /* J30x jumpers on D.B. carrier */
#define CONFIG_BOOTDELAY 5 /* autoboot after 5 seconds */
diff --git a/include/configs/PM854.h b/include/configs/PM854.h
index 1179a90828..8a0af47171 100644
--- a/include/configs/PM854.h
+++ b/include/configs/PM854.h
@@ -41,6 +41,8 @@
#define CONFIG_MPC8540 1 /* MPC8540 specific */
#define CONFIG_PM854 1 /* PM854 board specific */
+#define CONFIG_SYS_TEXT_BASE 0xfff80000
+
#define CONFIG_PCI
#define CONFIG_TSEC_ENET /* tsec ethernet support */
#define CONFIG_ENV_OVERWRITE
diff --git a/include/configs/PM856.h b/include/configs/PM856.h
index 1934e3fe81..a6acc0b6b4 100644
--- a/include/configs/PM856.h
+++ b/include/configs/PM856.h
@@ -42,6 +42,8 @@
#define CONFIG_CPM2 1 /* Has a CPM2 */
#define CONFIG_PM856 1 /* PM856 board specific */
+#define CONFIG_SYS_TEXT_BASE 0xfff80000
+
#define CONFIG_PCI
#define CONFIG_TSEC_ENET /* tsec ethernet support */
#define CONFIG_ENV_OVERWRITE
diff --git a/include/configs/PMC405.h b/include/configs/PMC405.h
index eb1a166f91..4d65df8f4c 100644
--- a/include/configs/PMC405.h
+++ b/include/configs/PMC405.h
@@ -32,6 +32,8 @@
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_PMC405 1 /* ...on a PMC405 board */
+#define CONFIG_SYS_TEXT_BASE 0xFFF80000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_MISC_INIT_R 1 /* call misc_init_r() */
diff --git a/include/configs/PMC405DE.h b/include/configs/PMC405DE.h
index 9cefaa15a5..74b656c761 100644
--- a/include/configs/PMC405DE.h
+++ b/include/configs/PMC405DE.h
@@ -28,6 +28,8 @@
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_PMC405DE 1 /* ...on a PMC405DE board */
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_MISC_INIT_R 1 /* call misc_init_r() */
#define CONFIG_BOARD_TYPES 1 /* support board types */
diff --git a/include/configs/PMC440.h b/include/configs/PMC440.h
index 4d3c0228ce..66e2692e53 100644
--- a/include/configs/PMC440.h
+++ b/include/configs/PMC440.h
@@ -39,6 +39,10 @@
#define CONFIG_440 1 /* ... PPC440 family */
#define CONFIG_4xx 1 /* ... PPC4xx family */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFFF90000
+#endif
+
#define CONFIG_SYS_CLK_FREQ 33333400
#if 0 /* temporary disabled because OS/9 does not like dcache on startup */
diff --git a/include/configs/PN62.h b/include/configs/PN62.h
index ed026ddf37..b19beba8ad 100644
--- a/include/configs/PN62.h
+++ b/include/configs/PN62.h
@@ -39,6 +39,8 @@
#define CONFIG_MPC8240 1
#define CONFIG_PN62 1
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
#define CONFIG_CONS_INDEX 1
diff --git a/include/configs/PPChameleonEVB.h b/include/configs/PPChameleonEVB.h
index f9b20143a0..e910f7d71b 100644
--- a/include/configs/PPChameleonEVB.h
+++ b/include/configs/PPChameleonEVB.h
@@ -75,6 +75,8 @@
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_PPCHAMELEONEVB 1 /* ...on a PPChameleonEVB board */
+#define CONFIG_SYS_TEXT_BASE 0xFFFB0000 /* Reserve 320 kB for Monitor */
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_MISC_INIT_R 1 /* call misc_init_r() */
diff --git a/include/configs/QS823.h b/include/configs/QS823.h
index c1416cb91b..df9376c52f 100644
--- a/include/configs/QS823.h
+++ b/include/configs/QS823.h
@@ -53,6 +53,8 @@
#define CONFIG_QS823 1 /* ...on a QS823 module */
#define CONFIG_SCC2_ENET 1 /* SCC2 10BaseT ethernet */
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
/* Select the target clock speed */
#undef CONFIG_CLOCK_16MHZ /* cpu=16,777,216 Hz, mem=16Mhz */
#undef CONFIG_CLOCK_33MHZ /* cpu=33,554,432 Hz, mem=33Mhz */
diff --git a/include/configs/QS850.h b/include/configs/QS850.h
index de74fee768..45b8325f90 100644
--- a/include/configs/QS850.h
+++ b/include/configs/QS850.h
@@ -53,6 +53,8 @@
#define CONFIG_QS850 1 /* ...on a QS850 module */
#define CONFIG_SCC2_ENET 1 /* SCC2 10BaseT ethernet */
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
/* Select the target clock speed */
#undef CONFIG_CLOCK_16MHZ /* cpu=16,777,216 Hz, mem=16Mhz */
#undef CONFIG_CLOCK_33MHZ /* cpu=33,554,432 Hz, mem=33Mhz */
diff --git a/include/configs/QS860T.h b/include/configs/QS860T.h
index 705d37524d..48a20dfb3c 100644
--- a/include/configs/QS860T.h
+++ b/include/configs/QS860T.h
@@ -54,6 +54,9 @@
#define CONFIG_MPC860 1 /* This is a MPC860 CPU */
#define CONFIG_QS860T 1 /* ...on a QS860T module */
+/* Start address of 512K Socketed Flash */
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
#define CONFIG_FEC_ENET 1 /* FEC 10/100BaseT ethernet */
#define CONFIG_MII
#define FEC_INTERRUPT SIU_LEVEL1
diff --git a/include/configs/R360MPI.h b/include/configs/R360MPI.h
index 830f4bc59b..586f1bb491 100644
--- a/include/configs/R360MPI.h
+++ b/include/configs/R360MPI.h
@@ -36,6 +36,8 @@
#define CONFIG_MPC823 1 /* This is a MPC823 CPU */
#define CONFIG_R360MPI 1
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_LCD
#undef CONFIG_EDT32F10
#define CONFIG_SHARP_LQ057Q3DC02
diff --git a/include/configs/RBC823.h b/include/configs/RBC823.h
index 00ac6cf1f3..471f32eaf3 100644
--- a/include/configs/RBC823.h
+++ b/include/configs/RBC823.h
@@ -39,6 +39,7 @@
#define CONFIG_MPC823 1 /* This is a MPC823 CPU */
#define CONFIG_RBC823 1 /* ...on a RBC823 module */
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
#if 0
#define DEBUG 1
diff --git a/include/configs/RPXClassic.h b/include/configs/RPXClassic.h
index bec52780e6..37414a8243 100644
--- a/include/configs/RPXClassic.h
+++ b/include/configs/RPXClassic.h
@@ -42,6 +42,8 @@
#define CONFIG_MPC860 1
#define CONFIG_RPXCLASSIC 1
+#define CONFIG_SYS_TEXT_BASE 0xff000000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#undef CONFIG_8xx_CONS_SMC2
#undef CONFIG_8xx_CONS_NONE
diff --git a/include/configs/RPXlite.h b/include/configs/RPXlite.h
index c9dd104ada..b5647968ed 100644
--- a/include/configs/RPXlite.h
+++ b/include/configs/RPXlite.h
@@ -39,6 +39,8 @@
#define CONFIG_MPC850 1 /* This is a MPC850 CPU */
#define CONFIG_RPXLITE 1
+#define CONFIG_SYS_TEXT_BASE 0xfff00000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#undef CONFIG_8xx_CONS_SMC2
#undef CONFIG_8xx_CONS_NONE
diff --git a/include/configs/RPXlite_DW.h b/include/configs/RPXlite_DW.h
index a59053c0eb..6577a26051 100644
--- a/include/configs/RPXlite_DW.h
+++ b/include/configs/RPXlite_DW.h
@@ -51,6 +51,8 @@
#define CONFIG_MPC823 1 /* This is a MPC823e CPU. */
#define CONFIG_RPXLITE 1 /* RPXlite DW version board */
+#define CONFIG_SYS_TEXT_BASE 0xff000000
+
#ifdef CONFIG_LCD /* with LCD controller ? */
#define CONFIG_SPLASH_SCREEN /* ... with splashscreen support*/
#endif
diff --git a/include/configs/RPXsuper.h b/include/configs/RPXsuper.h
index ec891e4ca3..f4f90f2043 100644
--- a/include/configs/RPXsuper.h
+++ b/include/configs/RPXsuper.h
@@ -1,6 +1,7 @@
#ifndef __CONFIG_H
#define __CONFIG_H
+#define CONFIG_SYS_TEXT_BASE 0x80F00000
/*****************************************************************************
*
diff --git a/include/configs/RRvision.h b/include/configs/RRvision.h
index 6ec5be01c7..6e30335882 100644
--- a/include/configs/RRvision.h
+++ b/include/configs/RRvision.h
@@ -36,6 +36,8 @@
#define CONFIG_MPC823 1 /* This is a MPC823 CPU */
#define CONFIG_RRVISION 1 /* ...on a RRvision board */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_8xx_GCLK_FREQ 64000000
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
diff --git a/include/configs/Rattler.h b/include/configs/Rattler.h
index 587b42e4bc..8140ae9744 100644
--- a/include/configs/Rattler.h
+++ b/include/configs/Rattler.h
@@ -33,6 +33,8 @@
#define CPU_ID_STR "MPC8250"
#endif /* CONFIG_MPC8248 */
+#define CONFIG_SYS_TEXT_BASE 0xFE000000
+
#define CONFIG_CPM2 1 /* Has a CPM2 */
#define CONFIG_RATTLER /* Analogue&Micro Rattler board */
diff --git a/include/configs/SBC8540.h b/include/configs/SBC8540.h
index b753f267f9..9cc87dd5cf 100644
--- a/include/configs/SBC8540.h
+++ b/include/configs/SBC8540.h
@@ -48,6 +48,8 @@
#define CONFIG_MPC85xx 1 /* MPC8540/MPC8560 */
#define CONFIG_MPC85xx_REV1 1 /* MPC85xx Rev 1.0 chip */
+#define CONFIG_SYS_TEXT_BASE 0xfffc0000
+
#define CONFIG_CPM2 1 /* has CPM2 */
diff --git a/include/configs/SCM.h b/include/configs/SCM.h
index a114f6c5f4..6f8c28e9d7 100644
--- a/include/configs/SCM.h
+++ b/include/configs/SCM.h
@@ -38,6 +38,8 @@
#define CONFIG_SCM 1 /* ...on a System Controller Module */
#define CONFIG_CPM2 1 /* Has a CPM2 */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#if (CONFIG_TQM8260 <= 100)
# error "TQM8260 module revison not supported"
#endif
diff --git a/include/configs/SIMPC8313.h b/include/configs/SIMPC8313.h
index 6c57f95ba0..b4fbae4c36 100644
--- a/include/configs/SIMPC8313.h
+++ b/include/configs/SIMPC8313.h
@@ -36,6 +36,10 @@
#define CONFIG_MPC831x 1
#define CONFIG_MPC8313 1
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0x00100000
+#endif
+
#define CONFIG_PCI
#define CONFIG_FSL_ELBC 1
diff --git a/include/configs/SM850.h b/include/configs/SM850.h
index 56f03e2b88..b5fe1cdacb 100644
--- a/include/configs/SM850.h
+++ b/include/configs/SM850.h
@@ -38,6 +38,8 @@
#define CONFIG_MPC850 1 /* This is a MPC850 CPU */
#define CONFIG_SM850 1 /*...on a MPC850 Service Module */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_8xx_CONS_SMC2 1 /* Console is on SMC2 */
#define CONFIG_SYS_SMC_RXBUFLEN 128
#define CONFIG_SYS_MAXIDLE 10
diff --git a/include/configs/SPD823TS.h b/include/configs/SPD823TS.h
index fa77882cfd..5de4dd2e05 100644
--- a/include/configs/SPD823TS.h
+++ b/include/configs/SPD823TS.h
@@ -36,6 +36,8 @@
#define CONFIG_MPC823 1 /* This is a MPC823 CPU */
#define CONFIG_SPD823TS 1 /* ...on a SPD823TS board */
+#define CONFIG_SYS_TEXT_BASE 0xFF000000
+
#define CONFIG_RESET_PHY_R 1 /* Call reset_phy() */
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
diff --git a/include/configs/SXNI855T.h b/include/configs/SXNI855T.h
index 8ee8cbf0b5..f3991532e6 100644
--- a/include/configs/SXNI855T.h
+++ b/include/configs/SXNI855T.h
@@ -64,6 +64,8 @@
#define CONFIG_MPC860T 1
#define CONFIG_MPC855T 1
+#define CONFIG_SYS_TEXT_BASE 0xF8000000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#undef CONFIG_8xx_CONS_SMC2
#undef CONFIG_8xx_CONS_SCC1
diff --git a/include/configs/Sandpoint8240.h b/include/configs/Sandpoint8240.h
index 514bf89dac..20fb96ab2b 100644
--- a/include/configs/Sandpoint8240.h
+++ b/include/configs/Sandpoint8240.h
@@ -39,6 +39,8 @@
#define CONFIG_MPC8240 1
#define CONFIG_SANDPOINT 1
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
#if 0
#define USE_DINK32 1
#else
diff --git a/include/configs/Sandpoint8245.h b/include/configs/Sandpoint8245.h
index 0381252af2..525e9fec59 100644
--- a/include/configs/Sandpoint8245.h
+++ b/include/configs/Sandpoint8245.h
@@ -39,6 +39,8 @@
#define CONFIG_MPC8245 1
#define CONFIG_SANDPOINT 1
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
#if 0
#define USE_DINK32 1
#else
diff --git a/include/configs/TB5200.h b/include/configs/TB5200.h
index b675a21cf7..fcadd4a9c7 100644
--- a/include/configs/TB5200.h
+++ b/include/configs/TB5200.h
@@ -37,6 +37,17 @@
#define CONFIG_TQM5200 1 /* ... on TQM5200 module */
#define CONFIG_TB5200 1 /* ... on a TB5200 base board */
+/*
+ * Valid values for CONFIG_SYS_TEXT_BASE are:
+ * 0xFC000000 boot low (standard configuration with room for
+ * max 64 MByte Flash ROM)
+ * 0xFFF00000 boot high (for a backup copy of U-Boot)
+ * 0x00100000 boot from RAM (for testing only)
+ */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFC000000
+#endif
+
#define CONFIG_SYS_MPC5XXX_CLKIN 33000000 /* ... running at 33.000000MHz */
#define BOOTFLAG_COLD 0x01 /* Normal Power-On: Boot from FLASH */
diff --git a/include/configs/TK885D.h b/include/configs/TK885D.h
index 7cefa32d7a..0d916f538d 100644
--- a/include/configs/TK885D.h
+++ b/include/configs/TK885D.h
@@ -40,6 +40,8 @@
#define CONFIG_TQM885D 1 /* ...on a TQM88D module */
#define CONFIG_TK885D 1 /* ...in a TK885D base board */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_8xx_OSCLK 10000000 /* 10 MHz - PLL input clock */
#define CONFIG_SYS_8xx_CPUCLK_MIN 15000000 /* 15 MHz - CPU minimum clock */
#define CONFIG_SYS_8xx_CPUCLK_MAX 133000000 /* 133 MHz - CPU maximum clock */
diff --git a/include/configs/TOP5200.h b/include/configs/TOP5200.h
index f9d1446604..2654a447ed 100644
--- a/include/configs/TOP5200.h
+++ b/include/configs/TOP5200.h
@@ -45,6 +45,14 @@
#define CONFIG_MPC5200 1 /* More exactly a MPC5200 */
#define CONFIG_TOP5200 1 /* ... on TOP5200 board - we need this for FEC.C */
+/*
+ * allowed and functional CONFIG_SYS_TEXT_BASE values:
+ * 0xff000000 low boot at 0x00000100 (default board setting)
+ * 0xfff00000 high boot at 0xfff00100 (board needs modification)
+ * 0x00100000 RAM load and test
+ */
+#define CONFIG_SYS_TEXT_BASE 0xff000000
+
#define CONFIG_SYS_MPC5XXX_CLKIN 33000000 /* ... running at 33.000000MHz */
#define BOOTFLAG_COLD 0x01 /* Normal Power-On: Boot from FLASH */
diff --git a/include/configs/TOP860.h b/include/configs/TOP860.h
index 4bbd42aff4..8bc87e3ab4 100644
--- a/include/configs/TOP860.h
+++ b/include/configs/TOP860.h
@@ -53,6 +53,9 @@
#define CONFIG_MPC860 1 /* This is a MPC860 CPU */
#define CONFIG_MPC860T 1 /* even better... an FEC! */
#define CONFIG_TOP860 1 /* ...on a TOP860 module */
+
+#define CONFIG_SYS_TEXT_BASE 0x80000000
+
#undef CONFIG_WATCHDOG /* watchdog disabled */
#define CONFIG_IDENT_STRING " EMK TOP860"
diff --git a/include/configs/TQM5200.h b/include/configs/TQM5200.h
index a4c74615e3..f9d1110ecd 100644
--- a/include/configs/TQM5200.h
+++ b/include/configs/TQM5200.h
@@ -37,6 +37,17 @@
#define CONFIG_TQM5200 1 /* ... on TQM5200 module */
#undef CONFIG_TQM5200_REV100 /* define for revision 100 modules */
+/*
+ * Valid values for CONFIG_SYS_TEXT_BASE are:
+ * 0xFC000000 boot low (standard configuration with room for
+ * max 64 MByte Flash ROM)
+ * 0xFFF00000 boot high (for a backup copy of U-Boot)
+ * 0x00100000 boot from RAM (for testing only)
+ */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFC000000
+#endif
+
/* On a Cameron or on a FO300 board or ... */
#if !defined(CONFIG_CAM5200) && !defined(CONFIG_FO300)
#define CONFIG_STK52XX 1 /* ... on a STK52XX board */
diff --git a/include/configs/TQM823L.h b/include/configs/TQM823L.h
index 372c76dcc8..c2753a692d 100644
--- a/include/configs/TQM823L.h
+++ b/include/configs/TQM823L.h
@@ -36,6 +36,8 @@
#define CONFIG_MPC823 1 /* This is a MPC823 CPU */
#define CONFIG_TQM823L 1 /* ...on a TQM8xxL module */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#ifdef CONFIG_LCD /* with LCD controller ? */
#define CONFIG_LCD_LOGO 1 /* print our logo on the LCD */
#define CONFIG_LCD_INFO 1 /* ... and some board info */
diff --git a/include/configs/TQM823M.h b/include/configs/TQM823M.h
index 64c97071d6..028cff7b44 100644
--- a/include/configs/TQM823M.h
+++ b/include/configs/TQM823M.h
@@ -36,6 +36,8 @@
#define CONFIG_MPC823 1 /* This is a MPC823 CPU */
#define CONFIG_TQM823M 1 /* ...on a TQM8xxM module */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#ifdef CONFIG_LCD /* with LCD controller ? */
/* #define CONFIG_NEC_NL6448BC20 1 / * use NEC NL6448BC20 display */
#endif
diff --git a/include/configs/TQM8260.h b/include/configs/TQM8260.h
index de5a86eb0c..5cbab9bf1a 100644
--- a/include/configs/TQM8260.h
+++ b/include/configs/TQM8260.h
@@ -44,6 +44,8 @@
* (easy to change)
*/
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_MPC8260 1 /* This is a MPC8260 CPU */
#if 0
diff --git a/include/configs/TQM8272.h b/include/configs/TQM8272.h
index e9251ddd0d..a8a9ddfd9e 100644
--- a/include/configs/TQM8272.h
+++ b/include/configs/TQM8272.h
@@ -37,6 +37,8 @@
#define CONFIG_MPC8272_FAMILY 1
#define CONFIG_TQM8272 1
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_GET_CPU_STR_F 1 /* Get the CPU ID STR */
#define CONFIG_BOARD_GET_CPU_CLK_F 1 /* Get the CLKIN from board fct */
diff --git a/include/configs/TQM834x.h b/include/configs/TQM834x.h
index 35af262427..a34e4427bc 100644
--- a/include/configs/TQM834x.h
+++ b/include/configs/TQM834x.h
@@ -37,6 +37,8 @@
#define CONFIG_MPC8349 1 /* MPC8349 specific */
#define CONFIG_TQM834X 1 /* TQM834X board specific */
+#define CONFIG_SYS_TEXT_BASE 0x80000000
+
/* IMMR Base Addres Register, use Freescale default: 0xff400000 */
#define CONFIG_SYS_IMMR 0xff400000
diff --git a/include/configs/TQM850L.h b/include/configs/TQM850L.h
index bf6ecce470..2e091f8d2d 100644
--- a/include/configs/TQM850L.h
+++ b/include/configs/TQM850L.h
@@ -36,6 +36,8 @@
#define CONFIG_MPC850 1 /* This is a MPC850 CPU */
#define CONFIG_TQM850L 1 /* ...on a TQM8xxL module */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#define CONFIG_SYS_SMC_RXBUFLEN 128
#define CONFIG_SYS_MAXIDLE 10
diff --git a/include/configs/TQM850M.h b/include/configs/TQM850M.h
index 74424527b8..2c988c3e7d 100644
--- a/include/configs/TQM850M.h
+++ b/include/configs/TQM850M.h
@@ -36,6 +36,8 @@
#define CONFIG_MPC850 1 /* This is a MPC850 CPU */
#define CONFIG_TQM850M 1 /* ...on a TQM8xxM module */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#define CONFIG_SYS_SMC_RXBUFLEN 128
#define CONFIG_SYS_MAXIDLE 10
diff --git a/include/configs/TQM855L.h b/include/configs/TQM855L.h
index 5bf8f0239d..f4ab9892ed 100644
--- a/include/configs/TQM855L.h
+++ b/include/configs/TQM855L.h
@@ -36,6 +36,8 @@
#define CONFIG_MPC855 1 /* This is a MPC855 CPU */
#define CONFIG_TQM855L 1 /* ...on a TQM8xxL module */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#define CONFIG_SYS_SMC_RXBUFLEN 128
#define CONFIG_SYS_MAXIDLE 10
diff --git a/include/configs/TQM855M.h b/include/configs/TQM855M.h
index 456ed7e473..c92a6aced8 100644
--- a/include/configs/TQM855M.h
+++ b/include/configs/TQM855M.h
@@ -36,6 +36,8 @@
#define CONFIG_MPC855 1 /* This is a MPC855 CPU */
#define CONFIG_TQM855M 1 /* ...on a TQM8xxM module */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#define CONFIG_SYS_SMC_RXBUFLEN 128
#define CONFIG_SYS_MAXIDLE 10
diff --git a/include/configs/TQM85xx.h b/include/configs/TQM85xx.h
index 2ff3ddc0bd..d95f75d578 100644
--- a/include/configs/TQM85xx.h
+++ b/include/configs/TQM85xx.h
@@ -41,6 +41,12 @@
#define CONFIG_E500 1 /* BOOKE e500 family */
#define CONFIG_MPC85xx 1 /* MPC8540/60/55/41 */
+#if defined(CONFIG_TQM8548_BE)
+#define CONFIG_SYS_TEXT_BASE 0xfff80000
+#else
+#define CONFIG_SYS_TEXT_BASE 0xfffc0000
+#endif
+
#if defined(CONFIG_TQM8548_AG) || defined(CONFIG_TQM8548_BE)
#define CONFIG_TQM8548
#endif
diff --git a/include/configs/TQM860L.h b/include/configs/TQM860L.h
index 94b9a3b1eb..ff629cf1b0 100644
--- a/include/configs/TQM860L.h
+++ b/include/configs/TQM860L.h
@@ -36,6 +36,8 @@
#define CONFIG_MPC860 1 /* This is a MPC860 CPU */
#define CONFIG_TQM860L 1 /* ...on a TQM8xxL module */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#define CONFIG_SYS_SMC_RXBUFLEN 128
#define CONFIG_SYS_MAXIDLE 10
diff --git a/include/configs/TQM860M.h b/include/configs/TQM860M.h
index ce5e6917c7..aa682f3fbc 100644
--- a/include/configs/TQM860M.h
+++ b/include/configs/TQM860M.h
@@ -36,6 +36,8 @@
#define CONFIG_MPC860 1 /* This is a MPC860 CPU */
#define CONFIG_TQM860M 1 /* ...on a TQM8xxM module */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#define CONFIG_SYS_SMC_RXBUFLEN 128
#define CONFIG_SYS_MAXIDLE 10
diff --git a/include/configs/TQM862L.h b/include/configs/TQM862L.h
index d77df9cad2..f36ef190ab 100644
--- a/include/configs/TQM862L.h
+++ b/include/configs/TQM862L.h
@@ -39,6 +39,8 @@
#define CONFIG_TQM862L 1 /* ...on a TQM8xxL module */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#define CONFIG_SYS_SMC_RXBUFLEN 128
#define CONFIG_SYS_MAXIDLE 10
diff --git a/include/configs/TQM862M.h b/include/configs/TQM862M.h
index a6c465b318..fb8f538719 100644
--- a/include/configs/TQM862M.h
+++ b/include/configs/TQM862M.h
@@ -39,6 +39,8 @@
#define CONFIG_TQM862M 1 /* ...on a TQM8xxM module */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#define CONFIG_SYS_SMC_RXBUFLEN 128
#define CONFIG_SYS_MAXIDLE 10
diff --git a/include/configs/TQM866M.h b/include/configs/TQM866M.h
index 9ec815c600..f92bab0555 100644
--- a/include/configs/TQM866M.h
+++ b/include/configs/TQM866M.h
@@ -36,6 +36,8 @@
#define CONFIG_MPC866 1 /* This is a MPC866 CPU */
#define CONFIG_TQM866M 1 /* ...on a TQM8xxM module */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_8xx_OSCLK 10000000 /* 10 MHz - PLL input clock */
#define CONFIG_SYS_8xx_CPUCLK_MIN 15000000 /* 15 MHz - CPU minimum clock */
#define CONFIG_SYS_8xx_CPUCLK_MAX 133000000 /* 133 MHz - CPU maximum clock */
diff --git a/include/configs/TQM885D.h b/include/configs/TQM885D.h
index c715c0783e..7418512a15 100644
--- a/include/configs/TQM885D.h
+++ b/include/configs/TQM885D.h
@@ -39,6 +39,8 @@
#define CONFIG_MPC885 1 /* This is a MPC885 CPU */
#define CONFIG_TQM885D 1 /* ...on a TQM88D module */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_8xx_OSCLK 10000000 /* 10 MHz - PLL input clock */
#define CONFIG_SYS_8xx_CPUCLK_MIN 15000000 /* 15 MHz - CPU minimum clock */
#define CONFIG_SYS_8xx_CPUCLK_MAX 133000000 /* 133 MHz - CPU maximum clock */
diff --git a/include/configs/Total5200.h b/include/configs/Total5200.h
index de11d86fe3..be0a9f806c 100644
--- a/include/configs/Total5200.h
+++ b/include/configs/Total5200.h
@@ -44,6 +44,16 @@
#define CONFIG_MPC5200 1 /* (more precisely a MPC5200 CPU) */
#define CONFIG_TOTAL5200 1 /* ... on Total5200 board */
+/*
+ * Valid values for CONFIG_SYS_TEXT_BASE are:
+ * 0xFFF00000 boot high (standard configuration)
+ * 0xFE000000 boot low
+ * 0x00100000 boot from RAM (for testing only)
+ */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+#endif
+
#define CONFIG_SYS_MPC5XXX_CLKIN 33000000 /* ... running at 33.000000MHz */
#define BOOTFLAG_COLD 0x01 /* Normal Power-On: Boot from FLASH */
diff --git a/include/configs/VOH405.h b/include/configs/VOH405.h
index 0117cc0728..8dbee86794 100644
--- a/include/configs/VOH405.h
+++ b/include/configs/VOH405.h
@@ -37,6 +37,8 @@
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_VOH405 1 /* ...on a VOH405 board */
+#define CONFIG_SYS_TEXT_BASE 0xFFF80000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_MISC_INIT_R 1 /* call misc_init_r() */
diff --git a/include/configs/VOM405.h b/include/configs/VOM405.h
index 76016ac82f..63e6ca8139 100644
--- a/include/configs/VOM405.h
+++ b/include/configs/VOM405.h
@@ -35,6 +35,8 @@
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_VOM405 1 /* ...on a VOM405 board */
+#define CONFIG_SYS_TEXT_BASE 0xFFFC8000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_MISC_INIT_R 1 /* call misc_init_r() */
diff --git a/include/configs/VoVPN-GW.h b/include/configs/VoVPN-GW.h
index 8f8b55ed2e..805764aa93 100644
--- a/include/configs/VoVPN-GW.h
+++ b/include/configs/VoVPN-GW.h
@@ -29,6 +29,8 @@
/* define busmode: 8260 */
#undef CONFIG_BUSMODE_60x
+#define CONFIG_SYS_TEXT_BASE 0xfff00000
+
/* system clock rate (CLKIN) - equal to the 60x and local bus speed */
#ifdef CONFIG_CLKIN_66MHz
#define CONFIG_8260_CLKIN 66666666 /* in Hz */
diff --git a/include/configs/W7OLMC.h b/include/configs/W7OLMC.h
index 0fbe80ce8c..fce7f2814f 100644
--- a/include/configs/W7OLMC.h
+++ b/include/configs/W7OLMC.h
@@ -38,6 +38,8 @@
#define CONFIG_W7O 1 /* ...on a Wave 7 Optics board */
#define CONFIG_W7OLMC 1 /* ...specifically an LMC */
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* Call board_early_init_f */
#define CONFIG_MISC_INIT_F 1 /* and misc_init_f() */
#define CONFIG_MISC_INIT_R 1 /* and misc_init_r() */
diff --git a/include/configs/W7OLMG.h b/include/configs/W7OLMG.h
index f12fa55d2a..0144fbde34 100644
--- a/include/configs/W7OLMG.h
+++ b/include/configs/W7OLMG.h
@@ -38,6 +38,8 @@
#define CONFIG_W7O 1 /* ...on a Wave 7 Optics board */
#define CONFIG_W7OLMG 1 /* ...specifically an LMG */
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* Call board_early_init_f */
#define CONFIG_MISC_INIT_F 1 /* and misc_init_f() */
#define CONFIG_MISC_INIT_R 1 /* and misc_init_r() */
diff --git a/include/configs/WUH405.h b/include/configs/WUH405.h
index 34a5fff138..3ca19fcfb4 100644
--- a/include/configs/WUH405.h
+++ b/include/configs/WUH405.h
@@ -38,6 +38,8 @@
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_WUH405 1 /* ...on a WUH405 board */
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_MISC_INIT_R 1 /* call misc_init_r() */
diff --git a/include/configs/XPEDITE1000.h b/include/configs/XPEDITE1000.h
index c378542c39..b2399c6cce 100644
--- a/include/configs/XPEDITE1000.h
+++ b/include/configs/XPEDITE1000.h
@@ -39,6 +39,8 @@
#define CONFIG_BOARD_EARLY_INIT_F 1 /* Call board_pre_init */
#define CONFIG_SYS_CLK_FREQ 33333333 /* external freq to pll */
+#define CONFIG_SYS_TEXT_BASE 0xFFF80000
+
/*
* DDR config
*/
diff --git a/include/configs/XPEDITE5170.h b/include/configs/XPEDITE5170.h
index 729a48597b..31ca59dfd9 100644
--- a/include/configs/XPEDITE5170.h
+++ b/include/configs/XPEDITE5170.h
@@ -40,6 +40,8 @@
#define CONFIG_HIGH_BATS 1 /* High BATs supported and enabled */
#define CONFIG_ALTIVEC 1
+#define CONFIG_SYS_TEXT_BASE 0xfff00000
+
#define CONFIG_PCI 1 /* Enable PCI/PCIE */
#define CONFIG_PCI_PNP 1 /* do pci plug-and-play */
#define CONFIG_PCI_SCAN_SHOW 1 /* show pci devices on startup */
diff --git a/include/configs/XPEDITE5200.h b/include/configs/XPEDITE5200.h
index 7ff440e247..1f27c5ef22 100644
--- a/include/configs/XPEDITE5200.h
+++ b/include/configs/XPEDITE5200.h
@@ -38,6 +38,10 @@
#define CONFIG_SYS_BOARD_NAME "XPedite5200"
#define CONFIG_BOARD_EARLY_INIT_R /* Call board_pre_init */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xfff80000
+#endif
+
#define CONFIG_PCI 1 /* Enable PCI/PCIE */
#define CONFIG_PCI_PNP 1 /* do pci plug-and-play */
#define CONFIG_PCI_SCAN_SHOW 1 /* show pci devices on startup */
diff --git a/include/configs/XPEDITE5370.h b/include/configs/XPEDITE5370.h
index 634ba74d8f..24ee65ed61 100644
--- a/include/configs/XPEDITE5370.h
+++ b/include/configs/XPEDITE5370.h
@@ -38,6 +38,10 @@
#define CONFIG_SYS_BOARD_NAME "XPedite5370"
#define CONFIG_BOARD_EARLY_INIT_R /* Call board_pre_init */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xfff80000
+#endif
+
#define CONFIG_PCI 1 /* Enable PCI/PCIE */
#define CONFIG_PCI_PNP 1 /* do pci plug-and-play */
#define CONFIG_PCI_SCAN_SHOW 1 /* show pci devices on startup */
diff --git a/include/configs/Yukon8220.h b/include/configs/Yukon8220.h
index 273b4e240e..398a70d6ad 100644
--- a/include/configs/Yukon8220.h
+++ b/include/configs/Yukon8220.h
@@ -31,6 +31,8 @@
#define CONFIG_MPC8220 1
#define CONFIG_YUKON8220 1 /* ... on Yukon board */
+#define CONFIG_SYS_TEXT_BASE 0xfff00000
+
#define CONFIG_BAT_RW 1 /* Use common BAT rw code */
#define CONFIG_HIGH_BATS 1 /* High BATs supported */
diff --git a/include/configs/ZPC1900.h b/include/configs/ZPC1900.h
index d0dc067c70..d305fa4a85 100644
--- a/include/configs/ZPC1900.h
+++ b/include/configs/ZPC1900.h
@@ -29,6 +29,9 @@
#define CONFIG_MPC8260 1 /* This is an MPC8260 CPU */
#define CONFIG_ZPC1900 1 /* ...on Zephyr ZPC.1900 board */
+
+#define CONFIG_SYS_TEXT_BASE 0xFE000000
+
#define CPU_ID_STR "MPC8265"
#define CONFIG_CPM2 1 /* Has a CPM2 */
diff --git a/include/configs/ZUMA.h b/include/configs/ZUMA.h
index fcc47a99ec..b161dde2aa 100644
--- a/include/configs/ZUMA.h
+++ b/include/configs/ZUMA.h
@@ -41,6 +41,8 @@
#define CONFIG_EVB64260 1 /* this is an EVB64260 board */
#define CONFIG_ZUMA_V2 1 /* always define this for ZUMA v2 */
+#define CONFIG_SYS_TEXT_BASE 0xfff00000
+
/* #define CONFIG_ZUMA_V2_OLD 1 */ /* backwards compat for old V2 board */
#define CONFIG_BAUDRATE 38400 /* console baudrate = 38400 */
diff --git a/include/configs/acadia.h b/include/configs/acadia.h
index 39f85ae3b6..c1bd4be944 100644
--- a/include/configs/acadia.h
+++ b/include/configs/acadia.h
@@ -35,6 +35,10 @@
#define CONFIG_4xx 1 /* ... PPC4xx family */
#define CONFIG_405EZ 1 /* Specifc 405EZ support*/
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFFF80000
+#endif
+
/*
* Include common defines/options for all AMCC eval boards
*/
diff --git a/include/configs/aev.h b/include/configs/aev.h
index 15a242cc17..187e5c1987 100644
--- a/include/configs/aev.h
+++ b/include/configs/aev.h
@@ -41,6 +41,17 @@
#define CONFIG_AEVFIFO 1
#define CONFIG_SYS_MPC5XXX_CLKIN 33000000 /* ... running at 33.000000MHz */
+/*
+ * Valid values for CONFIG_SYS_TEXT_BASE are:
+ * 0xFC000000 boot low (standard configuration with room for
+ * max 64 MByte Flash ROM)
+ * 0xFFF00000 boot high (for a backup copy of U-Boot)
+ * 0x00100000 boot from RAM (for testing only)
+ */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFC000000
+#endif
+
#define CONFIG_HIGH_BATS 1 /* High BATs supported */
#define BOOTFLAG_COLD 0x01 /* Normal Power-On: Boot from FLASH */
diff --git a/include/configs/alpr.h b/include/configs/alpr.h
index 70382914b8..74a078146a 100644
--- a/include/configs/alpr.h
+++ b/include/configs/alpr.h
@@ -33,6 +33,9 @@
#define CONFIG_4xx 1 /* ... PPC4xx family */
#define CONFIG_BOARD_EARLY_INIT_F 1 /* Call board_pre_init */
#define CONFIG_LAST_STAGE_INIT 1 /* call last_stage_init() */
+
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
#define CONFIG_SYS_CLK_FREQ 33333333 /* external freq to pll */
#define CONFIG_4xx_DCACHE /* Enable i- and d-cache */
diff --git a/include/configs/aria.h b/include/configs/aria.h
index cb2c726391..3f1e7f7ffd 100644
--- a/include/configs/aria.h
+++ b/include/configs/aria.h
@@ -51,6 +51,8 @@
#define CONFIG_FSL_DIU_FB 1 /* FSL DIU */
#define CONFIG_FSL_DIU_LOGO_BMP 1 /* Don't include FSL DIU binary bmp */
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
/* video */
#undef CONFIG_VIDEO
diff --git a/include/configs/atc.h b/include/configs/atc.h
index 6f4fa2bf29..8ec8c79523 100644
--- a/include/configs/atc.h
+++ b/include/configs/atc.h
@@ -37,6 +37,8 @@
#define CONFIG_ATC 1 /* ...on a ATC board */
#define CONFIG_CPM2 1 /* Has a CPM2 */
+#define CONFIG_SYS_TEXT_BASE 0xFF000000
+
/*
* select serial console configuration
*
diff --git a/include/configs/bamboo.h b/include/configs/bamboo.h
index 18276c5886..1bdfd9da2f 100644
--- a/include/configs/bamboo.h
+++ b/include/configs/bamboo.h
@@ -36,6 +36,10 @@
#define CONFIG_4xx 1 /* ... PPC4xx family */
#define CONFIG_SYS_CLK_FREQ 33333333 /* external freq to pll */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFFFA0000
+#endif
+
/*
* Include common defines/options for all AMCC eval boards
*/
diff --git a/include/configs/barco.h b/include/configs/barco.h
index eef711a270..9073b2f863 100644
--- a/include/configs/barco.h
+++ b/include/configs/barco.h
@@ -62,6 +62,8 @@
#define CONFIG_MPC8245 1
#define CONFIG_BARCOBCD_STREAMING 1
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
#undef USE_DINK32
#define CONFIG_CONS_INDEX 3 /* set to '3' for on-chip DUART */
diff --git a/include/configs/bluestone.h b/include/configs/bluestone.h
index 560c64ff44..0bb97d9ea4 100644
--- a/include/configs/bluestone.h
+++ b/include/configs/bluestone.h
@@ -31,6 +31,11 @@
#define CONFIG_4xx 1 /* ... PPC4xx family */
#define CONFIG_440 1
+
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFFFA0000
+#endif
+
/*
* Include common defines/options for all AMCC eval boards
*/
diff --git a/include/configs/bubinga.h b/include/configs/bubinga.h
index 3e64492cd0..7262b3e8a0 100644
--- a/include/configs/bubinga.h
+++ b/include/configs/bubinga.h
@@ -37,6 +37,8 @@
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_BUBINGA 1 /* ...on a BUBINGA board */
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
/*
* Include common defines/options for all AMCC eval boards
*/
diff --git a/include/configs/c2mon.h b/include/configs/c2mon.h
index 4508d757ac..15d79c4cae 100644
--- a/include/configs/c2mon.h
+++ b/include/configs/c2mon.h
@@ -36,6 +36,8 @@
#define CONFIG_MPC855 1 /* This is a MPC855 CPU */
#define CONFIG_C2MON 1 /* ...on a C2MON module */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_80MHz 1 /* Running at 5 * 16 = 80 MHz */
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
diff --git a/include/configs/canmb.h b/include/configs/canmb.h
index 46d966d00e..0f2f386156 100644
--- a/include/configs/canmb.h
+++ b/include/configs/canmb.h
@@ -33,6 +33,13 @@
#define CONFIG_MPC5200 1 /* More exactly a MPC5200 */
#define CONFIG_CANMB 1 /* ... on canmb board - we need this for FEC.C */
+/*
+ * allowed and functional CONFIG_SYS_TEXT_BASE values:
+ * 0xfe000000 low boot at 0x00000100 (default board setting)
+ * 0x00100000 RAM load and test
+ */
+#define CONFIG_SYS_TEXT_BASE 0xFE000000
+
#define CONFIG_SYS_MPC5XXX_CLKIN 33000000 /* ... running at 33.000000MHz */
#define BOOTFLAG_COLD 0x01 /* Normal Power-On: Boot from FLASH */
diff --git a/include/configs/canyonlands.h b/include/configs/canyonlands.h
index 51087f7371..fcc7d0e3ed 100644
--- a/include/configs/canyonlands.h
+++ b/include/configs/canyonlands.h
@@ -48,6 +48,10 @@
#define CONFIG_440 1
#define CONFIG_4xx 1 /* ... PPC4xx family */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFFF80000
+#endif
+
/*
* Include common defines/options for all AMCC eval boards
*/
diff --git a/include/configs/cm5200.h b/include/configs/cm5200.h
index 289335180f..84311e3f7d 100644
--- a/include/configs/cm5200.h
+++ b/include/configs/cm5200.h
@@ -31,6 +31,8 @@
#define CONFIG_MPC5200 1 /* (more precisely an MPC5200 CPU) */
#define CONFIG_CM5200 1 /* ... on CM5200 platform */
+#define CONFIG_SYS_TEXT_BASE 0xfc000000
+
#define CONFIG_HIGH_BATS 1 /* High BATs supported */
/*
diff --git a/include/configs/cmi_mpc5xx.h b/include/configs/cmi_mpc5xx.h
index ae3e15cb66..72fdb6bdbe 100644
--- a/include/configs/cmi_mpc5xx.h
+++ b/include/configs/cmi_mpc5xx.h
@@ -38,6 +38,8 @@
#define CONFIG_MPC555 1 /* This is an MPC555 CPU */
#define CONFIG_CMI 1 /* Using the customized cmi board */
+#define CONFIG_SYS_TEXT_BASE 0x02000000 /* Boot from flash at location 0x00000000 */
+
/* Serial Console Configuration */
#define CONFIG_5xx_CONS_SCI1
#undef CONFIG_5xx_CONS_SCI2
diff --git a/include/configs/cogent_mpc8260.h b/include/configs/cogent_mpc8260.h
index 872333f711..444fce6831 100644
--- a/include/configs/cogent_mpc8260.h
+++ b/include/configs/cogent_mpc8260.h
@@ -37,6 +37,8 @@
#define CONFIG_COGENT 1 /* using Cogent Modular Architecture */
#define CONFIG_CPM2 1 /* Has a CPM2 */
+#define CONFIG_SYS_TEXT_BASE 0xfff00000
+
#define CONFIG_MISC_INIT_F 1 /* Use misc_init_f() */
#define CONFIG_MISC_INIT_R /* Use misc_init_r() */
diff --git a/include/configs/cogent_mpc8xx.h b/include/configs/cogent_mpc8xx.h
index 329bc9930a..a23db1c0b7 100644
--- a/include/configs/cogent_mpc8xx.h
+++ b/include/configs/cogent_mpc8xx.h
@@ -36,6 +36,8 @@
#define CONFIG_MPC860 1 /* This is an MPC860 CPU */
#define CONFIG_COGENT 1 /* using Cogent Modular Architecture */
+#define CONFIG_SYS_TEXT_BASE 0xfff00000
+
#define CONFIG_MISC_INIT_F 1 /* Use misc_init_f() */
#define CONFIG_MISC_INIT_R /* Use misc_init_r() */
diff --git a/include/configs/cpci5200.h b/include/configs/cpci5200.h
index 712db6d507..2bedae2744 100644
--- a/include/configs/cpci5200.h
+++ b/include/configs/cpci5200.h
@@ -45,6 +45,10 @@
#define CONFIG_CPCI5200 1 /* ... on CPCI5200 board */
#define CONFIG_MPC5200_DDR 1 /* ... use DDR RAM */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000 /* Standard: boot high */
+#endif
+
#define CONFIG_SYS_MPC5XXX_CLKIN 33000000 /* ... running at 33.000000MHz */
#define BOOTFLAG_COLD 0x01 /* Normal Power-On: Boot from FLASH */
diff --git a/include/configs/csb272.h b/include/configs/csb272.h
index 2aca605185..24367bae6d 100644
--- a/include/configs/csb272.h
+++ b/include/configs/csb272.h
@@ -40,6 +40,8 @@
#define CONFIG_LAST_STAGE_INIT 1 /* Call last_stage_init() */
#define CONFIG_SYS_CLK_FREQ 33000000 /* external frequency to pll */
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
/*
* OS Bootstrap configuration
*
diff --git a/include/configs/csb472.h b/include/configs/csb472.h
index 3450e24601..ad8811f6c4 100644
--- a/include/configs/csb472.h
+++ b/include/configs/csb472.h
@@ -40,6 +40,8 @@
#define CONFIG_LAST_STAGE_INIT 1 /* Call last_stage_init() */
#define CONFIG_SYS_CLK_FREQ 25000000 /* external frequency to pll */
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
/*
* OS Bootstrap configuration
*
diff --git a/include/configs/debris.h b/include/configs/debris.h
index 33b2120c1d..42b8c342de 100644
--- a/include/configs/debris.h
+++ b/include/configs/debris.h
@@ -30,6 +30,8 @@
#ifndef __CONFIG_H
#define __CONFIG_H
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
/* Environments */
/* bootargs */
diff --git a/include/configs/digsy_mtc.h b/include/configs/digsy_mtc.h
index 0b366f4dfd..3368b2d263 100644
--- a/include/configs/digsy_mtc.h
+++ b/include/configs/digsy_mtc.h
@@ -40,6 +40,16 @@
#define CONFIG_MPC5200 1 /* (more precisely an MPC5200 CPU) */
#define CONFIG_DIGSY_MTC 1 /* ... on InterControl digsyMTC board */
+/*
+ * Valid values for CONFIG_SYS_TEXT_BASE are:
+ * 0xFFF00000 boot high (standard configuration)
+ * 0xFE000000 boot low
+ * 0x00100000 boot from RAM (for testing only)
+ */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000 /* Standard: boot high */
+#endif
+
#define CONFIG_SYS_MPC5XXX_CLKIN 33000000
#define BOOTFLAG_COLD 0x01
diff --git a/include/configs/dlvision.h b/include/configs/dlvision.h
index 21d2d284a6..0d44eda867 100644
--- a/include/configs/dlvision.h
+++ b/include/configs/dlvision.h
@@ -28,6 +28,8 @@
#define CONFIG_4xx 1 /* member of PPC4xx family */
#define CONFIG_DLVISION 1 /* on a Neo board */
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
/*
* Include common defines/options for all AMCC eval boards
*/
diff --git a/include/configs/eXalion.h b/include/configs/eXalion.h
index 6a71cfac5b..bacdbf0e5d 100644
--- a/include/configs/eXalion.h
+++ b/include/configs/eXalion.h
@@ -40,6 +40,8 @@
#define CONFIG_MPC8245 1
#define CONFIG_EXALION 1
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
#if defined (CONFIG_MPC8240)
/* #warning ---------- eXalion with MPC8240 --------------- */
#elif defined (CONFIG_MPC8245)
diff --git a/include/configs/ebony.h b/include/configs/ebony.h
index 8c3284a94d..a0d3869660 100644
--- a/include/configs/ebony.h
+++ b/include/configs/ebony.h
@@ -37,6 +37,8 @@
#define CONFIG_BOARD_EARLY_INIT_F 1 /* Call board_early_init_f */
#define CONFIG_SYS_CLK_FREQ 33333333 /* external freq to pll */
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
/*
* Include common defines/options for all AMCC eval boards
*/
diff --git a/include/configs/ep8248.h b/include/configs/ep8248.h
index 8c042f8413..1576533304 100644
--- a/include/configs/ep8248.h
+++ b/include/configs/ep8248.h
@@ -31,6 +31,8 @@
#define CONFIG_EP8248 /* Embedded Planet EP8248 board */
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* Call board_early_init_f */
/* Allow serial number (serial#) and MAC address (ethaddr) to be overwritten */
diff --git a/include/configs/ep8260.h b/include/configs/ep8260.h
index 482b348939..ab646ae348 100644
--- a/include/configs/ep8260.h
+++ b/include/configs/ep8260.h
@@ -48,6 +48,8 @@
#define CONFIG_SYS_EP8260_H2 1
/* #undef CONFIG_SYS_EP8260_H2 */
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
#define CONFIG_CPM2 1 /* Has a CPM2 */
/* What is the oscillator's (UX2) frequency in Hz? */
diff --git a/include/configs/ep82xxm.h b/include/configs/ep82xxm.h
index afa35a3065..90407a85c0 100644
--- a/include/configs/ep82xxm.h
+++ b/include/configs/ep82xxm.h
@@ -31,6 +31,8 @@
#define CONFIG_EP82XXM /* Embedded Planet EP82xxM H 1.0 board */
/* 256MB SDRAM / 64MB FLASH */
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* Call board_early_init_f */
/* Allow serial number (serial#) and MAC address (ethaddr) to be overwritten */
diff --git a/include/configs/galaxy5200.h b/include/configs/galaxy5200.h
index 7bf6de2536..f6585d03f1 100644
--- a/include/configs/galaxy5200.h
+++ b/include/configs/galaxy5200.h
@@ -46,6 +46,20 @@
#define BOOTFLAG_WARM 0x02 /* Software reboot */
/*
+ * Valid values for CONFIG_SYS_TEXT_BASE are:
+ * 0xFFF00000 boot high (standard configuration)
+ * 0xFE000000 boot low
+ * 0x00100000 boot from RAM (for testing only) does not work
+ */
+#ifdef CONFIG_galaxy5200_LOWBOOT
+#define CONFIG_SYS_TEXT_BASE 0xFE000000
+#endif
+
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000 /* Standard: boot high */
+#endif
+
+/*
* Serial console configuration
*/
#define CONFIG_PSC_CONSOLE 4 /* console is on PSC4 -> */
diff --git a/include/configs/gdppc440etx.h b/include/configs/gdppc440etx.h
index d6db7bf494..282afbcc61 100644
--- a/include/configs/gdppc440etx.h
+++ b/include/configs/gdppc440etx.h
@@ -40,6 +40,8 @@
#define CONFIG_4xx 1 /* ... PPC4xx family */
#define CONFIG_SYS_CLK_FREQ 66666666 /* external freq to pll */
+#define CONFIG_SYS_TEXT_BASE 0xFFF80000
+
/*
* Include common defines/options for all AMCC eval boards
*/
diff --git a/include/configs/gw8260.h b/include/configs/gw8260.h
index cb3dd9ac07..9e7646703b 100644
--- a/include/configs/gw8260.h
+++ b/include/configs/gw8260.h
@@ -50,6 +50,8 @@
#ifndef __CONFIG_H
#define __CONFIG_H
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
/* Enable debug prints */
#undef DEBUG_BOOTP_EXT /* Debug received vendor fields */
diff --git a/include/configs/hcu4.h b/include/configs/hcu4.h
index 394a45fe43..dd5e5a20c6 100644
--- a/include/configs/hcu4.h
+++ b/include/configs/hcu4.h
@@ -37,6 +37,8 @@
#define CONFIG_4xx 1
#define CONFIG_HOSTNAME hcu4
+#define CONFIG_SYS_TEXT_BASE 0xFFFB0000
+
/*
* Include common defines/options for all boards produced by Netstal Maschinen
*/
diff --git a/include/configs/hcu5.h b/include/configs/hcu5.h
index a4633e139e..a2edf51e20 100644
--- a/include/configs/hcu5.h
+++ b/include/configs/hcu5.h
@@ -41,6 +41,8 @@
#define CONFIG_4xx 1 /* ... PPC4xx family */
#define CONFIG_HOSTNAME hcu5
+#define CONFIG_SYS_TEXT_BASE 0xFFFB0000
+
/*
* Include common defines/options for all boards produced by Netstal Maschinen
*/
diff --git a/include/configs/hermes.h b/include/configs/hermes.h
index 0df46fa4de..0c46398ef9 100644
--- a/include/configs/hermes.h
+++ b/include/configs/hermes.h
@@ -36,6 +36,8 @@
#define CONFIG_MPC860 1 /* This is a MPC860T CPU */
#define CONFIG_HERMES 1 /* ...on a HERMES-PRO board */
+#define CONFIG_SYS_TEXT_BASE 0xFE000000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#undef CONFIG_8xx_CONS_SMC2
#undef CONFIG_8xx_CONS_NONE
diff --git a/include/configs/hmi1001.h b/include/configs/hmi1001.h
index 5d99121a39..edb9a3a4ab 100644
--- a/include/configs/hmi1001.h
+++ b/include/configs/hmi1001.h
@@ -33,6 +33,10 @@
#define CONFIG_MPC5200 1 /* (more precisely an MPC5200 CPU) */
#define CONFIG_HMI1001 1 /* HMI1001 board */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+#endif
+
#define CONFIG_SYS_MPC5XXX_CLKIN 33000000 /* ... running at 33.000000MHz */
#define BOOTFLAG_COLD 0x01 /* Normal Power-On: Boot from FLASH */
diff --git a/include/configs/hymod.h b/include/configs/hymod.h
index 6efa9d2014..406f35c771 100644
--- a/include/configs/hymod.h
+++ b/include/configs/hymod.h
@@ -37,6 +37,8 @@
#define CONFIG_HYMOD 1 /* ...on a Hymod board */
#define CONFIG_CPM2 1 /* Has a CPM2 */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_MISC_INIT_F 1 /* Use misc_init_f() */
#define CONFIG_BOARD_POSTCLK_INIT /* have board_postclk_init() function */
diff --git a/include/configs/icon.h b/include/configs/icon.h
index ad0ca5d37c..8d98d57f88 100644
--- a/include/configs/icon.h
+++ b/include/configs/icon.h
@@ -35,6 +35,9 @@
#define CONFIG_4xx 1 /* ... PPC4xx family */
#define CONFIG_440 1 /* ... PPC440 family */
#define CONFIG_440SPE 1 /* Specifc SPe support */
+
+#define CONFIG_SYS_TEXT_BASE 0xFFFA0000
+
#define CONFIG_SYS_CLK_FREQ 33333333 /* external freq to pll */
#define CONFIG_SYS_4xx_RESET_TYPE 0x2 /* use chip reset on this board */
diff --git a/include/configs/inka4x0.h b/include/configs/inka4x0.h
index 0f95445777..f77961228c 100644
--- a/include/configs/inka4x0.h
+++ b/include/configs/inka4x0.h
@@ -36,6 +36,15 @@
#define CONFIG_MPC5200 1 /* (more precisely an MPC5200 CPU) */
#define CONFIG_INKA4X0 1 /* INKA4x0 board */
+/*
+ * Valid values for CONFIG_SYS_TEXT_BASE are:
+ * 0xFFE00000 boot low
+ * 0x00100000 boot from RAM (for testing only)
+ */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFFE00000 /* Standard: boot low */
+#endif
+
#define CONFIG_SYS_MPC5XXX_CLKIN 33000000 /* ... running at 33.000000MHz */
#define BOOTFLAG_COLD 0x01 /* Normal Power-On: Boot from FLASH */
diff --git a/include/configs/intip.h b/include/configs/intip.h
index 82c828284a..56d2be2afe 100644
--- a/include/configs/intip.h
+++ b/include/configs/intip.h
@@ -45,6 +45,10 @@
#define CONFIG_440 1
#define CONFIG_4xx 1 /* ... PPC4xx family */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFFFA0000
+#endif
+
/*
* Include common defines/options for all AMCC eval boards
*/
diff --git a/include/configs/ipek01.h b/include/configs/ipek01.h
index b515aed356..05f66daf87 100644
--- a/include/configs/ipek01.h
+++ b/include/configs/ipek01.h
@@ -37,6 +37,8 @@
#define CONFIG_MPC5200_DDR 1 /* ... use DDR RAM */
#define CONFIG_IPEK01 /* Motherboard is ipek01 */
+#define CONFIG_SYS_TEXT_BASE 0xfc000000
+
#define CONFIG_SYS_MPC5XXX_CLKIN 33000000 /* ... running at 33MHz */
#define CONFIG_MISC_INIT_R
diff --git a/include/configs/jupiter.h b/include/configs/jupiter.h
index 082deed6a5..4b3b0085c9 100644
--- a/include/configs/jupiter.h
+++ b/include/configs/jupiter.h
@@ -33,6 +33,15 @@
#define CONFIG_MPC5200 1 /* especially an MPC5200 */
#define CONFIG_JUPITER 1 /* ... on Jupiter board */
+/*
+ * Valid values for CONFIG_SYS_TEXT_BASE are:
+ * 0xFFF00000 boot high (standard configuration)
+ * 0x00100000 boot from RAM (for testing only)
+ */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+#endif
+
#define CONFIG_SYS_MPC5XXX_CLKIN 33000000 /* ... running at 33.000000MHz */
#define CONFIG_BOARD_EARLY_INIT_R 1
diff --git a/include/configs/katmai.h b/include/configs/katmai.h
index e4ccd7dafe..135a4c26aa 100644
--- a/include/configs/katmai.h
+++ b/include/configs/katmai.h
@@ -41,6 +41,8 @@
#define CONFIG_SYS_CLK_FREQ 33333333 /* external freq to pll */
#define CONFIG_SYS_4xx_RESET_TYPE 0x2 /* use chip reset on this board */
+#define CONFIG_SYS_TEXT_BASE 0xFFFA0000
+
/*
* Enable this board for more than 2GB of SDRAM
*/
diff --git a/include/configs/kilauea.h b/include/configs/kilauea.h
index 612a0fe9ff..e153b3120f 100644
--- a/include/configs/kilauea.h
+++ b/include/configs/kilauea.h
@@ -39,6 +39,10 @@
#define CONFIG_405EX 1 /* Specifc 405EX support*/
#define CONFIG_SYS_CLK_FREQ 33333333 /* ext frequency to pll */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFFFA0000
+#endif
+
/*
* Include common defines/options for all AMCC eval boards
*/
diff --git a/include/configs/kmeter1.h b/include/configs/kmeter1.h
index ecb0228c70..9117842f42 100644
--- a/include/configs/kmeter1.h
+++ b/include/configs/kmeter1.h
@@ -30,6 +30,8 @@
#define CONFIG_KMETER1 1 /* KMETER1 board specific */
#define CONFIG_HOSTNAME kmeter1
+#define CONFIG_SYS_TEXT_BASE 0xF0000000
+
/* include common defines/options for all Keymile boards */
#include "keymile-common.h"
diff --git a/include/configs/kmsupx4.h b/include/configs/kmsupx4.h
index 8f1e602a2e..228bdd7cf9 100644
--- a/include/configs/kmsupx4.h
+++ b/include/configs/kmsupx4.h
@@ -32,6 +32,8 @@
#define CONFIG_KMSUPX4 1 /* ...on a kmsupx4 board */
#define CONFIG_HOSTNAME kmsupx4
+#define CONFIG_SYS_TEXT_BASE 0xf0000000
+
/* include common defines/options for all Keymile 8xx boards */
#include "km8xx.h"
diff --git a/include/configs/korat.h b/include/configs/korat.h
index 63cdd5d054..96a984d56e 100644
--- a/include/configs/korat.h
+++ b/include/configs/korat.h
@@ -38,6 +38,12 @@
#define CONFIG_4xx 1 /* ... PPC4xx family */
#define CONFIG_SYS_CLK_FREQ 33333333
+#ifdef CONFIG_KORAT_PERMANENT
+#define CONFIG_SYS_TEXT_BASE 0xFFFA0000
+#else
+#define CONFIG_SYS_TEXT_BASE 0xF7F60000
+#endif
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* Call board_early_init_f */
#define CONFIG_MISC_INIT_R 1 /* Call misc_init_r */
diff --git a/include/configs/kvme080.h b/include/configs/kvme080.h
index 7eabefa3a3..560cfb52e2 100644
--- a/include/configs/kvme080.h
+++ b/include/configs/kvme080.h
@@ -28,6 +28,8 @@
#define CONFIG_MPC8245 1
#define CONFIG_KVME080 1
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
#define CONFIG_CONS_INDEX 1
#define CONFIG_BAUDRATE 115200
diff --git a/include/configs/linkstation.h b/include/configs/linkstation.h
index 54c99ae14f..2918d790d6 100644
--- a/include/configs/linkstation.h
+++ b/include/configs/linkstation.h
@@ -20,6 +20,22 @@
#ifndef __CONFIG_H
#define __CONFIG_H
+/*
+ * Valid values for CONFIG_SYS_TEXT_BASE are:
+ *
+ * Standard configuration - all models
+ * 0xFFF00000 boot from flash
+ *
+ * Test configuration (boot from RAM using uloader.o)
+ * LinkStation HD-HLAN and KuroBox Standard
+ * 0x03F00000 boot from RAM
+ * LinkStation HD-HGLAN and KuroBox HG
+ * 0x07F00000 boot from RAM
+ */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+#endif
+
#if 0
#define DEBUG
#endif
diff --git a/include/configs/luan.h b/include/configs/luan.h
index 6b1a41f8e0..d8014047b7 100644
--- a/include/configs/luan.h
+++ b/include/configs/luan.h
@@ -37,6 +37,8 @@
#define CONFIG_440 1
#define CONFIG_SYS_CLK_FREQ 33333333 /* external freq to pll */
+#define CONFIG_SYS_TEXT_BASE 0xFFFB0000
+
/*
* Include common defines/options for all AMCC eval boards
*/
diff --git a/include/configs/lwmon.h b/include/configs/lwmon.h
index be20d72909..3b7293a7ea 100644
--- a/include/configs/lwmon.h
+++ b/include/configs/lwmon.h
@@ -39,6 +39,8 @@
#define CONFIG_MPC823 1 /* This is a MPC823E CPU */
#define CONFIG_LWMON 1 /* ...on a LWMON board */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
/* Default Ethernet MAC address */
#define CONFIG_ETHADDR 00:11:B0:00:00:00
diff --git a/include/configs/lwmon5.h b/include/configs/lwmon5.h
index b061dddf98..19d2989d4f 100644
--- a/include/configs/lwmon5.h
+++ b/include/configs/lwmon5.h
@@ -36,6 +36,11 @@
#define CONFIG_440EPX 1 /* Specific PPC440EPx */
#define CONFIG_440 1 /* ... PPC440 family */
#define CONFIG_4xx 1 /* ... PPC4xx family */
+
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFFF80000
+#endif
+
#define CONFIG_SYS_CLK_FREQ 33300000 /* external freq to pll */
#define CONFIG_BOARD_EARLY_INIT_F /* Call board_early_init_f */
diff --git a/include/configs/makalu.h b/include/configs/makalu.h
index 80163d49ee..c4853ab9c2 100644
--- a/include/configs/makalu.h
+++ b/include/configs/makalu.h
@@ -39,6 +39,8 @@
#define CONFIG_405EX 1 /* Specifc 405EX support*/
#define CONFIG_SYS_CLK_FREQ 33330000 /* ext frequency to pll */
+#define CONFIG_SYS_TEXT_BASE 0xFFFA0000
+
/*
* Include common defines/options for all AMCC eval boards
*/
diff --git a/include/configs/mcc200.h b/include/configs/mcc200.h
index 00097c99ae..72d9750528 100644
--- a/include/configs/mcc200.h
+++ b/include/configs/mcc200.h
@@ -33,6 +33,16 @@
#define CONFIG_MPC5xxx 1 /* This is an MPC5xxx CPU */
#define CONFIG_MCC200 1 /* ... on MCC200 board */
+/*
+ * Valid values for CONFIG_SYS_TEXT_BASE are:
+ * 0xFC000000 boot low (standard configuration)
+ * 0xFFF00000 boot high
+ * 0x00100000 boot from RAM (for testing only)
+ */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFC000000
+#endif
+
#define CONFIG_SYS_MPC5XXX_CLKIN 33000000 /* ... running at 33MHz */
#define CONFIG_MISC_INIT_R
diff --git a/include/configs/mcu25.h b/include/configs/mcu25.h
index 0f6d161e39..4aef6fc962 100644
--- a/include/configs/mcu25.h
+++ b/include/configs/mcu25.h
@@ -37,6 +37,8 @@
#define CONFIG_4xx 1
#define CONFIG_HOSTNAME mcu25
+#define CONFIG_SYS_TEXT_BASE 0xFFFB0000
+
/*
* Include common defines/options for all boards produced by Netstal Maschinen
*/
diff --git a/include/configs/mecp5123.h b/include/configs/mecp5123.h
index fe32bb2cb8..43c0528637 100644
--- a/include/configs/mecp5123.h
+++ b/include/configs/mecp5123.h
@@ -48,6 +48,8 @@
#define CONFIG_E300 1 /* E300 Family */
#define CONFIG_MPC512X 1 /* MPC512X family */
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
#define CONFIG_SYS_MPC512X_CLKIN 33333333 /* in Hz */
#define CONFIG_BOARD_EARLY_INIT_F /* call board_early_init_f() */
diff --git a/include/configs/mecp5200.h b/include/configs/mecp5200.h
index 5aef5b20c7..8edb84d8bc 100644
--- a/include/configs/mecp5200.h
+++ b/include/configs/mecp5200.h
@@ -45,6 +45,10 @@
#define CONFIG_MECP5200 1 /* ... on MECP5200 board */
#define CONFIG_MPC5200_DDR 1 /* ... use DDR RAM */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+#endif
+
#define CONFIG_SYS_MPC5XXX_CLKIN 33000000 /* ... running at 33.000000MHz */
#define BOOTFLAG_COLD 0x01 /* Normal Power-On: Boot from FLASH */
diff --git a/include/configs/mgcoge.h b/include/configs/mgcoge.h
index b35faae0e8..152c9a6acc 100644
--- a/include/configs/mgcoge.h
+++ b/include/configs/mgcoge.h
@@ -34,6 +34,8 @@
#define CONFIG_MGCOGE 1
#define CONFIG_HOSTNAME mgcoge
+#define CONFIG_SYS_TEXT_BASE 0xFE000000
+
#define CONFIG_CPM2 1 /* Has a CPM2 */
/* include common defines/options for all Keymile boards */
diff --git a/include/configs/mgsuvd.h b/include/configs/mgsuvd.h
index 1618f7dce1..6036da8b5e 100644
--- a/include/configs/mgsuvd.h
+++ b/include/configs/mgsuvd.h
@@ -32,6 +32,8 @@
#define CONFIG_MGSUVD 1 /* ...on a mgsuvd board */
#define CONFIG_HOSTNAME mgsuvd
+#define CONFIG_SYS_TEXT_BASE 0xf0000000
+
/* include common defines/options for all Keymile 8xx boards */
#include "km8xx.h"
diff --git a/include/configs/motionpro.h b/include/configs/motionpro.h
index 7a7d5b9b5c..af2f40aceb 100644
--- a/include/configs/motionpro.h
+++ b/include/configs/motionpro.h
@@ -37,6 +37,8 @@
#define CONFIG_HIGH_BATS 1 /* High BATs supported */
+#define CONFIG_SYS_TEXT_BASE 0xfff00000
+
/*
* BOOTP options
*/
diff --git a/include/configs/mpc5121ads.h b/include/configs/mpc5121ads.h
index 07e7747dbe..f5c2bd3a57 100644
--- a/include/configs/mpc5121ads.h
+++ b/include/configs/mpc5121ads.h
@@ -48,6 +48,8 @@
#define CONFIG_MPC512X 1 /* MPC512X family */
#define CONFIG_FSL_DIU_FB 1 /* FSL DIU */
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
/* video */
#undef CONFIG_VIDEO
diff --git a/include/configs/mpc7448hpc2.h b/include/configs/mpc7448hpc2.h
index 8068b4051a..ae5e1098f6 100644
--- a/include/configs/mpc7448hpc2.h
+++ b/include/configs/mpc7448hpc2.h
@@ -42,6 +42,8 @@
#define CONFIG_HIGH_BATS /* High BATs supported */
#define CONFIG_ALTIVEC /* undef to disable */
+#define CONFIG_SYS_TEXT_BASE 0xFF000000
+
#define CONFIG_SYS_BOARD_NAME "MPC7448 HPC II"
#define CONFIG_IDENT_STRING " Freescale MPC7448 HPC II"
diff --git a/include/configs/mpc8308_p1m.h b/include/configs/mpc8308_p1m.h
index 33d184432d..18f205a58d 100644
--- a/include/configs/mpc8308_p1m.h
+++ b/include/configs/mpc8308_p1m.h
@@ -33,6 +33,10 @@
#define CONFIG_MPC8308 1 /* MPC8308 CPU specific */
#define CONFIG_MPC8308_P1M 1 /* mpc8308_p1m board specific */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFC000000
+#endif
+
/*
* On-board devices
*
diff --git a/include/configs/muas3001.h b/include/configs/muas3001.h
index d01160da8e..e85b953755 100644
--- a/include/configs/muas3001.h
+++ b/include/configs/muas3001.h
@@ -33,6 +33,8 @@
#define CONFIG_MPC8260 1
#define CONFIG_MUAS3001 1
+#define CONFIG_SYS_TEXT_BASE 0xFF000000
+
#define CONFIG_CPM2 1 /* Has a CPM2 */
/* Do boardspecific init */
diff --git a/include/configs/mucmc52.h b/include/configs/mucmc52.h
index f87dc9c650..101788a678 100644
--- a/include/configs/mucmc52.h
+++ b/include/configs/mucmc52.h
@@ -35,6 +35,10 @@
#define CONFIG_MUCMC52 1 /* MUCMC52 board */
#define CONFIG_HOSTNAME mucmc52
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+#endif
+
#include "manroland/common.h"
#include "manroland/mpc5200-common.h"
diff --git a/include/configs/munices.h b/include/configs/munices.h
index 01756f5021..91163680e8 100644
--- a/include/configs/munices.h
+++ b/include/configs/munices.h
@@ -31,6 +31,11 @@
#define CONFIG_MPC5200 1 /* (more precisely an MPC5200 CPU) */
#define CONFIG_MPC5200_DDR 1 /* (with DDR-SDRAM) */
#define CONFIG_MUNICES 1 /* ... on MUNICes board */
+
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+#endif
+
#define CONFIG_SYS_MPC5XXX_CLKIN 33333333 /* ... running at 33.333333MHz */
#define BOOTFLAG_COLD 0x01 /* Normal Power-On: Boot from FLASH */
#define BOOTFLAG_WARM 0x02 /* Software reboot */
diff --git a/include/configs/neo.h b/include/configs/neo.h
index f8f53e8f37..1063d123d2 100644
--- a/include/configs/neo.h
+++ b/include/configs/neo.h
@@ -29,6 +29,8 @@
#define CONFIG_4xx 1 /* member of PPC4xx family */
#define CONFIG_NEO 1 /* on a Neo board */
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
/*
* Include common defines/options for all AMCC eval boards
*/
diff --git a/include/configs/o2dnt.h b/include/configs/o2dnt.h
index 9466dfa4fd..cca32e65f1 100644
--- a/include/configs/o2dnt.h
+++ b/include/configs/o2dnt.h
@@ -32,6 +32,8 @@
#define CONFIG_MPC5200
#define CONFIG_O2DNT 1 /* ... on O2DNT board */
+#define CONFIG_SYS_TEXT_BASE 0xFF000000 /* boot low for 16 MiB boards */
+
#define CONFIG_SYS_MPC5XXX_CLKIN 33000000 /* ... running at 33.000000MHz */
#define BOOTFLAG_COLD 0x01 /* Normal Power-On: Boot from FLASH */
diff --git a/include/configs/ocotea.h b/include/configs/ocotea.h
index d11d218c00..f33f0ff2c8 100644
--- a/include/configs/ocotea.h
+++ b/include/configs/ocotea.h
@@ -46,6 +46,8 @@
#define CONFIG_BOARD_EARLY_INIT_F 1 /* Call board_pre_init */
#define CONFIG_SYS_CLK_FREQ 33333333 /* external freq to pll */
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
/*
* Include common defines/options for all AMCC eval boards
*/
diff --git a/include/configs/p3mx.h b/include/configs/p3mx.h
index 17ec08fdd6..70c4b7d061 100644
--- a/include/configs/p3mx.h
+++ b/include/configs/p3mx.h
@@ -40,6 +40,8 @@
*----------------------------------------------------------------------*/
#define CONFIG_P3Mx /* used for both board versions */
+#define CONFIG_SYS_TEXT_BASE 0xfff00000
+
#if defined (CONFIG_P3M750)
#define CONFIG_750FX /* 750GL/GX/FX */
#define CONFIG_HIGH_BATS /* High BATs supported */
diff --git a/include/configs/p3p440.h b/include/configs/p3p440.h
index 6edf91ecc6..4a2e420236 100644
--- a/include/configs/p3p440.h
+++ b/include/configs/p3p440.h
@@ -39,6 +39,9 @@
#define CONFIG_4xx 1 /* ... PPC4xx family */
#define CONFIG_BOARD_EARLY_INIT_F 1 /* Call board_early_init_f */
#define CONFIG_MISC_INIT_R 1 /* Call misc_init_r */
+
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
#define CONFIG_SYS_CLK_FREQ 33333333 /* external freq to pll */
/*-----------------------------------------------------------------------
diff --git a/include/configs/pcm030.h b/include/configs/pcm030.h
index 3443e86eff..c663b544d1 100644
--- a/include/configs/pcm030.h
+++ b/include/configs/pcm030.h
@@ -41,6 +41,17 @@ High Level Configuration Options
#define CONFIG_MPC5200_DDR 1 /* (with DDR-SDRAM) */
#define CONFIG_PHYCORE_MPC5200B_TINY 1 /* phyCORE-MPC5200B -> */
/* FEC configuration and IDE */
+
+/*
+ * Valid values for CONFIG_SYS_TEXT_BASE are:
+ * 0xFFF00000 boot high (standard configuration)
+ * 0xFF000000 boot low
+ * 0x00100000 boot from RAM (for testing only)
+ */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+#endif
+
#define CONFIG_SYS_MPC5XXX_CLKIN 33333333 /* ... running at 33.333333MHz */
#define BOOTFLAG_COLD 0x01 /* Normal Power-On: Boot from FLASH */
#define BOOTFLAG_WARM 0x02 /* Software reboot */
diff --git a/include/configs/pcs440ep.h b/include/configs/pcs440ep.h
index 85152d12a3..9f048512fa 100644
--- a/include/configs/pcs440ep.h
+++ b/include/configs/pcs440ep.h
@@ -40,6 +40,9 @@
#define CONFIG_440EP 1 /* Specific PPC440EP support */
#define CONFIG_440 1 /* ... PPC440 family */
#define CONFIG_4xx 1 /* ... PPC4xx family */
+
+#define CONFIG_SYS_TEXT_BASE 0xFFFA0000
+
#define CONFIG_SYS_CLK_FREQ 33333333 /* external freq to pll */
#define CONFIG_BOARD_EARLY_INIT_F 1 /* Call board_early_init_f */
diff --git a/include/configs/pdm360ng.h b/include/configs/pdm360ng.h
index ba7f9ca759..c6d87e3cfe 100644
--- a/include/configs/pdm360ng.h
+++ b/include/configs/pdm360ng.h
@@ -49,6 +49,8 @@
#define CONFIG_MPC512X 1 /* MPC512X family */
#define CONFIG_FSL_DIU_FB 1 /* FSL DIU */
+#define CONFIG_SYS_TEXT_BASE 0xF0000000
+
/* Used for silent command in environment */
#define CONFIG_SYS_DEVICE_NULLDEV
#define CONFIG_SILENT_CONSOLE
diff --git a/include/configs/pf5200.h b/include/configs/pf5200.h
index 8c8e0ab5b2..ad983e478b 100644
--- a/include/configs/pf5200.h
+++ b/include/configs/pf5200.h
@@ -44,6 +44,10 @@
#define CONFIG_PF5200 1 /* ... on PF5200 board */
#define CONFIG_MPC5200_DDR 1 /* ... use DDR RAM */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+#endif
+
#define CONFIG_SYS_MPC5XXX_CLKIN 33000000 /* ... running at 33.000000MHz */
#define BOOTFLAG_COLD 0x01 /* Normal Power-On: Boot from FLASH */
diff --git a/include/configs/ppmc7xx.h b/include/configs/ppmc7xx.h
index 8e807f59df..09bf4e48ff 100644
--- a/include/configs/ppmc7xx.h
+++ b/include/configs/ppmc7xx.h
@@ -49,6 +49,7 @@
#undef CONFIG_ALTIVEC
#define CONFIG_BUS_CLK 66000000
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
/*
* Monitor configuration
diff --git a/include/configs/ppmc8260.h b/include/configs/ppmc8260.h
index 7db749896b..8ceb9bf38b 100644
--- a/include/configs/ppmc8260.h
+++ b/include/configs/ppmc8260.h
@@ -34,6 +34,8 @@
#ifndef __CONFIG_H
#define __CONFIG_H
+#define CONFIG_SYS_TEXT_BASE 0xfe000000
+
/*****************************************************************************
*
* These settings must match the way _your_ board is set up
diff --git a/include/configs/quad100hd.h b/include/configs/quad100hd.h
index 83d1733f7f..f847f9cb33 100644
--- a/include/configs/quad100hd.h
+++ b/include/configs/quad100hd.h
@@ -34,6 +34,8 @@
#define CONFIG_4xx 1 /* ... PPC4xx family */
#define CONFIG_405EP 1 /* Specifc 405EP support*/
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
#define CONFIG_SYS_CLK_FREQ 33333333 /* external frequency to pll */
#define CONFIG_BOARD_EARLY_INIT_F 1 /* Call board_early_init_f */
diff --git a/include/configs/quantum.h b/include/configs/quantum.h
index e440e93a5a..a38145b421 100644
--- a/include/configs/quantum.h
+++ b/include/configs/quantum.h
@@ -39,6 +39,8 @@
#define CONFIG_RPXLITE 1 /* QUANTUM is the RPXlite clone */
#define CONFIG_RMU 1 /* The QUNATUM is based on our RMU */
+#define CONFIG_SYS_TEXT_BASE 0xfff00000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#undef CONFIG_8xx_CONS_SMC2
#undef CONFIG_8xx_CONS_NONE
diff --git a/include/configs/redwood.h b/include/configs/redwood.h
index 3c1e882b06..a7d5dac9af 100644
--- a/include/configs/redwood.h
+++ b/include/configs/redwood.h
@@ -33,6 +33,8 @@
#define CONFIG_460SX 1 /* ... PPC460 family */
#define CONFIG_BOARD_EARLY_INIT_F 1 /* Call board_pre_init */
+#define CONFIG_SYS_TEXT_BASE 0xfffb0000
+
/*-----------------------------------------------------------------------
* Include common defines/options for all AMCC boards
*----------------------------------------------------------------------*/
diff --git a/include/configs/rmu.h b/include/configs/rmu.h
index fefb17fde7..66f46b9460 100644
--- a/include/configs/rmu.h
+++ b/include/configs/rmu.h
@@ -39,6 +39,8 @@
#define CONFIG_RPXLITE 1 /* RMU is the RPXlite clone */
#define CONFIG_RMU 1
+#define CONFIG_SYS_TEXT_BASE 0xfff00000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#undef CONFIG_8xx_CONS_SMC2
#undef CONFIG_8xx_CONS_NONE
diff --git a/include/configs/rsdproto.h b/include/configs/rsdproto.h
index 8207844960..6b41b12ddb 100644
--- a/include/configs/rsdproto.h
+++ b/include/configs/rsdproto.h
@@ -39,6 +39,8 @@
#define CONFIG_RSD_PROTO 1 /* on a R&S Protocol Board */
#define CONFIG_CPM2 1 /* Has a CPM2 */
+#define CONFIG_SYS_TEXT_BASE 0xff000000
+
#define CONFIG_MISC_INIT_F 1 /* Use misc_init_f() */
/*
diff --git a/include/configs/sacsng.h b/include/configs/sacsng.h
index 9b39e1594b..f6049c4a39 100644
--- a/include/configs/sacsng.h
+++ b/include/configs/sacsng.h
@@ -35,6 +35,8 @@
#ifndef __CONFIG_H
#define __CONFIG_H
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#undef DEBUG_BOOTP_EXT /* Debug received vendor fields */
#undef CONFIG_LOGBUFFER /* External logbuffer support */
diff --git a/include/configs/sbc405.h b/include/configs/sbc405.h
index 187002c107..346c8479e9 100644
--- a/include/configs/sbc405.h
+++ b/include/configs/sbc405.h
@@ -36,6 +36,8 @@
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_SBC405 1 /* ...on a WR SBC405 board */
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f() */
#define CONFIG_MISC_INIT_R 1 /* call misc_init_r() */
diff --git a/include/configs/sbc8240.h b/include/configs/sbc8240.h
index b00667f6f3..ea9304311b 100644
--- a/include/configs/sbc8240.h
+++ b/include/configs/sbc8240.h
@@ -43,6 +43,8 @@
#define CONFIG_MPC8240 1
#define CONFIG_WRSBC8240 1
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
#define CONFIG_CONS_INDEX 1
#define CONFIG_BAUDRATE 9600
#define CONFIG_SYS_BAUDRATE_TABLE { 9600, 19200, 38400, 57600, 115200 }
diff --git a/include/configs/sbc8260.h b/include/configs/sbc8260.h
index 16dc4bb735..bfa0389fda 100644
--- a/include/configs/sbc8260.h
+++ b/include/configs/sbc8260.h
@@ -35,6 +35,8 @@
#ifndef __CONFIG_H
#define __CONFIG_H
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
/* Enable debug prints */
#undef DEBUG_BOOTP_EXT /* Debug received vendor fields */
diff --git a/include/configs/sbc8349.h b/include/configs/sbc8349.h
index 5ef32d8178..eecb9e61d5 100644
--- a/include/configs/sbc8349.h
+++ b/include/configs/sbc8349.h
@@ -32,17 +32,6 @@
#define __CONFIG_H
/*
- * Top level Makefile configuration choices
- */
-#ifdef CONFIG_66
-#define PCI_66M
-#endif
-
-#ifdef CONFIG_33
-#define PCI_33M
-#endif
-
-/*
* High Level Configuration Options
*/
#define CONFIG_E300 1 /* E300 Family */
@@ -51,6 +40,8 @@
#define CONFIG_MPC8349 1 /* MPC8349 specific */
#define CONFIG_SBC8349 1 /* WRS SBC8349 board specific */
+#define CONFIG_SYS_TEXT_BASE 0xFF800000
+
/* Don't enable PCI2 on sbc834x - it doesn't exist physically. */
#undef CONFIG_MPC83XX_PCI2 /* support for 2nd PCI controller */
@@ -60,14 +51,14 @@
* physically empty. The board will automatically (i.e w/o jumpers)
* clock down to 33MHz if you insert a 33MHz PCI card.
*/
-#ifdef PCI_33M
+#ifdef CONFIG_PCI_33M
#define CONFIG_83XX_CLKIN 33000000 /* in Hz */
#else /* 66M */
#define CONFIG_83XX_CLKIN 66000000 /* in Hz */
#endif
#ifndef CONFIG_SYS_CLK_FREQ
-#ifdef PCI_33M
+#ifdef CONFIG_PCI_33M
#define CONFIG_SYS_CLK_FREQ 33000000
#define HRCWL_CSB_TO_CLKIN HRCWL_CSB_TO_CLKIN_8X1
#else /* 66M */
diff --git a/include/configs/sbc8548.h b/include/configs/sbc8548.h
index 3624d37905..0cfd058a61 100644
--- a/include/configs/sbc8548.h
+++ b/include/configs/sbc8548.h
@@ -57,6 +57,10 @@
#define CONFIG_MPC8548 1 /* MPC8548 specific */
#define CONFIG_SBC8548 1 /* SBC8548 board specific */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xfffa0000
+#endif
+
#undef CONFIG_RIO
#ifdef CONFIG_PCI
diff --git a/include/configs/sbc8560.h b/include/configs/sbc8560.h
index 0d0fbdd607..a75e4be212 100644
--- a/include/configs/sbc8560.h
+++ b/include/configs/sbc8560.h
@@ -46,6 +46,8 @@
#define CONFIG_MPC85xx 1 /* MPC8540/MPC8560 */
#define CONFIG_MPC85xx_REV1 1 /* MPC85xx Rev 1.0 chip */
+#define CONFIG_SYS_TEXT_BASE 0xfffc0000
+
#define CONFIG_CPM2 1 /* has CPM2 */
#define CONFIG_SBC8560 1 /* configuration for SBC8560 board */
diff --git a/include/configs/sbc8641d.h b/include/configs/sbc8641d.h
index 32c8c1830d..bc9a56a82a 100644
--- a/include/configs/sbc8641d.h
+++ b/include/configs/sbc8641d.h
@@ -43,6 +43,8 @@
#define CONFIG_MP 1 /* support multiple processors */
#define CONFIG_LINUX_RESET_VEC 0x100 /* Reset vector used by Linux */
+#define CONFIG_SYS_TEXT_BASE 0xfff00000
+
#ifdef RUN_DIAG
#define CONFIG_SYS_DIAG_ADDR 0xff800000
#endif
diff --git a/include/configs/sc3.h b/include/configs/sc3.h
index 4a854a979a..e71f1ace58 100644
--- a/include/configs/sc3.h
+++ b/include/configs/sc3.h
@@ -62,6 +62,8 @@
#define CONFIG_4xx 1
#define CONFIG_405GP 1
+#define CONFIG_SYS_TEXT_BASE 0xFFFA0000
+
#define CONFIG_BOARD_EARLY_INIT_F 1
#define CONFIG_MISC_INIT_R 1 /* Call misc_init_r() */
diff --git a/include/configs/sequoia.h b/include/configs/sequoia.h
index cfda9576fe..412deeadb6 100644
--- a/include/configs/sequoia.h
+++ b/include/configs/sequoia.h
@@ -42,6 +42,10 @@
#define CONFIG_440 1 /* ... PPC440 family */
#define CONFIG_4xx 1 /* ... PPC4xx family */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFFF80000
+#endif
+
/*
* Include common defines/options for all AMCC eval boards
*/
diff --git a/include/configs/socrates.h b/include/configs/socrates.h
index 8cf3974fd2..c2f00f2ddd 100644
--- a/include/configs/socrates.h
+++ b/include/configs/socrates.h
@@ -45,6 +45,8 @@
#define CONFIG_MPC8544 1
#define CONFIG_SOCRATES 1
+#define CONFIG_SYS_TEXT_BASE 0xfff80000
+
#define CONFIG_PCI
#define CONFIG_TSEC_ENET /* tsec ethernet support */
diff --git a/include/configs/sorcery.h b/include/configs/sorcery.h
index 6792ba45d9..d22d1c8f0a 100644
--- a/include/configs/sorcery.h
+++ b/include/configs/sorcery.h
@@ -31,6 +31,8 @@
#define CONFIG_MPC8220 1
#define CONFIG_SORCERY 1 /* Sorcery board */
+#define CONFIG_SYS_TEXT_BASE 0xfff00000
+
#define CONFIG_HIGH_BATS 1 /* High BATs supported */
/* Input clock running at 60Mhz, read Hid1 for the CPU multiplier to
diff --git a/include/configs/spc1920.h b/include/configs/spc1920.h
index f81165bb79..75ed618aaa 100644
--- a/include/configs/spc1920.h
+++ b/include/configs/spc1920.h
@@ -26,6 +26,8 @@
#define CONFIG_SPC1920 1 /* SPC1920 board */
#define CONFIG_MPC885 1 /* MPC885 CPU */
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
#define CONFIG_8xx_CONS_SMC1 /* Console is on SMC1 */
#undef CONFIG_8xx_CONS_SMC2
#undef CONFIG_8xx_CONS_NONE
diff --git a/include/configs/stxgp3.h b/include/configs/stxgp3.h
index abc48b32b3..5e71d74359 100644
--- a/include/configs/stxgp3.h
+++ b/include/configs/stxgp3.h
@@ -43,6 +43,8 @@
#define CONFIG_STXGP3 1 /* Silicon Tx GPPP board specific*/
#define CONFIG_MPC8560 1
+#define CONFIG_SYS_TEXT_BASE 0xfff80000
+
#undef CONFIG_PCI /* pci ethernet support */
#define CONFIG_TSEC_ENET /* tsec ethernet support*/
#undef CONFIG_ETHER_ON_FCC /* cpm FCC ethernet support */
diff --git a/include/configs/stxssa.h b/include/configs/stxssa.h
index 2a4758eeca..e4493a99d8 100644
--- a/include/configs/stxssa.h
+++ b/include/configs/stxssa.h
@@ -43,6 +43,8 @@
#define CONFIG_STXSSA 1 /* Silicon Tx GPPP SSA board specific*/
#define CONFIG_MPC8560 1
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
#define CONFIG_PCI /* PCI ethernet support */
#define CONFIG_TSEC_ENET /* tsec ethernet support*/
#undef CONFIG_ETHER_ON_FCC /* cpm FCC ethernet support */
diff --git a/include/configs/stxxtc.h b/include/configs/stxxtc.h
index 585436604f..426aa496fd 100644
--- a/include/configs/stxxtc.h
+++ b/include/configs/stxxtc.h
@@ -38,6 +38,8 @@
#define CONFIG_MPC875 1 /* This is a MPC875 CPU */
#define CONFIG_STXXTC 1 /* ...on a STx XTc board */
+#define CONFIG_SYS_TEXT_BASE 0x40F00000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#undef CONFIG_8xx_CONS_SMC2
#undef CONFIG_8xx_CONS_NONE
diff --git a/include/configs/svm_sc8xx.h b/include/configs/svm_sc8xx.h
index 425f472a7f..d7f4d80def 100644
--- a/include/configs/svm_sc8xx.h
+++ b/include/configs/svm_sc8xx.h
@@ -31,6 +31,8 @@
#ifndef __CONFIG_H
#define __CONFIG_H
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
/* Custom configuration */
/* SC823,SC850,SC860SAR, FEL8xx-AT(823/850/860) */
/* SC85T,SC860T, FEL8xx-AT(855T/860T) */
diff --git a/include/configs/t3corp.h b/include/configs/t3corp.h
index 39ca7930ba..d00e64eff2 100644
--- a/include/configs/t3corp.h
+++ b/include/configs/t3corp.h
@@ -31,6 +31,10 @@
#define CONFIG_440 1
#define CONFIG_4xx 1 /* ... PPC4xx family */
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFFFA0000
+#endif
+
#define CONFIG_HOSTNAME t3corp
/*
diff --git a/include/configs/taihu.h b/include/configs/taihu.h
index 7e660eea02..6e9dbc5759 100644
--- a/include/configs/taihu.h
+++ b/include/configs/taihu.h
@@ -32,6 +32,8 @@
#define CONFIG_4xx 1 /* member of PPC4xx family */
#define CONFIG_TAIHU 1 /* on a taihu board */
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
/*
* Include common defines/options for all AMCC eval boards
*/
diff --git a/include/configs/taishan.h b/include/configs/taishan.h
index faf9e20bd8..12f35ae1f4 100644
--- a/include/configs/taishan.h
+++ b/include/configs/taishan.h
@@ -34,6 +34,8 @@
#define CONFIG_4xx 1 /* ... PPC4xx family */
#define CONFIG_SYS_CLK_FREQ 33333333 /* external freq to pll */
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
/*
* Include common defines/options for all AMCC eval boards
*/
diff --git a/include/configs/uc100.h b/include/configs/uc100.h
index 23f4c825b7..f1c09f36bf 100644
--- a/include/configs/uc100.h
+++ b/include/configs/uc100.h
@@ -40,6 +40,8 @@
#define CONFIG_UC100 1 /* ...on a UC100 module */
+#define CONFIG_SYS_TEXT_BASE 0x40700000
+
#define MPC8XX_FACT 4 /* Multiply by 4 */
#define MPC8XX_XIN 25000000 /* 25.0 MHz in */
#define CONFIG_8xx_GCLK_FREQ (MPC8XX_FACT * MPC8XX_XIN)
diff --git a/include/configs/uc101.h b/include/configs/uc101.h
index 19722615a6..483534c41c 100644
--- a/include/configs/uc101.h
+++ b/include/configs/uc101.h
@@ -32,6 +32,10 @@
#define CONFIG_UC101 1 /* UC101 board */
#define CONFIG_HOSTNAME uc101
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+#endif
+
#include "manroland/common.h"
#include "manroland/mpc5200-common.h"
diff --git a/include/configs/utx8245.h b/include/configs/utx8245.h
index 6a0c68de4c..cc6a6c9bfa 100644
--- a/include/configs/utx8245.h
+++ b/include/configs/utx8245.h
@@ -49,6 +49,9 @@
#define CONFIG_MPC824X 1
#define CONFIG_MPC8245 1
#define CONFIG_UTX8245 1
+
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
#define DEBUG 1
#define CONFIG_IDENT_STRING " [UTX5] "
diff --git a/include/configs/v37.h b/include/configs/v37.h
index 7f1670eafe..ab9b22d448 100644
--- a/include/configs/v37.h
+++ b/include/configs/v37.h
@@ -36,6 +36,8 @@
#define CONFIG_MPC823 1 /* This is a MPC823 CPU */
#define CONFIG_V37 1 /* ...on a Marel V37 board */
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_LCD
#define CONFIG_SHARP_LQ084V1DG21
#undef CONFIG_LCD_LOGO
diff --git a/include/configs/v38b.h b/include/configs/v38b.h
index e2db0b046a..26ebabae9a 100644
--- a/include/configs/v38b.h
+++ b/include/configs/v38b.h
@@ -29,6 +29,9 @@
#define CONFIG_MPC5xxx 1 /* This is an MPC5xxx CPU */
#define CONFIG_MPC5200 1 /* This is an MPC5200 CPU */
#define CONFIG_V38B 1 /* ...on V38B board */
+
+#define CONFIG_SYS_TEXT_BASE 0xFF000000
+
#define CONFIG_SYS_MPC5XXX_CLKIN 33000000 /* ...running at 33.000000MHz */
#define CONFIG_RTC_PCF8563 1 /* has PCF8563 RTC */
diff --git a/include/configs/ve8313.h b/include/configs/ve8313.h
index 016143c45c..d8541803f8 100644
--- a/include/configs/ve8313.h
+++ b/include/configs/ve8313.h
@@ -38,6 +38,10 @@
#define CONFIG_MPC8313 1
#define CONFIG_VE8313 1
+#ifndef CONFIG_SYS_TEXT_BASE
+#define CONFIG_SYS_TEXT_BASE 0xfe000000
+#endif
+
#define CONFIG_PCI 1
#define CONFIG_FSL_ELBC 1
diff --git a/include/configs/virtlab2.h b/include/configs/virtlab2.h
index 7046e6739d..619c430869 100644
--- a/include/configs/virtlab2.h
+++ b/include/configs/virtlab2.h
@@ -37,6 +37,8 @@
#define CONFIG_VIRTLAB2 1 /* ...on a virtlab2 module */
#define CONFIG_TQM8xxL 1
+#define CONFIG_SYS_TEXT_BASE 0x40000000
+
#define CONFIG_8xx_CONS_SMC1 1 /* Console is on SMC1 */
#define CONFIG_SYS_SMC_RXBUFLEN 128
#define CONFIG_SYS_MAXIDLE 10
diff --git a/include/configs/vme8349.h b/include/configs/vme8349.h
index aefe0e5dbc..ab46ff884a 100644
--- a/include/configs/vme8349.h
+++ b/include/configs/vme8349.h
@@ -2,7 +2,7 @@
* esd vme8349 U-Boot configuration file
* Copyright (c) 2008, 2009 esd gmbh Hannover Germany
*
- * (C) Copyright 2006
+ * (C) Copyright 2006-2010
* Wolfgang Denk, DENX Software Engineering, wd@denx.de.
*
* reinhard.arlt@esd-electronics.de
@@ -37,7 +37,7 @@
/*
* Top level Makefile configuration choices
*/
-#ifdef CONFIG_caddy2
+#ifdef CONFIG_CADDY2
#define VME_CADDY2
#endif
@@ -50,21 +50,23 @@
#define CONFIG_MPC8349 1 /* MPC8349 specific */
#define CONFIG_VME8349 1 /* ESD VME8349 board specific */
+#define CONFIG_SYS_TEXT_BASE 0xFFF00000
+
#define CONFIG_MISC_INIT_R
#define CONFIG_PCI
/* Don't enable PCI2 on vme834x - it doesn't exist physically. */
#undef CONFIG_MPC83XX_PCI2 /* support for 2nd PCI controller */
-#define PCI_66M
-#ifdef PCI_66M
+#define CONFIG_PCI_66M
+#ifdef CONFIG_PCI_66M
#define CONFIG_83XX_CLKIN 66000000 /* in Hz */
#else
#define CONFIG_83XX_CLKIN 33000000 /* in Hz */
#endif
#ifndef CONFIG_SYS_CLK_FREQ
-#ifdef PCI_66M
+#ifdef CONFIG_PCI_66M
#define CONFIG_SYS_CLK_FREQ 66000000
#define HRCWL_CSB_TO_CLKIN HRCWL_CSB_TO_CLKIN_4X1
#else
diff --git a/include/configs/walnut.h b/include/configs/walnut.h
index 3be489da5f..72ac4e33c2 100644
--- a/include/configs/walnut.h
+++ b/include/configs/walnut.h
@@ -36,7 +36,9 @@
#define CONFIG_405GP 1 /* This is a PPC405 CPU */
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_WALNUT 1 /* ...on a WALNUT board */
- /* ...and on a SYCAMORE board */
+ /* ...or on a SYCAMORE board */
+
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
/*
* Include common defines/options for all AMCC eval boards
diff --git a/include/configs/yosemite.h b/include/configs/yosemite.h
index ed0560ad97..0d450f50d4 100644
--- a/include/configs/yosemite.h
+++ b/include/configs/yosemite.h
@@ -42,6 +42,8 @@
#define CONFIG_4xx 1 /* ... PPC4xx family */
#define CONFIG_SYS_CLK_FREQ 66666666 /* external freq to pll */
+#define CONFIG_SYS_TEXT_BASE 0xFFF80000
+
/*
* Include common defines/options for all AMCC eval boards
*/
diff --git a/include/configs/yucca.h b/include/configs/yucca.h
index 4e64eec592..8d5d45fbc8 100644
--- a/include/configs/yucca.h
+++ b/include/configs/yucca.h
@@ -45,6 +45,8 @@
#define EXTCLK_50 50000000
#define EXTCLK_83 83333333
+#define CONFIG_SYS_TEXT_BASE 0xfffb0000
+
/*
* Include common defines/options for all AMCC eval boards
*/
diff --git a/include/configs/zeus.h b/include/configs/zeus.h
index 06d4526b07..6136af1fb2 100644
--- a/include/configs/zeus.h
+++ b/include/configs/zeus.h
@@ -34,6 +34,8 @@
#define CONFIG_4xx 1 /* ... PPC4xx family */
#define CONFIG_405EP 1 /* Specifc 405EP support*/
+#define CONFIG_SYS_TEXT_BASE 0xFFFC0000
+
#define CONFIG_SYS_CLK_FREQ 33000000 /* external frequency to pll */
#define CONFIG_BOARD_EARLY_INIT_F 1 /* Call board_early_init_f */
OpenPOWER on IntegriCloud