incubator-nuttx/Documentation
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
..
ReleaseNotes Documentation: add NuttX-12.6.0 release notes 2024-07-16 18:19:12 +08:00
_extensions Documentation: port warnings_filter Sphinx extension from Zephyr 2023-11-28 09:18:29 -08:00
_static docs: reduce main content max width from 1200px to 1000px 2021-03-26 23:41:45 -05:00
_templates Documentation: support versioned docs 2020-11-26 10:58:44 -08:00
applications docs: add gprof usage documentation 2024-10-10 18:46:51 +08:00
components nuttx/can.h: support timestamp for can frame 2024-10-16 17:04:31 +08:00
contributing Documentation: Clarifying the workflow of building the documentation 2024-09-30 08:34:34 +08:00
faq DOC: Add how to get application on NSH 2024-06-06 02:39:56 +08:00
guides Doc: Migrate Versioning and Task Names 2024-10-15 09:45:43 +08:00
implementation Documentation: Fix code block in implementation/simulation.rst 2024-09-30 08:33:39 +08:00
introduction Documentation: replace m2r2 with myst-parser 2024-08-30 01:14:36 +08:00
logos Documentation: Add NuttX Logo page 2024-04-16 11:25:08 +08:00
platforms mps3-an547:let ap build with pic,and use bootloader boot it 2024-10-16 18:40:06 +08:00
quickstart gdb plugin: Encapsulate the gdb native command gcore as nxgcore 2024-09-20 22:07:29 +08:00
reference fs: support VFS-based named event group 2024-10-09 01:40:00 +08:00
.gitignore doc: add .python-version to .gitignore 2020-08-25 12:54:24 -07:00
Makefile fs: Add VFS docs 2024-02-20 18:28:09 -08:00
Pipfile Documentation: replace m2r2 with myst-parser 2024-08-30 01:14:36 +08:00
Pipfile.lock build(deps): bump zipp from 3.16.2 to 3.19.1 in /Documentation 2024-07-10 03:36:22 +08:00
conf.py Documentation: replace m2r2 with myst-parser 2024-08-30 01:14:36 +08:00
glossary.rst rename doc/ -> Documentation/ 2020-08-24 10:29:55 -07:00
index.rst Documentation: Add NuttX Logo page 2024-04-16 11:25:08 +08:00
known-warnings.txt fs: Add VFS docs 2024-02-20 18:28:09 -08:00
legacy_README.md Documentation: replace m2r2 with myst-parser 2024-08-30 01:14:36 +08:00
make.bat Documentation: Remove all tail spaces from *.rst and *.html 2020-10-18 10:51:22 -07:00
substitutions.rst Remove the double blank line from source files 2022-02-20 20:10:14 +01:00