nuttx/arch/risc-v/include
hujun5 908df725ad arch: use up_current_regs/up_set_current_regs replace CURRENT_REGS
reason:
1 On different architectures, we can utilize more optimized strategies
  to implement up_current_regs/up_set_current_regs.
eg. use interrupt registersor percpu registers.

code size
before
    text    data     bss     dec     hex filename
 262848   49985   63893  376726   5bf96 nuttx

after
       text    data     bss     dec     hex filename
 262844   49985   63893  376722   5bf92 nuttx

size change -4

Configuring NuttX and compile:
$ ./tools/configure.sh -l qemu-armv8a:nsh_smp
$ make
Running with qemu
$ qemu-system-aarch64 -cpu cortex-a53 -smp 4 -nographic \
   -machine virt,virtualization=on,gic-version=3 \
   -net none -chardev stdio,id=con,mux=on -serial chardev:con \
   -mon chardev=con,mode=readline -kernel ./nuttx

Signed-off-by: hujun5 <hujun5@xiaomi.com>
2024-09-13 23:18:58 +08:00
..
bl602 arch: Remove the inclusion of arch/irq.h from chip/irq.h 2022-07-04 13:03:47 +03:00
bl808 risc-v/bl808: Add watchdog driver 2024-07-27 22:59:23 +08:00
c906 arch: Remove the inclusion of arch/irq.h from chip/irq.h 2022-07-04 13:03:47 +03:00
esp32c3 risc-v/espressif: Rename espressif/esp32c3 as esp32c3 2024-01-30 08:32:05 +01:00
esp32c3-legacy risc-v/esp32c3: Rename legacy approach esp32c3 as esp32c3-legacy 2024-01-30 08:32:05 +01:00
esp32c6 risc-v/espressif: Rename espressif/esp32c3 as esp32c3 2024-01-30 08:32:05 +01:00
esp32h2 risc-v/espressif: Rename espressif/esp32c3 as esp32c3 2024-01-30 08:32:05 +01:00
fe310 arch: Remove the inclusion of arch/irq.h from chip/irq.h 2022-07-04 13:03:47 +03:00
hpm6000 Add support for hpm6360evk 2024-02-18 09:17:56 -08:00
hpm6750 add hpmicro chip: hpm6750 2023-02-09 14:17:49 +08:00
jh7110 arch/risc-v: Add support for StarFive JH7110 SoC 2023-08-03 22:55:55 -07:00
k210 arch: Remove the inclusion of arch/irq.h from chip/irq.h 2022-07-04 13:03:47 +03:00
k230 risc-v/k230: add IPI support to speed up RPTUN/RPMSG 2024-02-21 04:37:03 -08:00
litex risc-v/litex: fix typo in litex/irq.h 2024-01-06 04:15:52 -08:00
mpfs risc-v/mpfs: add athena irq defines 2023-02-15 00:21:03 +08:00
qemu-rv arch: Remove the inclusion of arch/irq.h from chip/irq.h 2022-07-04 13:03:47 +03:00
rv32m1 arch: Remove the inclusion of arch/irq.h from chip/irq.h 2022-07-04 13:03:47 +03:00
sg2000 arch/risc-v: Add support for SOPHGO SG2000 SoC (T-Head C906) 2024-06-17 09:41:29 +08:00
thead arch/riscv: add T-HEAD CSR mapping 2024-04-11 22:20:39 +08:00
.gitignore
arch.h risc-v/arch.h: revising comments 2024-03-25 20:39:24 +08:00
barriers.h riscv/barrier: Define more granular memory barriers 2023-06-14 16:14:57 -03:00
csr.h arch/risc-v: introduce AIA support 2024-07-31 12:43:04 -03:00
elf.h arch/risc-v/include/elf.f: Support coredump for rv32 and rv64 targets. 2024-06-18 10:41:56 +08:00
inttypes.h arch/risc-v: move PRIxREG to inttypes.h 2024-06-22 22:00:06 +08:00
irq.h arch: use up_current_regs/up_set_current_regs replace CURRENT_REGS 2024-09-13 23:18:58 +08:00
limits.h arch/risc-v: initial qemu-rv64ilp32 support 2024-06-14 19:50:00 +08:00
mode.h arch/risc-v: introduce AIA support 2024-07-31 12:43:04 -03:00
setjmp.h arch/risc-v: Save/Load float register in setjmp 2022-03-09 10:15:54 +02:00
spinlock.h nuttx: fix multiple 'FAR', 'CODE' and style issues 2024-08-25 19:22:15 +08:00
stdarg.h
syscall.h Revert "arch/riscv: unify in-kernel syscall" 2024-09-04 09:47:49 -03:00
types.h types.h: fix windows build error 2024-08-14 22:36:57 +08:00