]> git.kernelconcepts.de Git - karo-tx-uboot.git/blobdiff - doc/README.standalone
buildman: Permit branch names with an embedded '/'
[karo-tx-uboot.git] / doc / README.standalone
index 39988317ee5971abf7240bf01e641e30aeb71aa3..2be5f27696fcf84fbe50b9da704e7fa160bd4bf5 100644 (file)
@@ -19,11 +19,12 @@ Design Notes on Exporting U-Boot Functions to Standalone Applications:
    thus the compiler cannot perform type checks on these assignments.
 
 2. The pointer to the jump table is passed to the application in a
-   machine-dependent way. PowerPC, ARM and MIPS architectures use a
-   dedicated register to hold the pointer to the 'global_data'
-   structure: r29 on PowerPC, r8 on ARM and k0 on MIPS. The x86
-   architecture does not use such a register; instead, the pointer to
-   the 'global_data' structure is passed as 'argv[-1]' pointer.
+   machine-dependent way. PowerPC, ARM, MIPS, Blackfin and Nios II
+   architectures use a dedicated register to hold the pointer to the
+   'global_data' structure: r2 on PowerPC, r8 on ARM, k0 on MIPS,
+   P3 on Blackfin and gp on Nios II. The x86 architecture does not
+   use such a register; instead, the pointer to the 'global_data'
+   structure is passed as 'argv[-1]' pointer.
 
    The application can access the 'global_data' structure in the same
    way as U-Boot does:
@@ -39,7 +40,7 @@ Design Notes on Exporting U-Boot Functions to Standalone Applications:
    that returns the ABI version of the running U-Boot. I.e., a
    typical application startup may look like this:
 
-       int my_app (int argc, char *argv[])
+       int my_app (int argc, char * const argv[])
        {
                app_startup (argv);
                if (get_version () != XF_VERSION)
@@ -49,11 +50,14 @@ Design Notes on Exporting U-Boot Functions to Standalone Applications:
 4. The default load and start addresses of the applications are as
    follows:
 
-               Load address    Start address
-       x86     0x00040000      0x00040000
-       PowerPC 0x00040000      0x00040004
-       ARM     0x0c100000      0x0c100000
-       MIPS    0x80200000      0x80200000
+                       Load address    Start address
+       x86             0x00040000      0x00040000
+       PowerPC         0x00040000      0x00040004
+       ARM             0x0c100000      0x0c100000
+       MIPS            0x80200000      0x80200000
+       Blackfin        0x00001000      0x00001000
+       NDS32           0x00300000      0x00300000
+       Nios II         0x02000000      0x02000000
 
    For example, the "hello world" application may be loaded and
    executed on a PowerPC board with the following commands: