
		U-Boot for ARM Integrator Development Platforms

			Peter Pearse, ARM Ltd.
			peter.pearse@arm.com
			     www.arm.com

Manuals available from :-
http://www.arm.com/products/DevTools/Hardware_Platforms.html

Overview :
--------
There are two Integrator variants - Integrator/AP and Integrator/CP.
Each may be fitted with a variety of core modules (CMs).
Each CM consists of a ARM processor core and associated hardware e.g
	FPGA implementing various controllers and/or register
	SSRAM
	SDRAM
	RAM controllers
	clock generators etc.
CMs may be fitted with varying amounts of SDRAM using a DIMM socket.

Boot Methods :
------------
Integrator platforms can be configured to use U-Boot in at least three ways :-
a) Run ARM boot monitor, manually run U-Boot image from flash
b) Run ARM boot monitor, automatically run U-Boot image from flash
c) Run U-Boot image direct from flash.

In cases a) and b) the ARM boot monitor will have configured the CM and mapped
writeable memory to 0x00000000 in the Integrator address space.
U-Boot has to carry out minimal configration before standard code is run.

In case c) it may be necessary for U-Boot to perform CM dependent initialization.

Configuring U-Boot :
------------------
	The makefile contains targets for Integrator platforms of both types
fitted with all current variants of CM.

	There are also targets independent of CM. These may not be suitable for
boot process c) above. They have been preserved for backward compatibility with
existing build processes.

Code Hierarchy Applied :
----------------------
Code specific to initialization of a particular ARM processor has been placed in
cpu/arm<>/start.S so that it may be used by other boards.

However, to avoid duplicating code through all processor files, a generic core
for ARM Integrator CMs has been added

	arch/arm/cpu/arm_intcm

Otherwise. for example,  the standard CM reset via the CM control register would
need placing in each CM processor file......

Code specific to the initialization of the CM, rather than the cpu, and initialization
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
*********************************
