aboutsummaryrefslogtreecommitdiffstats
path: root/README
diff options
context:
space:
mode:
authorMacpaul Lin2011-10-19 15:41:11 -0500
committerWolfgang Denk2011-10-21 17:54:45 -0500
commitafc1ce82885698c61946c0cab99aac3547ef78ea (patch)
tree89877d371b31068ff89546f85e628939ff6da41f /README
parent5f1719c1054282a0e11430956aa0b72009d0aab8 (diff)
downloadu-boot-afc1ce82885698c61946c0cab99aac3547ef78ea.tar.gz
u-boot-afc1ce82885698c61946c0cab99aac3547ef78ea.tar.xz
u-boot-afc1ce82885698c61946c0cab99aac3547ef78ea.zip
doc/README: documents and readme for NDS32 arch
Documents and READMEs for NDS32 architecture. It patch also provides usage of SoC AG101 and board ADP-AG101. Signed-off-by: Macpaul Lin <macpaul@andestech.com>
Diffstat (limited to 'README')
-rw-r--r--README24
1 files changed, 21 insertions, 3 deletions
diff --git a/README b/README
index eb9ade9ad4..c6b179cb62 100644
--- a/README
+++ b/README
@@ -183,6 +183,10 @@ Directory Hierarchy:
183 /mips32 Files specific to MIPS32 CPUs 183 /mips32 Files specific to MIPS32 CPUs
184 /xburst Files specific to Ingenic XBurst CPUs 184 /xburst Files specific to Ingenic XBurst CPUs
185 /lib Architecture specific library files 185 /lib Architecture specific library files
186 /nds32 Files generic to NDS32 architecture
187 /cpu CPU specific files
188 /n1213 Files specific to Andes Technology N1213 CPUs
189 /lib Architecture specific library files
186 /nios2 Files generic to Altera NIOS2 architecture 190 /nios2 Files generic to Altera NIOS2 architecture
187 /cpu CPU specific files 191 /cpu CPU specific files
188 /lib Architecture specific library files 192 /lib Architecture specific library files
@@ -3156,7 +3160,7 @@ Low Level (hardware related) configuration options:
3156 globally (CONFIG_CMD_MEM). 3160 globally (CONFIG_CMD_MEM).
3157 3161
3158- CONFIG_SKIP_LOWLEVEL_INIT 3162- CONFIG_SKIP_LOWLEVEL_INIT
3159 [ARM, MIPS only] If this variable is defined, then certain 3163 [ARM, NDS32, MIPS only] If this variable is defined, then certain
3160 low level initializations (like setting up the memory 3164 low level initializations (like setting up the memory
3161 controller) are omitted and/or U-Boot does not 3165 controller) are omitted and/or U-Boot does not
3162 relocate itself into RAM. 3166 relocate itself into RAM.
@@ -3723,8 +3727,8 @@ details; basically, the header defines the following image properties:
3723 Currently supported: Linux, NetBSD, VxWorks, QNX, RTEMS, LynxOS, 3727 Currently supported: Linux, NetBSD, VxWorks, QNX, RTEMS, LynxOS,
3724 INTEGRITY). 3728 INTEGRITY).
3725* Target CPU Architecture (Provisions for Alpha, ARM, AVR32, Intel x86, 3729* Target CPU Architecture (Provisions for Alpha, ARM, AVR32, Intel x86,
3726 IA64, MIPS, Nios II, PowerPC, IBM S390, SuperH, Sparc, Sparc 64 Bit; 3730 IA64, MIPS, NDS32, Nios II, PowerPC, IBM S390, SuperH, Sparc, Sparc 64 Bit;
3727 Currently supported: ARM, AVR32, Intel x86, MIPS, Nios II, PowerPC). 3731 Currently supported: ARM, AVR32, Intel x86, MIPS, NDS32, Nios II, PowerPC).
3728* Compression Type (uncompressed, gzip, bzip2) 3732* Compression Type (uncompressed, gzip, bzip2)
3729* Load Address 3733* Load Address
3730* Entry Point 3734* Entry Point
@@ -4417,6 +4421,20 @@ On Nios II, the ABI is documented here:
4417 Note: on Nios II, we give "-G0" option to gcc and don't use gp 4421 Note: on Nios II, we give "-G0" option to gcc and don't use gp
4418 to access small data sections, so gp is free. 4422 to access small data sections, so gp is free.
4419 4423
4424On NDS32, the following registers are used:
4425
4426 R0-R1: argument/return
4427 R2-R5: argument
4428 R15: temporary register for assembler
4429 R16: trampoline register
4430 R28: frame pointer (FP)
4431 R29: global pointer (GP)
4432 R30: link register (LP)
4433 R31: stack pointer (SP)
4434 PC: program counter (PC)
4435
4436 ==> U-Boot will use R10 to hold a pointer to the global data
4437
4420NOTE: DECLARE_GLOBAL_DATA_PTR must be used with file-global scope, 4438NOTE: DECLARE_GLOBAL_DATA_PTR must be used with file-global scope,
4421or current versions of GCC may "optimize" the code too much. 4439or current versions of GCC may "optimize" the code too much.
4422 4440