Commit Graph

25 Commits

Author SHA1 Message Date
ouyangxiangzhen 17c51c0667 userspace: Exclude nuttx/arch.h
This patch fixed userspace headers conflict. Architecture-related definition and API should not be exposed to users.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2024-11-01 16:59:37 +08:00
wangmingrong1 240dc3d5e1 mps/clang: Add a defconfig for mps to support clang compilation
1. Enable compiler_rt library builtin function

Signed-off-by: wangmingrong1 <wangmingrong1@xiaomi.com>
2024-10-28 22:19:58 +08:00
raiden00pl 77303f389f Documentation: migrate README.txt from boards and fixes for mps boards
migrate some README.txt form boards/ and fixes for mps boards rst
2024-10-24 17:47:10 +08:00
anjiahao 15fa55f234 mps3-an547:let ap build with pic,and use bootloader boot it
Implement PIC loading in armv8-m qemu,
for example: load address-independent AP ELF in the bootloader,
and the text segment in AP ELF is XIP,
no need to apply for memory and modify it.

Two config:

bootloader abbreviation bl:
  use romfs to load ap elf, use the boot command to parse and jump to ap

application abbreviation ap:
  run os test

We need to compile ap first, then compile bl.

compile step:
  ./tools/configure.sh mps3-an547:ap
  make -j20
  mkdir -p pic
  cp boot pic/.
  genromfs -a 128 -f ../romfs.img -d pic
  make distclean -j20
  ./tools/configure.sh mps3-an547:bl
  make -j20

run qemu:
  qemu-system-arm -M mps3-an547 -m 2G -nographic -kernel nuttx.bin \
    -gdb tcp::1127 -device loader,file=../romfs.img,addr=0x60000000

  nsh> boot /etc/boot
  ap> ostest

Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2024-10-16 18:40:06 +08:00
anjiahao 3e9c2e00ea mps:support bootloader and ap defconfig build
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2024-10-16 18:40:06 +08:00
anjiahao 67cbd7491a mps3-an547:add defconfig for pic run ostest
1. ./tools/configure.sh mps3-an547:picostest
2. make -j20
3. genromfs -f romfs.img -d ../apps/bin/
4. qemu-system-arm -M mps3-an547 -m 2G -nographic \
   -kernel nuttx.bin -gdb tcp::1127 \
   -device loader,file=romfs.img,addr=0x60000000
5. nsh> /pic/hello
5. nsh> /pic/ostest

Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2024-10-16 18:40:06 +08:00
anjiahao dae3b8e551 mps3-an547:use common elf cflags
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2024-10-16 18:40:06 +08:00
wangmingrong1 16c90ada1c mps/bringup: Add initialization of tmpfs
Signed-off-by: wangmingrong1 <wangmingrong1@xiaomi.com>
2024-10-16 07:57:15 +08:00
guoshichao 39690a994f mps2-an521: remove the unnecessary -pipe build options
Signed-off-by: guoshichao <guoshichao@xiaomi.com>
2024-10-15 09:46:06 +08:00
guoshichao d1d2709177 ghs: fix the build warning with ghs compiler
the detailed warning info:
ccarm: Warning: Unknown option "-Wno-cpp" ignored.  Did you mean "--nocpp"?
ccarm: Warning: Unknown option "-pipe" passed to linker

Signed-off-by: guoshichao <guoshichao@xiaomi.com>
2024-10-15 01:02:36 +08:00
wangmingrong1 c565996b45 mps/cmake: add cmake build
1. fix comments
2. mps2-an500:add mps2-an500 cmake build
3. mps2-an521:add mps2-an521 cmake build

Signed-off-by: wangmingrong1 <wangmingrong1@xiaomi.com>
2024-10-12 15:35:16 +08:00
anjiahao 82d82c5aec mps3-an547:add mps3-an547 cmake build
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2024-10-12 15:35:16 +08:00
anjiahao e5f9b42ea0 binfmt/libelf:Remove libelf implementation [2/2]
this commit is part two, all logic move to modlib, so we can remove it.
and change all use defconfig

Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2024-10-12 12:29:06 +08:00
ligd 23ad93f430 mps: update the mps3-an547 mps2-an500 defconfig
Fix compile failed when open BASEPRI
Open same feature on mps3

