Update make target for ARM supported boards.
authorWolfgang Denk <wd@pollux.denx.de>
Thu, 6 Oct 2005 15:08:18 +0000 (17:08 +0200)
committerWolfgang Denk <wd@pollux.denx.de>
Thu, 6 Oct 2005 15:08:18 +0000 (17:08 +0200)
Use lowlevel_init() instead of platformsetup() [rename].
Patch by Peter Pearse, 06 Oct 2005

42 files changed:
CHANGELOG
MAINTAINERS
MAKEALL
Makefile
board/integratorap/Makefile
board/integratorap/integratorap.c
board/integratorap/lowlevel_init.S [moved from board/integratorap/platform.S with 98% similarity]
board/integratorap/split_by_variant.sh [new file with mode: 0644]
board/integratorap/u-boot.lds.S [moved from board/integratorap/u-boot.lds with 89% similarity]
board/integratorcp/Makefile
board/integratorcp/lowlevel_init.S [moved from board/integratorcp/platform.S with 98% similarity]
board/integratorcp/split_by_variant.sh [new file with mode: 0644]
board/integratorcp/u-boot.lds.S [moved from board/integratorcp/u-boot.lds with 89% similarity]
board/ns9750dev/Makefile
board/ns9750dev/lowlevel_init.S [moved from board/ns9750dev/platform.S with 99% similarity]
board/omap1510inn/Makefile
board/omap1510inn/lowlevel_init.S [moved from board/omap1510inn/platform.S with 99% similarity]
board/omap1610inn/Makefile
board/omap1610inn/lowlevel_init.S [moved from board/omap1610inn/platform.S with 99% similarity]
board/omap2420h4/Makefile
board/omap2420h4/lowlevel_init.S [moved from board/omap2420h4/platform.S with 99% similarity]
board/omap5912osk/Makefile
board/omap5912osk/lowlevel_init.S [moved from board/omap5912osk/platform.S with 99% similarity]
board/omap730p2/Makefile
board/omap730p2/lowlevel_init.S [moved from board/omap730p2/platform.S with 99% similarity]
board/sx1/Makefile
board/sx1/lowlevel_init.S [moved from board/sx1/platform.S with 99% similarity]
board/versatile/Makefile
board/versatile/lowlevel_init.S [moved from board/versatile/platform.S with 91% similarity]
board/versatile/split_by_variant.sh [new file with mode: 0644]
board/voiceblue/setup.S
cpu/arm1136/interrupts.c
cpu/arm1136/start.S
cpu/arm720t/cpu.c
cpu/arm720t/interrupts.c
cpu/arm720t/start.S
cpu/arm920t/start.S
cpu/arm925t/start.S
cpu/arm926ejs/start.S
cpu/arm946es/start.S
doc/README-integrator
include/asm-arm/arch-arm720t/hardware.h

index 802f5d3..ce0a51f 100644 (file)
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -2,6 +2,10 @@
 Changes for U-Boot 1.1.4:
 ======================================================================
 
+* Update make target for ARM supported boards.
+  Use lowlevel_init() instead of platformsetup() [rename].
+  Patch by Peter Pearse, 06 Oct 2005
+
 * Fix booting from serial dataflash on AT91RM9200
   Patch by Peter Menzebach, 29 Aug 2005
 
index d251cd8..a9d433d 100644 (file)
@@ -249,11 +249,13 @@ Frank Panno <fpanno@delphintech.com>
        ep8260                  MPC8260
 
 Peter Pearse <peter.pearse@arm.com>
-
-       Integrator/AP           CM 926EJ-S, CM7x0T, CM9x0T
-       Integrator/CP           CM 926EJ-S  CM920T, CM940T, CM922T-XA10
-       Versatile/AB            ARM926EJ-S
-       Versatile/PB            ARM926EJ-S
+       integratorcp            All current ARM supplied &
+                               supported core modules
+                               - see http://www.arm.com
+                               /products/DevTools
+                               /Hardware_Platforms.html
+       versatile               ARM926EJ-S
+       versatile               ARM926EJ-S
 
 Denis Peter <d.peter@mpl.ch>
 
diff --git a/MAKEALL b/MAKEALL
index 7235b70..0472cfb 100755 (executable)
--- a/MAKEALL
+++ b/MAKEALL
@@ -162,7 +162,7 @@ LIST_SA="assabet dnp1110 gcplus lart shannon"
 
 LIST_ARM7="    \
        armadillo       B2              ep7312          evb4510         \
-       impa7           integratorap_CM720T     integratorap_CM7TDMI    \
+       impa7           integratorap    ap7             ap720t          \
        modnet50                                                        \
 "
 
@@ -171,32 +171,28 @@ LIST_ARM7="       \
 #########################################################################
 
 LIST_ARM9="    \
-       at91rm9200dk    cmc_pu2         csb637                          \
-       integratorap_CM920T             integratorap_CM920T_ETM         \
-       integratorap_CM922T_XA10        integratorap_CM926EJ_S          \
-       integratorap_CM940T             integratorap_CM946E_S           \
-       integratorap_CM966E_S           integratorcp_CM920T             \
-       integratorcp_CM920T_ETM         integratorcp_CM922T_XA10        \
-       integratorcp_CM926EJ_S          integratorcp_CM940T             \
-       integratorcp_CM946E_S           integratorcp_CM966E_S           \
-       kb9202          lpd7a400        mp2usb          mx1ads          \
-       mx1fs2          omap1510inn     omap1610h2      omap1610inn     \
-       omap730p2       scb9328         smdk2400        smdk2410        \
-       trab            VCMA9           versatile       voiceblue       \
+       at91rm9200dk    cmc_pu2                                         \
+       ap920t          ap922_XA10      ap926ejs        ap946es         \
+       ap966           cp920t          cp922_XA10      cp926ejs        \
+       cp946es         cp966           lpd7a400        mp2usb          \
+       mx1ads          mx1fs2          omap1510inn     omap1610h2      \
+       omap1610inn     omap730p2       scb9328         smdk2400        \
+       smdk2410        trab            VCMA9           versatile       \
+       versatileab     versatilepb     voiceblue
 "
 
 #########################################################################
 ## ARM10 Systems
 #########################################################################
 LIST_ARM10="   \
-       integratorcp_CM10220E           integratorcp_CM1026EJ_S         \
+       integratorcp    cp1026                                          \
 "
 
 #########################################################################
 ## ARM11 Systems
 #########################################################################
 LIST_ARM11="   \
-       integratorcp_CM1136JF_S         omap2420h4                      \
+       cp1136          omap2420h4                                      \
 "
 
 #########################################################################
index c41e8f5..023bcb5 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1396,178 +1396,34 @@ csb637_config  :       unconfig
 mp2usb_config  :       unconfig
        @./mkconfig $(@:_config=) arm arm920t mp2usb NULL at91rm9200
 
