Lines Matching +full:application +full:- +full:notes

1 Design Notes on Exporting U-Boot Functions to Standalone Applications:
4 1. The functions are exported by U-Boot via a jump table. The jump
15 gd->jt->malloc = my_malloc;
16 gd->jt->free = my_free;
21 2. The pointer to the jump table is passed to the application in a
22 machine-dependent way. PowerPC, ARM, MIPS, Blackfin and Nios II
27 structure is passed as 'argv[-1]' pointer.
29 The application can access the 'global_data' structure in the same
30 way as U-Boot does:
34 printf("U-Boot relocation offset: %x\n", gd->reloc_off);
36 3. The application should call the app_startup() function before any
38 application may want to check the version of the ABI provided by
39 U-Boot. To facilitate this, a get_version() function is exported
40 that returns the ABI version of the running U-Boot. I.e., a
41 typical application startup may look like this:
61 RISC-V 0x00600000 0x00600000
63 For example, the "hello world" application may be loaded and
72 - Append the following line at the end of the include/_exports.h
78 - the first parameter is the function that is exported (default implementation)
79 - the second parameter is the return value type
80 - the third parameter is the name of the member in struct jt_funcs
81 this is also the name that the standalone application will used.
84 - Add the prototype for this function to the include/exports.h
93 gd->jt->foobar = another_foobar;
97 - Increase the XF_VERSION value by one in the include/exports.h
100 - If you want to export a function which depends on a CONFIG_XXX
109 6. The code for exporting the U-Boot functions to applications is
110 mostly machine-independent. The only places written in assembly
118 Note that these functions may only use call-clobbered registers;