Signed-off-by: ligd <liguiding1@xiaomi.com>
2024-09-30 20:06:52 +08:00
qinwei1 9f97d9abb0 boards/arm.mps/mps2-an521: add support for mps-521 board
Summary
   MPS-521 support Dual Cortex-M33 and maybe suitable for AMP-like
case which is for AUTO OS, the change
  1. add support for single core at msp-521 with nsh bringup
  2. testing with ostest

TODO:
  Dual core support for flat-build
  Dual CORE support for Protected Build

Signed-off-by: qinwei1 <qinwei1@xiaomi.com>
Signed-off-by: ligd <liguiding1@xiaomi.com>
2024-09-30 20:06:52 +08:00
qinwei1 02f1d732a9 arch/arm/src/mps: implement Protected Build for mps2-an500
Summary
 1. add Protected build Support for ARM MPS AN500
 2. refine mps Memory layout configure and enable MPU support
Note
 1. ostest for an547:nsh
 2. ostest for an500:nsh and an500:knsh

Signed-off-by: qinwei1 <qinwei1@xiaomi.com>
Signed-off-by: ligd <liguiding1@xiaomi.com>
2024-09-30 20:06:52 +08:00
Huang Qi 75e4bd1389 docs: Migrate MPS board documentation
Migrate docs of MPS board from its board directory to
common Documentation place.

Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2024-09-12 10:26:08 -03:00
yanghuatao c43c91816d toolchain/ghs: add ghs link script for mps2-an500 platform
Signed-off-by: yanghuatao <yanghuatao@xiaomi.com>
2024-09-09 01:26:13 +08:00
guoshichao 99df615c9b toolchain/ghs: fix the ghs build warning
CXX:  libcxxmini/libxx_new.cxx cxarm: cxarm: cxarm: cxarm: Warning: cxarm: cxarm: Unknown option "--gnu++17" passed to linker
Warning: Warning: Warning: Warning: cxarm: Unknown option "--gnu++17" passed to linker
Unknown option "--gnu++17" passed to linker
Warning: Unknown option "--gnu++17" passed to linker
Unknown option "--gnu++17" passed to linker
Unknown option "--gnu++17" passed to linker
Warning: Unknown option "--gnu++17" passed to linker
CXX:  libcxxmini/libxx_newa.cxx cxarm: Warning: Unknown option "--gnu++17" passed to linker

Signed-off-by: guoshichao <guoshichao@xiaomi.com>
2024-09-08 21:42:13 +08:00
guoshichao 4c01594d5b nuttx: remove the unnecessary -pipe build option
Signed-off-by: guoshichao <guoshichao@xiaomi.com>
2024-08-31 10:22:20 +08:00
yanghuatao fac44ab8aa nuttx/mps2: Support NuttX running on qemu cortex-m7
Signed-off-by: yanghuatao <yanghuatao@xiaomi.com>
2024-08-25 22:56:46 +08:00
hujun5 4cb419866f arch: inline up_testset in arm arm64 riscv xtensa
test:
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-08-21 01:45:10 +08:00
cuiziwei e21885b84a nuttx/boards:Uniform initialization format for init_array.
(1) Keep the `.init_array` and `.ctors` symbols and sort them according to their initialization priority.
(2) Exclude symbols ending with crtend.* and crtbegin.* to support c++
application.if we not exclude crtend.* crtbegin.* frame_dummy will be
added when enable any c++ application with global variables, this symbol
execution is problematic, removing it does not affect the application.

Signed-off-by: cuiziwei <cuiziwei@xiaomi.com>
2024-08-19 19:48:32 +08:00
anjiahao 8c8ccbf039 mps3-an547:support mps3-an547 reset
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2024-08-12 01:59:35 +08:00
anjiahao 1ea10ddacc mps3:Support NuttX running on qemu cortex-m55
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2024-04-26 18:42:35 -03:00