-########################################################################
-## ARM Integrator boards
-## There are two variants /AP && /CP
-## - many different core modules (CMs) can be used
-## - some share characteristics
-## Those without specific cpu support can still use U-Boot
-## provided the ARM boot monitor (or similar) runs before U-Boot
-## to set up the platform e.g. map writeable memory to 0x00000000
-## setup MMU, setup caches etc.
-## Ported cores are:-
-##     ARM926EJ-S
-##     ARM946E-S
-##
-########################################################################
-xtract_int_board = $(subst _$(subst integrator$1_,,$(subst _config,,$2)),,$(subst _config,,$2))
-xtract_int_cm    = $(subst integrator$1_,,$(subst _config,,$2))
-#########################################################################
-## Integrator/AP
-#########################################################################
-integratorap_config    :       unconfig
-       @echo -n "/* Integrator configuration implied " >  tmp.fil;     \
-        echo    " by Makefile target   */"             >> tmp.fil;     \
-        echo                                           >> tmp.fil
-       @echo -n "#define CONFIG_INTEGRATOR     1"      >> tmp.fil;     \
-       echo     "      /* Integrator board     */"     >> tmp.fil;     \
-       echo  -n "#define CONFIG_ARCH_INTEGRATOR"       >> tmp.fil;     \
-       echo     "      1       /* Integrator/AP */"    >> tmp.fil;     \
-       echo "/* Core module not defined        */"     >> tmp.fil;     \
-       echo -n "#define CONFIG_ARM_INTCM       1"      >> tmp.fil;     \
-       echo -n "       /* Integrator core module "     >> tmp.fil;     \
-       echo    "with unknown core      */"             >> tmp.fil;     \
-       cpu=arm_intcm;                                                  \
-       mv tmp.fil ./include/config.h;                                  \
-       ubootlds=board/integratorap/u-boot.lds;                         \
-       sed -e 's/cpu\/.*\/st/cpu\/'$$cpu'\/st/'                        \
-                                          $$ubootlds > $$ubootlds.tmp; \
-       mv -f $$ubootlds.tmp $$ubootlds;                                \
-       ./mkconfig -a integratorap arm arm_intcm integratorap;
-
-integratorap_CM720T_config             integratorap_CM7TDMI_config     \
-integratorap_CM920T_config             integratorap_CM920T_ETM_config  \
-integratorap_CM922T_XA10_config                integratorap_CM926EJ_S_config   \
-integratorap_CM940T_config             integratorap_CM946E_S_config    \
-integratorap_CM966E_S_config           integratorap_CM10200E_config    \
-integratorap_CM10220E_config           integratorap_CM1026EJ_S_config  \
-integratorap_CM1136JF_S_config :       unconfig
-       @echo -n "/* Integrator configuration implied " >  tmp.fil;     \
-        echo    " by Makefile target   */"             >> tmp.fil;     \
-        echo                                           >> tmp.fil
-       @echo -n "#define CONFIG_INTEGRATOR     1"      >>  tmp.fil;    \
-       echo     "      /* Integrator board     */"     >> tmp.fil;     \
-       echo  -n "#define CONFIG_ARCH_INTEGRATOR"       >> tmp.fil;     \
-       echo     "      1       /* Integrator/AP */"    >> tmp.fil;     \
-       cm=$(call xtract_int_cm,ap,$@);                                 \
-       echo  -n "#define CONFIG_$$cm           "       >> tmp.fil;     \
-       echo     "      /* core module */"              >> tmp.fil;     \
-       case $$cm in                                                    \
-       CM920T)                                                         \
-                       echo -n "#define CONFIG_ARM920" >> tmp.fil;     \
-                       echo -n "T      1       /* CPU" >> tmp.fil;     \
-                       echo -n " core is ARM920T"      >> tmp.fil;     \
-                       echo    "       */"             >> tmp.fil;     \
-                       cpu=arm920t;;                                   \
-       CM926EJ_S)      echo -n "#define CONFIG_ARM926" >> tmp.fil;     \
-                       echo -n "EJ_S   1       /* CPU" >> tmp.fil;     \
-                       echo -n " core is ARM926EJ-S"   >> tmp.fil;     \
-                       echo    "       */"             >> tmp.fil;     \
-                       cpu=arm926ejs;;                                 \
-       CM946E_S)       echo -n "#define CONFIG_ARM946" >> tmp.fil;     \
-                       echo -n "E_S    1       /* CPU" >> tmp.fil;     \
-                       echo -n " core is ARM946E-S"    >> tmp.fil;     \
-                       echo    "       */"             >> tmp.fil;     \
-                       cpu=arm946es;;                                  \
-       *)              echo -n "#define CONFIG_ARM_IN" >> tmp.fil;     \
-                       echo -n "TCM    1       /* Int" >> tmp.fil;     \
-                       echo -n "egrator core module w" >> tmp.fil;     \
-                       echo -n "ith unported core"     >> tmp.fil;     \
-                       echo    "       */"             >> tmp.fil;     \
-                       cpu=arm_intcm;;                                 \
-       esac;                                                           \
-       mv tmp.fil ./include/config.h;                                  \
-       ubootlds=board/$(call xtract_int_board,ap,$@)/u-boot.lds;       \
-       sed -e 's/cpu\/.*\/st/cpu\/'$$cpu'\/st/'                        \
-                                          $$ubootlds > $$ubootlds.tmp; \
-       mv -f $$ubootlds.tmp $$ubootlds;                                \
-       ./mkconfig -a $(call xtract_int_board,ap,$@) arm $$cpu          \
-                     $(call xtract_int_board,ap,$@);
 
-#########################################################################
-## Integrator/CP
-#########################################################################
-integratorcp_config    :       unconfig
-       @echo -n "/* Integrator configuration implied " >  tmp.fil;     \
-        echo    " by Makefile target   */"             >> tmp.fil;     \
-        echo                                           >> tmp.fil
-       @echo -n "#define CONFIG_INTEGRATOR     1"      >> tmp.fil;     \
-       echo     "      /* Integrator board     */"     >> tmp.fil;     \
-       echo  -n "#define CONFIG_ARCH_CINTEGRATOR"      >> tmp.fil;     \
-       echo     "      1       /* Integrator/CP */"    >> tmp.fil;     \
-       echo     "/* Core module not defined    */"     >> tmp.fil;     \
-       echo -n "#define CONFIG_ARM_INTCM       1"      >> tmp.fil;     \
-       echo -n "       /* Integrator core module "     >> tmp.fil;     \
-       echo    "with unknown core      */"             >> tmp.fil;     \
-       cpu=arm_intcm;                                                  \
-       echo -n "#undef CONFIG_CM_MULTIPLE_SSRAM"       >> tmp.fil;     \
-       echo -n "               /* CM may not have "    >> tmp.fil;     \
-       echo    "multiple SSRAM mapping */"             >> tmp.fil;     \
-       echo -n "#undef CONFIG_CM_SPD_DETECT    "       >> tmp.fil;     \
-       echo -n "       /* CM may not support SPD "     >> tmp.fil;     \
-       echo    "query */"                              >> tmp.fil;     \
-       echo -n "#undef CONFIG_CM_REMAP         "       >> tmp.fil;     \
-       echo -n "       /* CM may not support "         >> tmp.fil;     \
-       echo    "remapping      */"                     >> tmp.fil;     \
-       echo -n "#undef CONFIG_CM_INIT          "       >> tmp.fil;     \
-       echo -n "       /* CM may not have  "           >> tmp.fil;     \
-       echo    "initialization reg     */"             >> tmp.fil;     \
-       echo -n "#undef CONFIG_CM_TCRAM         "       >> tmp.fil;     \
-       echo -n "       /* CM may not have TCRAM */"    >> tmp.fil;     \
-       mv tmp.fil ./include/config.h;                                  \
-       ubootlds=board/integratorcp/u-boot.lds;                         \
-       sed -e 's/cpu\/.*\/st/cpu\/'$$cpu'\/st/'                        \
-                                          $$ubootlds > $$ubootlds.tmp; \
-       mv -f $$ubootlds.tmp $$ubootlds;                                \
-       ./mkconfig -a integratorcp arm arm_intcm integratorcp;
-
-integratorcp_CM920T_config             integratorcp_CM920T_ETM_config  \
-integratorcp_CM922T_XA10_config                integratorcp_CM926EJ_S_config   \
-integratorcp_CM940T_config             integratorcp_CM946E_S_config    \
-integratorcp_CM966E_S_config           integratorcp_CM10200E_config    \
-integratorcp_CM10220E_config           integratorcp_CM1026EJ_S_config  \
-integratorcp_CM1136JF_S_config :       unconfig
-       @echo -n "/* Integrator configuration implied " >  tmp.fil;     \
-        echo    " by Makefile target   */"             >> tmp.fil;     \
-        echo                                           >> tmp.fil
-       @echo -n "#define CONFIG_INTEGRATOR     1"      >> tmp.fil;     \
-       echo     "      /* Integrator board     */"     >> tmp.fil;     \
-       echo  -n "#define CONFIG_ARCH_CINTEGRATOR"      >> tmp.fil;     \
-       echo     "      1       /* Integrator/CP */"    >> tmp.fil;     \
-       cm=$(call xtract_int_cm,cp,$@);                                 \
-       echo  -n "#define CONFIG_$$cm           "       >> tmp.fil;     \
-       echo     "      /* core module */"              >> tmp.fil;     \
-       echo "/* $$cm core module       */"             >> tmp.fil;     \
-       case $$cm in                                                    \
-       CM920T)         echo -n "#define CONFIG_ARM920" >> tmp.fil;     \
-                       echo -n "T      1       /* CPU" >> tmp.fil;     \
-                       echo -n " core is ARM920T"      >> tmp.fil;     \
-                       echo    "       */"             >> tmp.fil;     \
-                       cpu=arm920t;;                                   \
-       CM946E_S)       echo -n "#define CONFIG_ARM946" >> tmp.fil;     \
-                       echo -n "E_S    1       /* CPU" >> tmp.fil;     \
-                       echo -n " core is ARM946E-S"    >> tmp.fil;     \
-                       echo    "       */"             >> tmp.fil;     \
-                       cpu=arm946es;;                                  \
-       CM926EJ_S)      echo -n "#define CONFIG_ARM926" >> tmp.fil;     \
-                       echo -n "EJ_S   1       /* CPU" >> tmp.fil;     \
-                       echo -n " core is ARM926EJ-S"   >> tmp.fil;     \
-                       echo    "       */"             >> tmp.fil;     \
-                       cpu=arm926ejs;;                                 \
-       *)              echo -n "#define CONFIG_ARM_IN" >> tmp.fil;     \
-                       echo -n "TCM    1       /* Int" >> tmp.fil;     \
-                       echo -n "egrator core module w" >> tmp.fil;     \
-                       echo -n "ith unported core"     >> tmp.fil;     \
-                       echo    "       */"             >> tmp.fil;     \
-                       cpu=arm_intcm;;                                 \
-       esac;                                                           \
-       mv tmp.fil ./include/config.h;                                  \
-       ubootlds=board/$(call xtract_int_board,cp,$@)/u-boot.lds;       \
-       sed -e 's/cpu\/.*\/st/cpu\/'$$cpu'\/st/'                        \
-                                          $$ubootlds > $$ubootlds.tmp; \
-       mv -f $$ubootlds.tmp $$ubootlds;                                \
-       ./mkconfig -a $(call xtract_int_board,cp,$@) arm $$cpu          \
-                     $(call xtract_int_board,cp,$@);
+########################################################################
+## ARM Integrator boards - see doc/README-integrator for more info.
+integratorap_config    \
+ap_config              \
+ap966_config           \
+ap922_config           \
+ap922_XA10_config      \
+ap7_config             \
+ap720t_config                  \
+ap920t_config          \
+ap926ejs_config                \
+ap946es_config: unconfig
+       @chmod a+x board/integratorap/split_by_variant.sh 
+       @board/integratorap/split_by_variant.sh $@ $(CC)
+
+integratorcp_config    \
+cp_config              \
+cp920t_config          \
+cp926ejs_config                \
+cp946es_config         \
+cp1136_config          \
+cp966_config           \
+cp922_config           \
+cp922_XA10_config      \
+cp1026_config: unconfig
+       @chmod a+x board/integratorcp/split_by_variant.sh 
+       @board/integratorcp/split_by_variant.sh $@ $(CC)
 
 kb9202_config  :       unconfig
        @./mkconfig $(@:_config=) arm arm920t kb9202 NULL at91rm9200
@@ -1660,8 +1516,14 @@ trab_old_config: unconfig
 VCMA9_config   :       unconfig
        @./mkconfig $(@:_config=) arm arm920t vcma9 mpl s3c24x0
 
-versatile_config :     unconfig
-       @./mkconfig $(@:_config=) arm arm926ejs versatile
+#========================================================================
+# ARM supplied Versatile development boards
+#========================================================================
+versatile_config       \
+versatileab_config     \
+versatilepb_config :   unconfig
+       @chmod a+x board/versatile/split_by_variant.sh 
+       @board/versatile/split_by_variant.sh $@ $(CC)
 
 voiceblue_smallflash_config    \
 voiceblue_config:      unconfig
@@ -1946,6 +1808,7 @@ clean:
        rm -f tools/env/fw_printenv tools/env/fw_setenv
        rm -f board/cray/L1/bootscript.c board/cray/L1/bootscript.image
        rm -f board/trab/trab_fkt board/voiceblue/eeprom
+       rm -f board/integratorap/u-boot.lds board/integratorcp/u-boot.lds
 
 clobber:       clean
        find . -type f \( -name .depend \
index cf76ded..358df62 100644 (file)
@@ -30,7 +30,7 @@ include $(TOPDIR)/config.mk
 LIB    = lib$(BOARD).a
 
 OBJS   := integratorap.o flash.o
-SOBJS  := platform.o memsetup.o
+SOBJS  := lowlevel_init.o memsetup.o
 
 $(LIB):        $(OBJS) $(SOBJS)
        $(AR) crv $@ $^
index 4baf39a..d4f61d6 100644 (file)
@@ -649,8 +649,3 @@ ulong get_tbclk (void)
 {
        return CFG_HZ_CLOCK/div_clock;
 }
-
-/* The Integrator/AP timer1 is clocked at 24MHz
- * can be divided by 16 or 256
- * and is a 16-bit counter
- */
similarity index 98%
rename from board/integratorap/platform.S
rename to board/integratorap/lowlevel_init.S
index b208adb..1aacbf4 100644 (file)
@@ -37,9 +37,9 @@ reset_cpu:
 reset_failed:
        b       reset_failed
 
-/* set up the platform, once the cpu has been initialized */
-.globl platformsetup
-platformsetup:
+/* Set up the platform, once the cpu has been initialized */
+.globl lowlevel_init
+lowlevel_init:
        /* If U-Boot has been run after the ARM boot monitor
         * then all the necessary actions have been done
         * otherwise we are running from user flash mapped to 0x00000000
diff --git a/board/integratorap/split_by_variant.sh b/board/integratorap/split_by_variant.sh
new file mode 100644 (file)
index 0000000..23fc7b3
--- /dev/null
@@ -0,0 +1,106 @@
+#!/bin/sh
+# ---------------------------------------------------------
+# Set the platform defines
+# ---------------------------------------------------------
+echo -n "/* Integrator configuration implied "   > tmp.fil
+echo    " by Makefile target */"               >> tmp.fil
+echo -n "#define CONFIG_INTEGRATOR"            >> tmp.fil
+echo    " /* Integrator board */"              >> tmp.fil
+echo -n "#define CONFIG_ARCH_INTEGRATOR"       >> tmp.fil
+echo     " 1 /* Integrator/AP   */"            >> tmp.fil
+# ---------------------------------------------------------
+#  Set the core module defines according to Core Module
+# ---------------------------------------------------------
+CC=$(CROSS_COMPILE)gcc
+cpu="arm_intcm"
+
+if [ "$2" == "" ]
+then
+       echo "$0:: No preprocessor parameter - using $(CROSS_COMPILE)gcc"
+else
+       CC=$2
+fi
+
+
+if [ "$1" == "" ]
+then
+       echo "$0:: No parameters - using $(CROSS_COMPILE)gcc arm_intcm"
+else
+       case "$1" in
+       ap7_config              |       \
+       ap966_config            |       \
+       ap922_config            |       \
+       integratorap_config     |       \
+       ap_config)
+       cpu="arm_intcm"
+       ;;
+
+       ap720t_config)
+       cpu="arm720t"
+       echo -n "#define CONFIG_CM720T"         >> tmp.fil
+       echo    " 1 /* CPU core is ARM720T */ " >> tmp.fil
+       ;;
+
+       ap922_XA10_config)
+       echo -n "#define CONFIG_CM922T_XA10"            >> tmp.fil
+       echo    " 1 /* CPU core is ARM922T_XA10 */"     >> tmp.fil
+       cpu="arm_intcm"
+       ;;
+
+       ap920t_config)
+       cpu="arm920t"
+       echo -n "#define CONFIG_CM920T"                 >> tmp.fil
+       echo    " 1 /* CPU core is ARM920T */"          >> tmp.fil
+       ;;
+
+       ap926ejs_config)
+       cpu="arm926ejs"
+       echo -n "#define CONFIG_CM926EJ_S"              >> tmp.fil
+       echo    " 1 /* CPU core is ARM926EJ-S */ "      >> tmp.fil
+       ;;
+
+
+       ap946es_config)
+       cpu="arm946es"
+       echo -n "#define CONFIG_CM946E_S"               >> tmp.fil
+       echo    " 1 /* CPU core is ARM946E-S */ "       >> tmp.fil
+       ;;
+
+       *)
+       echo "$0:: Unrecognised target - using arm_intcm"
+       cpu="arm_intcm"
+       ;;
+
+       esac
+
+fi
+
+if [ "$cpu" == "arm_intcm" ]
+then
+       echo "/* Core module undefined/not ported */"   >> tmp.fil
+       echo "#define CONFIG_ARM_INTCM 1"               >> tmp.fil
+       echo -n "#undef CONFIG_CM_MULTIPLE_SSRAM"       >> tmp.fil
+       echo -n "  /* CM may not have "                 >> tmp.fil
+       echo    "multiple SSRAM mapping */"             >> tmp.fil
+       echo -n "#undef CONFIG_CM_SPD_DETECT "          >> tmp.fil
+       echo -n " /* CM may not support SPD "           >> tmp.fil
+       echo    "query */"                              >> tmp.fil
+       echo -n "#undef CONFIG_CM_REMAP  "              >> tmp.fil
+       echo -n " /* CM may not support "               >> tmp.fil
+       echo    "remapping */"                          >> tmp.fil
+       echo -n "#undef CONFIG_CM_INIT  "               >> tmp.fil
+       echo -n " /* CM may not have  "                 >> tmp.fil
+       echo    "initialization reg */"                 >> tmp.fil
+       echo -n "#undef CONFIG_CM_TCRAM  "              >> tmp.fil
+       echo    " /* CM may not have TCRAM */"          >> tmp.fil
+fi
+mv tmp.fil ./include/config.h
+# ---------------------------------------------------------
+#  Ensure correct core object loaded first in U-Boot image
+# ---------------------------------------------------------
+$CC -E -P -C -D CPU_FILE=cpu/$cpu/start.o              \
+-o board/integratorap/u-boot.lds board/integratorap/u-boot.lds.S
+# ---------------------------------------------------------
+# Complete the configuration
+# ---------------------------------------------------------
+./mkconfig -a integratorap arm $cpu integratorap;
similarity index 89%
rename from board/integratorap/u-boot.lds
rename to board/integratorap/u-boot.lds.S
index cb6ee18..486b5da 100644 (file)
@@ -20,6 +20,8 @@
  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
  * MA 02111-1307 USA
  */
