mirror of
https://github.com/u-boot/u-boot.git
synced 2025-05-09 03:21:51 +00:00
riscv: Support standalone
Run hello_world successfully. U-Boot 2018.01-rc2-00033-gb265b91-dirty (Dec 22 2017 - 13:54:21 +0800) DRAM: 1 GiB MMC: mmc@f0e00000: 0 SF: Detected mx25u1635e with page size 256 Bytes, erase size 4 KiB, total 2 MiB In: serial@f0300000 Out: serial@f0300000 Err: serial@f0300000 Net: Warning: mac@e0100000 (eth0) using random MAC address - 0a:47:9b:f8:b4:f2 eth0: mac@e0100000 RISC-V # mmc rescan RISC-V # fatls mmc 0:1 318907 u-boot-ae250-64.bin 1252 hello_world_ae250_32.bin 328787 u-boot-ae250-32.bin 3 file(s), 0 dir(s) RISC-V # fatload mmc 0:1 0x600000 hello_world_ae250_32.bin reading hello_world_ae250_32.bin 1252 bytes read in 23 ms (52.7 KiB/s) RISC-V # go 0x600000 Example expects ABI version 9 Actual U-Boot ABI version 9 Hello World argc = 1 argv[0] = "0x600000" argv[1] = "$B@" Hit any key to exit ... RISC-V # Signed-off-by: Rick Chen <rick@andestech.com> Signed-off-by: Rick Chen <rickchen36@gmail.com> Signed-off-by: Greentime Hu <green.hu@gmail.com>
This commit is contained in:
parent
42ac26f2b0
commit
c7d7e80acd
2 changed files with 53 additions and 0 deletions
|
@ -172,6 +172,18 @@ gd_t *global_data;
|
|||
" lwi $r16, [$r16 + (%1)]\n" \
|
||||
" jr $r16\n" \
|
||||
: : "i"(offsetof(gd_t, jt)), "i"(FO(x)) : "$r16");
|
||||
#elif defined(CONFIG_RISCV)
|
||||
/*
|
||||
* t7 holds the pointer to the global_data. gp is call clobbered.
|
||||
*/
|
||||
#define EXPORT_FUNC(f, a, x, ...) \
|
||||
asm volatile ( \
|
||||
" .globl " #x "\n" \
|
||||
#x ":\n" \
|
||||
" lw x19, %0(gp)\n" \
|
||||
" lw x19, %1(x19)\n" \
|
||||
" jr x19\n" \
|
||||
: : "i"(offsetof(gd_t, jt)), "i"(FO(x)) : "x19");
|
||||
#elif defined(CONFIG_ARC)
|
||||
/*
|
||||
* r25 holds the pointer to the global_data. r10 is call clobbered.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue