nuttx/arch/arm/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
..
a1x arch: arm: include: nxstyle fixes 2021-03-22 19:28:38 -07:00
am335x arch: arm: am335x: Petro Karashchenko: update licenses to Apache 2021-04-01 12:13:12 -05:00
arm arm: armv7-a/r and armv8-r up_cpu_index inline 2024-09-06 03:44:49 +08:00
armv6-m arm: armv7-a/r and armv8-r up_cpu_index inline 2024-09-06 03:44:49 +08:00
armv7-a arm: armv7-a/r and armv8-r up_cpu_index inline 2024-09-06 03:44:49 +08:00
armv7-m arm: armv7-a/r and armv8-r up_cpu_index inline 2024-09-06 03:44:49 +08:00
armv7-r arm: armv7-a/r and armv8-r up_cpu_index inline 2024-09-06 03:44:49 +08:00
armv8-m arm: armv7-a/r and armv8-r up_cpu_index inline 2024-09-06 03:44:49 +08:00
armv8-r arm: armv7-a/r and armv8-r up_cpu_index inline 2024-09-06 03:44:49 +08:00
at32 Fix nuttx coding style 2023-12-13 17:29:08 +01:00
c5471 arch: arm: include: nxstyle fixes 2021-03-22 19:28:38 -07:00
csk6 arm: Add support for CSK6011A SOC and CSK6011A-NANO board 2024-09-05 09:34:33 -03:00
cxd32xx arch: cxd32xx: Add cxd32xx SoC support 2024-06-04 22:21:56 +08:00
cxd56xx arch: cxd56xx: Fix SCU sensor data format 2024-08-27 12:28:50 +02:00
dm320 arch: arm: include: nxstyle fixes 2021-03-22 19:28:38 -07:00
efm32 include: fix double include pre-processor guards 2022-01-16 11:11:14 -03:00
eoss3 Update kconfig2html.c 2023-12-14 20:02:52 -08:00
fvp-v8r-aarch32 Remove @ and % tag from all comments 2023-12-11 17:00:10 -03:00
gd32f4 add gd32f470i board support 2023-10-21 11:45:03 -03:00
goldfish arch/arm: GoldFish Platform support 2023-09-10 23:10:06 +08:00
imx1 arch: arm: include: nxstyle fixes 2021-03-22 19:28:38 -07:00
imx6 arch: arm: include: nxstyle fixes 2021-03-22 19:28:38 -07:00
imxrt Update kconfig2html.c 2023-12-14 20:02:52 -08:00
kinetis Update kconfig2html.c 2023-12-14 20:02:52 -08:00
kl arch: arm: include: nxstyle fixes 2021-03-22 19:28:38 -07:00
lc823450 arch: arm: include: nxstyle fixes 2021-03-22 19:28:38 -07:00
lpc17xx_40xx include: fix double include pre-processor guards 2022-01-16 11:11:14 -03:00
lpc31xx arch: arm: include: nxstyle fixes 2021-03-22 19:28:38 -07:00
lpc43xx arch: arm: include: nxstyle fixes 2021-03-22 19:28:38 -07:00
lpc54xx include: fix double include pre-processor guards 2022-01-16 11:11:14 -03:00
lpc214x arch: arm: include: nxstyle fixes 2021-03-22 19:28:38 -07:00
lpc2378 arch: arm: update licenses to Apache 2021-05-31 01:37:27 -05:00
max326xx include: fix double include pre-processor guards 2022-01-16 11:11:14 -03:00
moxart arch: arm: include: nxstyle fixes 2021-03-22 19:28:38 -07:00
mps mps3:Support NuttX running on qemu cortex-m55 2024-04-26 18:42:35 -03:00
mx8mp Handle GPIO IRQs 2023-09-06 12:30:35 +08:00
nrf52 NuttX: Janne Rosberg: update licenses to Apache 2021-04-10 06:42:19 -05:00
nrf53 arch/nrf53: UART0-3, SPI0-3 and TWI0-3 instances share the same interrupt vectors 2023-05-19 21:36:49 -07:00
nrf91 arch/arm: initial support for NRF91 2023-07-02 10:10:35 -03:00
nuc1xx arch: arm: include: nxstyle fixes 2021-03-22 19:28:38 -07:00
phy62xx include: fix double include pre-processor guards 2022-01-16 11:11:14 -03:00
qemu arch/arm: add qemu support for ARM32 2023-08-15 23:56:41 +08:00
rp2040 Add watchdog driver support to RP2040 2022-09-08 21:41:13 +08:00
s32k1xx arch: arm: include: nxstyle fixes 2021-03-22 19:28:38 -07:00
s32k3xx Add initial support for NXP S32K3 MCU family 2022-07-25 23:47:05 +08:00
sam34 arch: arm: include: nxstyle fixes 2021-03-22 19:28:38 -07:00
sama5 sama5: add support for QSPI 2023-11-08 21:58:02 +01:00
samd2l2 arch: arm: include: nxstyle fixes 2021-03-22 19:28:38 -07:00
samd5e5 include: fix double include pre-processor guards 2022-01-16 11:11:14 -03:00
samv7 Update kconfig2html.c 2023-12-14 20:02:52 -08:00
stm32 stm32f401rc-rs485: Add rs-485 support 2024-01-07 17:15:59 -08:00
stm32f0l0g0 stm32f0l0g0: Add GPIOE to STM32G0x 2023-05-10 18:01:07 +08:00
stm32f7 arch: Nxstyle fixes 2021-04-01 12:13:12 -05:00
stm32h7 add stm32h755II chip 2024-05-17 10:16:39 -03:00
stm32l4 arch: arm: update licenses to Apache 2021-05-31 01:37:27 -05:00
stm32l5 arch: arm: include: nxstyle fixes 2021-03-22 19:28:38 -07:00
stm32u5 Initial support for NUCLEO-U5A5ZJ-Q board 2023-07-23 18:42:05 -07:00
stm32wb New stm32wb chip family 2022-07-01 12:13:58 +08:00
stm32wl5 stm32wl5: add new chip family 2022-06-07 22:28:32 +08:00
str71x arch: arm: include: nxstyle fixes 2021-03-22 19:28:38 -07:00
tiva include: fix double include pre-processor guards 2022-01-16 11:11:14 -03:00
tlsr82 arm: armv7-a/r and armv8-r up_cpu_index inline 2024-09-06 03:44:49 +08:00
tms570 arch: arm: include: nxstyle fixes 2021-03-22 19:28:38 -07:00
xmc4 arch: arm: include: nxstyle fixes 2021-03-22 19:28:38 -07:00
.gitignore
arch.h sched/addrenv: Remove up_addrenv_restore 2023-02-08 02:51:23 +08:00
elf.h elf: Move 32/64bit generic mapping from risc-v/arch_elf.c to elfxx.h 2023-07-10 13:09:47 -03:00
inttypes.h arch/arm: Document the clever trick of PRI?32 macros 2022-11-01 23:11:16 +01: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: Define WCHAR_[MIN|MAX] in arch/include/limits.h 2022-06-03 22:25:49 +03:00
setjmp.h arch/arm: Support setjmp/longjmp for all socs 2022-03-09 17:13:21 +02:00
spinlock.h nuttx: fix multiple 'FAR', 'CODE' and style issues 2024-08-25 19:22:15 +08:00
stdarg.h arch/strarg: provide the stdarg implementation for greenhills compiler 2024-08-19 10:37:54 +08:00
syscall.h toolchain/ghs: fix the inline assembly code register alloc compile error 2024-08-11 14:28:12 -03:00
types.h types.h: fix windows build error 2024-08-14 22:36:57 +08:00