+/* Preprocessed during configuration to emsure the core module processor code,
+   from CPU_FILE, is placed at the start of the image */
 
 OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")
 OUTPUT_ARCH(arm)
@@ -30,7 +32,7 @@ SECTIONS
        . = ALIGN(4);
        .text   :
        {
-         cpu/arm926ejs/start.o (.text)
+         CPU_FILE (.text)
          *(.text)
        }
        .rodata : { *(.rodata) }
index 71532d1..3d589fc 100644 (file)
@@ -26,7 +26,7 @@ include $(TOPDIR)/config.mk
 LIB    = lib$(BOARD).a
 
 OBJS   := integratorcp.o flash.o
-SOBJS  := platform.o memsetup.o
+SOBJS  := lowlevel_init.o memsetup.o
 
 $(LIB):        $(OBJS) $(SOBJS)
        $(AR) crv $@ $^
similarity index 98%
rename from board/integratorcp/platform.S
rename to board/integratorcp/lowlevel_init.S
index 612a2c4..e679215 100644 (file)
@@ -37,9 +37,9 @@ reset_cpu:
 reset_failed:
        b       reset_failed
 
-/* set up the platform, once the cpu has been initialized */
-.globl platformsetup
-platformsetup:
+/* Set up the platform, once the cpu has been initialized */
+.globl lowlevel_init
+lowlevel_init:
        /* If U-Boot has been run after the ARM boot monitor
         * then all the necessary actions have been done
         * otherwise we are running from user flash mapped to 0x00000000
diff --git a/board/integratorcp/split_by_variant.sh b/board/integratorcp/split_by_variant.sh
new file mode 100644 (file)
index 0000000..3f63633
--- /dev/null
@@ -0,0 +1,106 @@
+#!/bin/sh
+# ---------------------------------------------------------
+# Set the platform defines
+# ---------------------------------------------------------
+echo -n "/* Integrator configuration implied "   > tmp.fil
+echo    " by Makefile target */"               >> tmp.fil
+echo -n "#define CONFIG_INTEGRATOR"            >> tmp.fil
+echo    " /* Integrator board */"              >> tmp.fil
+echo -n "#define CONFIG_ARCH_CINTEGRATOR"      >> tmp.fil
+echo     " 1 /* Integrator/CP   */"            >> tmp.fil
+# ---------------------------------------------------------
+#  Set the core module defines according to Core Module
+# ---------------------------------------------------------
+CC=$(CROSS_COMPILE)gcc
+cpu="arm_intcm"
+
+if [ "$2" == "" ]
+then
+       echo "$0:: No preprocessor parameter - using $(CROSS_COMPILE)gcc"
+else
+       CC=$2
+fi
+
+
+if [ "$1" == "" ]
+then
+       echo "$0:: No parameters - using $(CROSS_COMPILE)gcc arm_intcm"
+else
+       case "$1" in
+       cp966_config            |       \
+       cp922_config            |       \
+       cp1026_config           |       \
+       integratorcp_config     |       \
+       cp_config)
+       cpu="arm_intcm"
+       ;;
+
+       cp922_XA10_config)
+       echo -n "#define CONFIG_CM922T_XA10"            >> tmp.fil
+       echo    " 1 /* CPU core is ARM922T_XA10 */"     >> tmp.fil
+       cpu="arm_intcm"
+       ;;
+
+       cp920t_config)
+       cpu="arm920t"
+       echo -n "#define CONFIG_CM920T"                 >> tmp.fil
+       echo    " 1 /* CPU core is ARM920T */"          >> tmp.fil
+       ;;
+
+       cp926ejs_config)
+       cpu="arm926ejs"
+       echo -n "#define CONFIG_CM926EJ_S"              >> tmp.fil
+       echo    " 1 /* CPU core is ARM926EJ-S */ "      >> tmp.fil
+       ;;
+
+
+       cp946es_config)
+       cpu="arm946es"
+       echo -n "#define CONFIG_CM946E_S"               >> tmp.fil
+       echo    " 1 /* CPU core is ARM946E-S */ "       >> tmp.fil
+       ;;
+
+       cp1136_config)
+       cpu="arm1136"
+       echo -n "#define CONFIG_CM1136EJF_S"            >> tmp.fil
+       echo    " 1 /* CPU core is ARM1136JF-S */ "     >> tmp.fil
+       ;;
+
+       *)
+       echo "$0:: Unrecognised target - using arm_intcm"
+       cpu="arm_intcm"
+       ;;
+
+       esac
+
+fi
+
+if [ "$cpu" == "arm_intcm" ]
+then
+       echo "/* Core module undefined/not ported */"   >> tmp.fil
+       echo "#define CONFIG_ARM_INTCM 1"               >> tmp.fil
+       echo -n "#undef CONFIG_CM_MULTIPLE_SSRAM"       >> tmp.fil
+       echo -n "  /* CM may not have "                 >> tmp.fil
+       echo    "multiple SSRAM mapping */"             >> tmp.fil
+       echo -n "#undef CONFIG_CM_SPD_DETECT "          >> tmp.fil
+       echo -n " /* CM may not support SPD "           >> tmp.fil
+       echo    "query */"                              >> tmp.fil
+       echo -n "#undef CONFIG_CM_REMAP  "              >> tmp.fil
+       echo -n " /* CM may not support "               >> tmp.fil
+       echo    "remapping */"                          >> tmp.fil
+       echo -n "#undef CONFIG_CM_INIT  "               >> tmp.fil
+       echo -n " /* CM may not have  "                 >> tmp.fil
+       echo    "initialization reg */"                 >> tmp.fil
+       echo -n "#undef CONFIG_CM_TCRAM  "              >> tmp.fil
+       echo    " /* CM may not have TCRAM */"          >> tmp.fil
+fi
+mv tmp.fil ./include/config.h
+# ---------------------------------------------------------
+#  Ensure correct core object loaded first in U-Boot image
+# ---------------------------------------------------------
+$CC -E -P -C -D CPU_FILE=cpu/$cpu/start.o              \
+-o board/integratorcp/u-boot.lds board/integratorcp/u-boot.lds.S
+# ---------------------------------------------------------
+# Complete the configuration
+# ---------------------------------------------------------
+./mkconfig -a integratorcp arm $cpu integratorcp;
similarity index 89%
rename from board/integratorcp/u-boot.lds
rename to board/integratorcp/u-boot.lds.S
index cb6ee18..486b5da 100644 (file)
@@ -20,6 +20,8 @@
  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
  * MA 02111-1307 USA
  */
+/* Preprocessed during configuration to emsure the core module processor code,
+   from CPU_FILE, is placed at the start of the image */
 
 OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")
 OUTPUT_ARCH(arm)
