uboot/doc/README-integrator
<<
>>
Prefs
   1
   2                U-Boot for ARM Integrator Development Platforms
   3
   4                        Peter Pearse, ARM Ltd.
   5                        peter.pearse@arm.com
   6                             www.arm.com
   7
   8Manuals available from :-
   9http://www.arm.com/products/DevTools/Hardware_Platforms.html
  10
  11Overview :
  12--------
  13There are two Integrator variants - Integrator/AP and Integrator/CP.
  14Each may be fitted with a variety of core modules (CMs).
  15Each CM consists of a ARM processor core and associated hardware e.g
  16        FPGA implementing various controllers and/or register
  17        SSRAM
  18        SDRAM
  19        RAM controllers
  20        clock generators etc.
  21CMs may be fitted with varying amounts of SDRAM using a DIMM socket.
  22
  23Boot Methods :
  24------------
  25Integrator platforms can be configured to use U-Boot in at least three ways :-
  26a) Run ARM boot monitor, manually run U-Boot image from flash
  27b) Run ARM boot monitor, automatically run U-Boot image from flash
  28c) Run U-Boot image direct from flash.
  29
  30In cases a) and b) the ARM boot monitor will have configured the CM and mapped
  31writeable memory to 0x00000000 in the Integrator address space.
  32U-Boot has to carry out minimal configration before standard code is run.
  33
  34In case c) it may be necessary for U-Boot to perform CM dependent initialization.
  35
  36Configuring U-Boot :
  37------------------
  38        The makefile contains targets for Integrator platforms of both types
  39fitted with all current variants of CM. If these targets are to be used with
  40boot process c) above then CONFIG_INIT_CRITICAL may need to be defined to ensure
  41that the CM is correctly configured.
  42
  43        There are also targets independent of CM. These may not be suitable for
  44boot process c) above. They have been preserved for backward compatibility with
  45existing build processes.
  46
  47Code Hierarchy Applied :
  48----------------------
  49Code specific to initialization of a particular ARM processor has been placed in
  50cpu/arm<>/start.S so that it may be used by other boards.
  51
  52However, to avoid duplicating code through all processor files, a generic core
  53for ARM Integrator CMs has been added
  54
  55        cpu/arm_intcm
  56
  57Otherwise. for example,  the standard CM reset via the CM control register would
  58need placing in each CM processor file......
  59
  60Code specific to the initialization of the CM, rather than the cpu, and initialization
  61of the Integrator board itself, has been placed in
  62
  63        board/integrator<>/platform.S
  64        board/integrator<>/integrator<>.c
  65
  66Targets
  67=======
  68The U-Boot make targets map to the available core modules as below.
  69
  70Integrator/AP is no longer available from ARM.
  71Core modules marked ** are also no longer available.
  72
  73ap720t_config           ** CM720T
  74ap920t_config           ** CM920T
  75ap926ejs_config Integrator Core Module for ARM926EJ-STM
  76ap946es_config          Integrator Core Module for ARM946E-STM
  77cp920t_config           ** CM920T
  78cp926ejs_config Integrator Core Module for ARM926EJ-STM
  79cp946es_config          Integrator Core Module for ARM946E-STM
  80cp1136_config           Integrator Core Module ARM1136JF-S  TM
  81
  82The final groups of targets are for core modules where no explicit cpu
  83code has yet been added to U-Boot i.e. they all use the same U-Boot binary
  84using the generic "arm_intcm" core:
  85
  86ap966_config                    Integrator Core Module for ARM966E-S TM
  87ap922_config                    Integrator Core Module for ARM922T TM with ETM
  88ap922_XA10_config               Integrator Core Module for ARM922T using Altera Excalibur
  89ap7_config                      ** CM7TDMI
  90integratorap_config
  91ap_config
  92
  93
  94cp966_config                    Integrator Core Module for ARM966E-S TM
  95cp922_config                    Integrator Core Module for ARM922T TM with ETM
  96cp922_XA10_config               Integrator Core Module for ARM922T using Altera Excalibur
  97cp1026_config                   Integrator Core Module ARM1026EJ-S TM
  98integratorcp_config
  99cp_config
 100
 101The Makefile targets call board/integrator<>/split_by_variant.sh
 102to configure various defines in include/configs/integrator<>.h
 103to indicate the core module & core configuration and ensure that
 104board/integrator<>/u-boot.lds loads the cpu object first in the U-Boot image.
 105
 106*********************************
 107Because of this mechanism
 108> make clean
 109must be run before each change in configuration
 110*********************************
 111