@@ -30,7 +32,7 @@ SECTIONS
        . = ALIGN(4);
        .text   :
        {
-         cpu/arm926ejs/start.o (.text)
+         CPU_FILE (.text)
          *(.text)
        }
        .rodata : { *(.rodata) }
index d2718cc..fb4333c 100644 (file)
@@ -26,7 +26,7 @@ include $(TOPDIR)/config.mk
 LIB    = lib$(BOARD).a
 
 OBJS   := ns9750dev.o flash.o led.o
-SOBJS  := platform.o
+SOBJS  := lowlevel_init.o
 
 $(LIB):        $(OBJS) $(SOBJS)
        $(AR) crv $@ $(OBJS) $(SOBJS)
similarity index 99%
rename from board/ns9750dev/platform.S
rename to board/ns9750dev/lowlevel_init.S
index afcad15..3a09786 100644 (file)
@@ -75,8 +75,8 @@ _CAS_LATENCY:
        .word   0x00022000      @ for CAS2 latency
 
 #ifndef CONFIG_SKIP_LOWLEVEL_INIT
-.globl platformsetup
-platformsetup:
+.globl lowlevel_init
+lowlevel_init:
 
        /* U-Boot may be linked to RAM at 0x780000. But this code will run in
           flash from 0x0. But in order to enable RAM we have to disable the
index bd6285c..902b24e 100644 (file)
@@ -26,7 +26,7 @@ include $(TOPDIR)/config.mk
 LIB    = lib$(BOARD).a
 
 OBJS   := omap1510innovator.o
-SOBJS  := platform.o
+SOBJS  := lowlevel_init.o
 
 $(LIB):        $(OBJS) $(SOBJS)
        $(AR) crv $@ $^
similarity index 99%
rename from board/omap1510inn/platform.S
rename to board/omap1510inn/lowlevel_init.S
index 8045e84..1c68e5b 100644 (file)
@@ -39,8 +39,8 @@
 _TEXT_BASE:
        .word   TEXT_BASE        /* sdram load addr from config.mk */
 
-.globl platformsetup
-platformsetup:
+.globl lowlevel_init
+lowlevel_init:
 
        /*
         * Configure 1510 pins functions to match our board.
index 4a96b83..4560102 100644 (file)
@@ -26,7 +26,7 @@ include $(TOPDIR)/config.mk
 LIB    = lib$(BOARD).a
 
 OBJS   := omap1610innovator.o flash.o
-SOBJS  := platform.o
+SOBJS  := lowlevel_init.o
 
 $(LIB):        $(OBJS) $(SOBJS)
        $(AR) crv $@ $^
similarity index 99%
rename from board/omap1610inn/platform.S
rename to board/omap1610inn/lowlevel_init.S
index d694f94..eaf1742 100644 (file)
@@ -37,8 +37,8 @@
 _TEXT_BASE:
        .word   TEXT_BASE       /* sdram load addr from config.mk */
 
-.globl platformsetup
-platformsetup:
+.globl lowlevel_init
+lowlevel_init:
 
 
        /*------------------------------------------------------*
index 38dec00..ed47868 100644 (file)
@@ -26,7 +26,7 @@ include $(TOPDIR)/config.mk
 LIB    = lib$(BOARD).a
 
 OBJS   := omap2420h4.o mem.o sys_info.o
-SOBJS  := platform.o
+SOBJS  := lowlevel_init.o
 
 $(LIB):        $(OBJS) $(SOBJS)
        $(AR) crv $@ $^
similarity index 99%
rename from board/omap2420h4/platform.S
rename to board/omap2420h4/lowlevel_init.S
index 73ba462..9752fc4 100644 (file)
@@ -158,8 +158,8 @@ pll_div_add:
 pll_div_val:
     .word DPLL_VAL     /* DPLL setting (300MHz default) */
 
-.globl platformsetup
-platformsetup:
+.globl lowlevel_init
+lowlevel_init:
        ldr     sp,     SRAM_STACK
        str     ip,     [sp]    /* stash old link register */
        mov     ip,     lr      /* save link reg across call */
index 6480466..4b56421 100644 (file)
@@ -26,7 +26,7 @@ include $(TOPDIR)/config.mk
 LIB    = lib$(BOARD).a
 
 OBJS   := omap5912osk.o
-SOBJS  := platform.o
+SOBJS  := lowlevel_init.o
 
 $(LIB):        $(OBJS) $(SOBJS)
        $(AR) crv $@ $^
similarity index 99%
rename from board/omap5912osk/platform.S
rename to board/omap5912osk/lowlevel_init.S
index 33c7242..3b9633a 100644 (file)
@@ -38,8 +38,8 @@
 _TEXT_BASE:
        .word   TEXT_BASE       /* sdram load addr from config.mk */
 
-.globl platformsetup
-platformsetup:
+.globl lowlevel_init
+lowlevel_init:
 
 
        /*------------------------------------------------------*
index 1058508..29467ac 100644 (file)
@@ -26,7 +26,7 @@ include $(TOPDIR)/config.mk
 LIB    = lib$(BOARD).a
 
 OBJS   := omap730p2.o flash.o
-SOBJS  := platform.o
+SOBJS  := lowlevel_init.o
 
 $(LIB):        $(OBJS) $(SOBJS)
        $(AR) crv $@ $^
similarity index 99%
rename from board/omap730p2/platform.S
rename to board/omap730p2/lowlevel_init.S
index f30c242..6c6f482 100644 (file)
@@ -43,8 +43,8 @@
 _TEXT_BASE:
        .word   TEXT_BASE       /* sdram load addr from config.mk */
 
-.globl platformsetup
-platformsetup:
+.globl lowlevel_init
+lowlevel_init:
        /* Save callers address in r11 - r11 must never be modified */
        mov r11, lr
 
index 8cd02d1..8fbdf2a 100644 (file)
@@ -26,7 +26,7 @@ include $(TOPDIR)/config.mk
 LIB    = lib$(BOARD).a
 
 OBJS   := sx1.o
-SOBJS  := platform.o
+SOBJS  := lowlevel_init.o
 
 $(LIB):        $(OBJS) $(SOBJS)
        $(AR) crv $@ $^
similarity index 99%
rename from board/sx1/platform.S
rename to board/sx1/lowlevel_init.S
index bd54df1..bdf812e 100644 (file)
@@ -39,8 +39,8 @@
 _TEXT_BASE:
        .word   TEXT_BASE        /* sdram load addr from config.mk */
 
-.globl platformsetup
-platformsetup:
+.globl lowlevel_init
+lowlevel_init:
 
        /*
         * Configure 1510 pins functions to match our board.
index 42b6ed5..fbdc627 100644 (file)
@@ -26,7 +26,7 @@ include $(TOPDIR)/config.mk
 LIB    = lib$(BOARD).a
 
 OBJS   := versatile.o flash.o
-SOBJS  := platform.o
+SOBJS  := lowlevel_init.o
 
 $(LIB):        $(OBJS) $(SOBJS)
        $(AR) crv $@ $^
similarity index 91%
rename from board/versatile/platform.S
rename to board/versatile/lowlevel_init.S
index 68c3e8b..bdfce2d 100644 (file)
@@ -26,8 +26,9 @@
 #include <config.h>
 #include <version.h>
 
-.globl platformsetup
-platformsetup:
+/* Set up the platform, once the cpu has been initialized */
+.globl lowlevel_init
+lowlevel_init:
 
        /* All done by Versatile's boot monitor! */
        mov pc, lr
diff --git a/board/versatile/split_by_variant.sh b/board/versatile/split_by_variant.sh
new file mode 100644 (file)
index 0000000..b462b7e
--- /dev/null
@@ -0,0 +1,45 @@
+#!/bin/sh
+# ---------------------------------------------------------
+#  Set the core module defines according to Core Module
+# ---------------------------------------------------------
+CC=$(CROSS_COMPILE)gcc
+config="versatilepb_config"
+
+if [ "$2" == "" ]
+then
+       echo "$0:: No preprocessor parameter - using $(CROSS_COMPILE)gcc"
+else
+       CC=$2
+fi
+
+
+# ---------------------------------------------------------
+# Set up the Versatile type define
+# ---------------------------------------------------------
+if [ "$1" == "" ]
+then
+       echo "$0:: No parameters - using $(CROSS_COMPILE)gcc versatilepb_config"
+
+else
+       case "$config" in
+       versatilepb_config      |       \
+       versatile_config)
+       echo "#define CONFIG_ARCH_VERSATILE_PB" > ./include/config.h
+       ;;
+
+       versatileab_config)
+       echo "#define CONFIG_ARCH_VERSATILE_AB" > ./include/config.h
+       ;;
+
+
+       *)
+       echo "$0:: Unrecognised config - using versatilepb_config"
+       ;;
+
+       esac
+
+fi
+# ---------------------------------------------------------
+# Complete the configuration
+# ---------------------------------------------------------
+./mkconfig -a versatile arm arm926ejs versatile
index 4a110e8..dcf37b5 100644 (file)
@@ -122,8 +122,8 @@ MUX_CONFIG_OFFSETS:
        .byte 0x0c              @ COMP_MODE_CTRL_0
        .byte 0xff
 
-.globl platformsetup
-platformsetup:
+.globl lowlevel_init
+lowlevel_init:
        /* Improve performance a bit... */
        mrc     p15, 0, r1, c0, c0, 0           @ read C15 ID register
        mrc     p15, 0, r1, c0, c0, 1           @ read C15 Cache information register
index 23236dc..6b1449e 100644 (file)
 
 #include <common.h>
 #include <asm/arch/bits.h>
-#include <asm/arch/omap2420.h>
+
+#if !defined(CONFIG_INTEGRATOR) || ! defined(CONFIG_ARCH_CINTEGRATOR)
+# include <asm/arch/omap2420.h>
+#endif
+
 #include <asm/proc-armv/ptrace.h>
 
 #define TIMER_LOAD_VAL 0
@@ -175,6 +179,9 @@ void do_irq (struct pt_regs *pt_regs)
 static ulong timestamp;
 static ulong lastinc;
 
+#if defined(CONFIG_INTEGRATOR) && defined(CONFIG_ARCH_CINTEGRATOR)
+/* Use the IntegratorCP function from board/integratorcp.c */
+#else
 /* nothing really to do with interrupts, just starts up a counter. */
 int interrupt_init (void)
 {
@@ -189,7 +196,6 @@ int interrupt_init (void)
 
        return(0);
 }
-
 /*
  * timer without interrupts
  */
@@ -281,7 +287,6 @@ unsigned long long get_ticks(void)
 {
        return get_timer(0);
 }
-
 /*
  * This function is derived from PowerPC code (timebase clock frequency).
  * On ARM it returns the number of timer ticks per second.
@@ -292,3 +297,4 @@ ulong get_tbclk (void)
        tbclk = CFG_HZ;
        return tbclk;
 }
+#endif /* !Integrator/CP */
index c3bf6e3..05c9128 100644 (file)
@@ -210,7 +210,7 @@ cpu_init_crit:
         * basic memory.  Go here to bump up clock rate and handle wake up conditions.
         */
        mov     ip, lr          /* persevere link reg across call */
-       bl      platformsetup   /* go setup pll,mux,memory */
+       bl      lowlevel_init   /* go setup pll,mux,memory */
        mov     lr, ip          /* restore link */
        mov     pc, lr          /* back to my caller */
 /*
@@ -397,6 +397,10 @@ arm1136_cache_flush:
                mcr     p15, 0, r1, c7, c5, 0   @ invalidate I cache
                mov     pc, lr                  @ back to caller
 
+#if defined(CONFIG_INTEGRATOR) && defined(CONFIG_ARCH_CINTEGRATOR)
+/* Use the IntegratorCP function from board/integratorcp/platform.S */
+#else
+
        .align  5
 .globl reset_cpu
 reset_cpu:
@@ -408,3 +412,5 @@ _loop_forever:
        b       _loop_forever
 rstctl:
        .word   PM_RSTCTRL_WKUP
+
+#endif
index fcca360..a5b6de7 100644 (file)
@@ -76,6 +76,8 @@ int cleanup_before_linux (void)
 #elif defined(CONFIG_NETARM) || defined(CONFIG_S3C4510B)
        disable_interrupts ();
        /* Nothing more needed */
+#elif defined(CONFIG_INTEGRATOR) && defined(CONFIG_ARCH_INTEGRATOR)
+       /* No cleanup before linux for IntegratorAP/CM720T as yet */
 #else
 #error No cleanup_before_linux() defined for this CPU type
 #endif
@@ -245,6 +247,11 @@ int dcache_status (void)
        return icache_status();
 }
 
+#elif defined(CONFIG_INTEGRATOR) && defined(CONFIG_ARCH_INTEGRATOR)
+       /* No specific cache setup for IntegratorAP/CM720T as yet */
+       void icache_enable (void)
+       {
+       }
 #else
 #error No icache/dcache enable/disable functions defined for this CPU type
 #endif
index d0eaca5..575d923 100644 (file)
@@ -193,6 +193,8 @@ void do_irq (struct pt_regs *pt_regs)
                /* clear pending interrupt */
                PUT_REG( REG_INTPEND, (1<<(pending>>2)));
        }
+#elif defined(CONFIG_INTEGRATOR) && defined(CONFIG_ARCH_INTEGRATOR)
+       /* No do_irq() for IntegratorAP/CM720T as yet */
 #else
 #error do_irq() not defined for this CPU type
 #endif
@@ -219,6 +221,10 @@ static void timer_isr( void *data) {
 static ulong timestamp;
 static ulong lastdec;
 
+#if defined(CONFIG_INTEGRATOR) && defined(CONFIG_ARCH_INTEGRATOR)
+       /* Use IntegratorAP routines in board/integratorap.c */
+#else
+
 int interrupt_init (void)
 {
 
@@ -296,6 +302,8 @@ int interrupt_init (void)
        return (0);
 }
 
+#endif /* ! IntegratorAP */
+
 /*
  * timer without interrupts
  */
@@ -398,6 +406,8 @@ void udelay (unsigned long usec)
 
 }
 
+#elif defined(CONFIG_INTEGRATOR) && defined(CONFIG_ARCH_INTEGRATOR)
+       /* No timer routines for IntegratorAP/CM720T as yet */
 #else
 #error Timer routines not defined for this CPU type
 #endif
index eb26476..43582b3 100644 (file)
@@ -301,6 +301,8 @@ cpu_init_crit:
        ldr r1, =0x83ffffa0     /* cache-disabled  */
        str r1, [r0]
 
+#elif defined(CONFIG_INTEGRATOR) && defined(CONFIG_ARCH_INTEGRATOR)
+       /* No specific initialisation for IntegratorAP/CM720T as yet */
 #else
 #error No cpu_init_crit() defined for current CPU type
 #endif
@@ -316,12 +318,12 @@ cpu_init_crit:
        str     r1, [r0]
 #endif
 
+       mov     ip, lr
        /*
         * before relocating, we have to setup RAM timing
         * because memory timing is board-dependent, you will
         * find a lowlevel_init.S in your board directory.
         */
-       mov     ip, lr
        bl      lowlevel_init
        mov     lr, ip
 
@@ -530,6 +532,8 @@ reset_cpu:
 #elif defined(CONFIG_S3C4510B)
 /* Nothing done here as reseting the CPU is board specific, depending
  * on external peripherals such as watchdog timers, etc. */
+#elif defined(CONFIG_INTEGRATOR) && defined(CONFIG_ARCH_INTEGRATOR)
+       /* No specific reset actions for IntegratorAP/CM720T as yet */
 #else
 #error No reset_cpu() defined for current CPU type
 #endif
index 74a97d5..4603cf5 100644 (file)
@@ -255,7 +255,6 @@ cpu_init_crit:
        orr     r0, r0, #0x00001000     @ set bit 12 (I) I-Cache
        mcr     p15, 0, r0, c1, c0, 0
 
-
        /*
         * before relocating, we have to setup RAM timing
         * because memory timing is board-dependend, you will
@@ -264,7 +263,6 @@ cpu_init_crit:
        mov     ip, lr
        bl      lowlevel_init
        mov     lr, ip
-
        mov     pc, lr
 
 
index 2389259..acd7742 100644 (file)
@@ -246,7 +246,7 @@ cpu_init_crit:
         * Go setup Memory and board specific bits prior to relocation.
         */
        mov     ip, lr          /* perserve link reg across call */
-       bl      platformsetup   /* go setup pll,mux,memory */
+       bl      lowlevel_init   /* go setup pll,mux,memory */
        mov     lr, ip          /* restore link */
        mov     pc, lr          /* back to my caller */
 /*
index 5f5a1c5..fc6b20b 100644 (file)
@@ -222,7 +222,7 @@ cpu_init_crit:
         * Go setup Memory and board specific bits prior to relocation.
         */
        mov     ip, lr          /* perserve link reg across call */
-       bl      platformsetup   /* go setup pll,mux,memory */
+       bl      lowlevel_init   /* go setup pll,mux,memory */
        mov     lr, ip          /* restore link */
        mov     pc, lr          /* back to my caller */
 /*
index ef3be8e..e8c908b 100644 (file)
@@ -214,7 +214,7 @@ cpu_init_crit:
         * Go setup Memory and board specific bits prior to relocation.
         */
        mov     ip, lr          /* perserve link reg across call */
-       bl      platformsetup   /* go setup memory */
+       bl      lowlevel_init   /* go setup memory */
        mov     lr, ip          /* restore link */
        mov     pc, lr          /* back to my caller */
 /*
index 827221f..ce8a9d2 100644 (file)
@@ -62,3 +62,49 @@ of the Integrator board itself, has been placed in
 
        board/integrator<>/platform.S
        board/integrator<>/integrator<>.c
+
+Targets
+=======
+The U-Boot make targets map to the available core modules as below.
+
+Integrator/AP is no longer available from ARM.
+Core modules marked ** are also no longer available.
+
+ap720t_config          ** CM720T
+ap920t_config          ** CM920T
+ap926ejs_config        Integrator Core Module for ARM926EJ-STM
+ap946es_config         Integrator Core Module for ARM946E-STM
+cp920t_config          ** CM920T
+cp926ejs_config        Integrator Core Module for ARM926EJ-STM
+cp946es_config         Integrator Core Module for ARM946E-STM
+cp1136_config          Integrator Core Module ARM1136JF-S  TM
+
+The final groups of targets are for core modules where no explicit cpu
+code has yet been added to U-Boot i.e. they all use the same U-Boot binary
+using the generic "arm_intcm" core:
+
+ap966_config                   Integrator Core Module for ARM966E-S TM
+ap922_config                   Integrator Core Module for ARM922T TM with ETM
+ap922_XA10_config              Integrator Core Module for ARM922T using Altera Excalibur
+ap7_config                     ** CM7TDMI
+integratorap_config
+ap_config
+
+
+cp966_config                   Integrator Core Module for ARM966E-S TM
+cp922_config                   Integrator Core Module for ARM922T TM with ETM
+cp922_XA10_config              Integrator Core Module for ARM922T using Altera Excalibur
+cp1026_config                  Integrator Core Module ARM1026EJ-S TM
+integratorcp_config
+cp_config
+
+The Makefile targets call board/integrator<>/split_by_variant.sh
+to configure various defines in include/configs/integrator<>.h
+to indicate the core module & core configuration and ensure that
+board/integrator<>/u-boot.lds loads the cpu object first in the U-Boot image.
+
+*********************************
+Because of this mechanism
+> make clean
+must be run before each change in configuration
+*********************************
index 9404acd..3056ca7 100644 (file)
@@ -34,6 +34,8 @@
 /* include EP7312 specific hardware file if there was one */
 #elif defined(CONFIG_ARMADILLO)
 /* include armadillo specific hardware file if there was one */
+#elif defined(CONFIG_INTEGRATOR) && defined(CONFIG_ARCH_INTEGRATOR)
+/* include IntegratorCP/CM720T specific hardware file if there was one */
 #else
 #error No hardware file defined for this configuration
 #endif