Commit Graph

4305 Commits

Author SHA1 Message Date
Tiago Medicci Serrano d1fd1ed8f6 boards/esp32s3: Merge MCUboot and "simple-boot" linker scripts
To make it easier to keep the linker scripts updated for both
MCUboot and "simple-boot", this commit merges them into a single
linker script with macros to enable/disable specific sections.
2024-10-23 22:26:39 +08:00
Huang Qi f933b1644e boards/risc-v: Remove ref to riscv_internal.h
`riscv_internal.h` is a private chip level header file,
and it should not be included in the board files.

Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2024-10-23 22:25:10 +08:00
Rodrigo Sim e16d1218ae arm/stm32f401rc-rs485: Add support to WS2812 addressable LED
Signed-off-by: Rodrigo Sim <rcsim10@gmail.com>
2024-10-23 09:20:44 -03:00
cuiziwei 60e7a0074d nuttx/arch:Enabling ARCH_MATH_H is required when compiling sim with the 13.2 version of the toolchain.
Signed-off-by: cuiziwei <cuiziwei@xiaomi.com>
Signed-off-by: ligd <liguiding1@xiaomi.com>
2024-10-23 20:10:43 +08:00
cuiziwei 002f3c75e4 nuttx/sim: Fix m64 build error.
LD:  nuttx
 nuttx.rel: in function `ff_dct32_float_sse2':
 (.text+0x66f9e): relocation truncated to fit: R_X86_64_32S against symbol `ff_cos_32' defined in .bss.ff_cos_32 section in nuttx.rel
 (.text+0x66fa7): relocation truncated to fit: R_X86_64_32S against symbol `ff_cos_32' defined in .bss.ff_cos_32 section in nuttx.rel
 (.text+0x672a6): relocation truncated to fit: R_X86_64_32S against symbol `ff_cos_16' defined in .bss.ff_cos_16 section in nuttx.rel
 (.text+0x672ae): relocation truncated to fit: R_X86_64_32S against symbol `ff_cos_16' defined in .bss.ff_cos_16 section in nuttx.rel
 nuttx.rel: in function `ff_imdct_calc_sse':
 (.text+0x67905): relocation truncated to fit: R_X86_64_32S against symbol `ff_cos_64' defined in .bss.ff_cos_64 section in nuttx.rel
 (.text+0x67948): relocation truncated to fit: R_X86_64_32S against symbol `ff_cos_128' defined in .bss.ff_cos_128 section in nuttx.rel
 (.text+0x67988): relocation truncated to fit: R_X86_64_32S against symbol `ff_cos_256' defined in .bss.ff_cos_256 section in nuttx.rel
 (.text+0x679c8): relocation truncated to fit: R_X86_64_32S against symbol `ff_cos_512' defined in .bss.ff_cos_512 section in nuttx.rel
 (.text+0x67a08): relocation truncated to fit: R_X86_64_32S against symbol `ff_cos_1024' defined in .bss.ff_cos_1024 section in nuttx.rel
 (.text+0x67a48): relocation truncated to fit: R_X86_64_32S against symbol `ff_cos_2048' defined in .bss.ff_cos_2048 section in nuttx.rel
 (.text+0x67a88): additional relocation overflows omitted from the output

Signed-off-by: cuiziwei <cuiziwei@xiaomi.com>
2024-10-23 20:09:55 +08:00
cuiziwei 7e925dbeaa libxx: C++ low level library select LIBSUPCXX by default.
Signed-off-by: cuiziwei <cuiziwei@xiaomi.com>
2024-10-23 20:09:16 +08:00
Jukka Laitinen 4752ef3653 boards/imx93-evk: Define CONFIG_BOARD_LOOPSPERMSEC
Use value measured with 1.8GHz CPU speed

Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2024-10-23 14:28:18 +08:00
yinshengkai d063ca46c7 sim: fix asan address space conflict
Modify the starting position of the elf segment to 0x5000000

==2561587==Shadow memory range interleaves with an existing memory mapping. ASan cannot proceed correctly. ABORTING.
==2561587==ASan shadow was supposed to be located in the [0x1ffff000-0x3fffffff] range.
==2561587==Process memory map follows:

Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2024-10-23 10:27:13 +08:00
Matteo Golin bbc95d70db adc: Implement ADC driver interface for MCP3008 over SPI. Includes documentation page for the driver, and inclusion of driver registration code for RP2040-based boards. 2024-10-22 13:56:23 +08:00
TAiGA ad92b72470 risc-v/esp32: Fixed File-system mount point 2024-10-22 13:33:19 +08:00
Leo Chung 512c56e1f3 esp32c6-devkit: Remove -Werror to fix compile error
Signed-off-by: Leo Chung <gewalalb@gmail.com>
2024-10-22 13:32:44 +08:00
Bowen Wang 39560fd245 sim:rpserver_virtio and rpproxy_virtio: add rpmsg_virtio config for sim
add rpserver_virtio and rproxy_virtio to verify the rpmsg virtio transport

Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
2024-10-22 08:55:57 +08:00
raiden00pl 17daa06222 boards/arm/stm32f7/nucleo-xxxx: refresh config 2024-10-22 08:53:07 +08:00
raiden00pl 91b71867c5 boards/arm/stm32f7: fix nucleo boards break for cmake
fix nucleo-f722ze and nucleo-f746zg/pysim break for cmake
2024-10-22 08:53:07 +08:00
davidiogos ef56aabe19 boards: riscv: esp32c6: Add partitioning support for OTA
Add support for memory partitioning for OTA updates.
This feature is targeted at the integration of ESP32 boards with RISC-V architecture in conjunction with MCUboot

Signed-off-by: davidiogos <davi.silva@agrosystem.com.br>
2024-10-21 14:55:17 -03:00
davidiogos 092af63594 add OTA to esp32c6 2024-10-21 14:55:17 -03:00
simbit18 d4aa30a171 boards/arm/stm32f7: fixed removed endif() in cmakefile nucleo-f746zg nucleo-f722ze nucleo-f767zi
fix

CMake Error at boards/arm/stm32f7/nucleo-f746zg/src/CMakeLists.txt:76 (endif):
  Flow control statements are not properly nested.
CMake Error at boards/arm/stm32f7/nucleo-f746zg/src/CMakeLists.txt:76 (endif):
  Flow control statements are not properly nested.
-- Configuring incomplete, errors occurred!
2024-10-21 19:22:45 +02:00
Felipe Moura 0496f357c9 Fix spi slave communication issue 2024-10-21 12:21:39 +08:00
raiden00pl 6f8953ed0b boards/arm/stm32f7: move SPI test logic to common
move STM32F7 SPI test logic to common
2024-10-21 09:23:44 +08:00
raiden00pl 56e07b0606 boards/arm/stm32f7/nucleo: remove not used stm32_dma_alloc.c
remove not used stm32_dma_alloc.c
2024-10-21 09:23:44 +08:00
raiden00pl dadace3638 boards/arm/stm32f7: move reset logic to common
move stm32f7 reset logic to common
2024-10-21 09:23:44 +08:00
raiden00pl d4e158f86d boards/arm/stm32f7: move ROMFS logic to common directory
move ROMFS logic to common directory
2024-10-21 09:23:44 +08:00
raiden00pl b606c17619 boards/arm/stm32f7: move CAN init logic to a common directory
move CAN init logic to a common directory
2024-10-21 09:23:44 +08:00
raiden00pl 6657f2abb7 boards/arm/stm32f7: separate nucleo-144 board into individual boards
nucleo-144 combines 3 different ST boards. This approach is inconsistent with
the support for the rest of the nucleo boards, where each board is in separate folders.
Also nucleo-144 is no longer reserved for STM32F7 chips but other families also use this format.

After this commit nucleo-144 is divided into 3 boards:

- nucleo-f746zg
- nucleo-f767zi
- nucleo-f722ze
2024-10-21 09:23:44 +08:00
raiden00pl 56b50a2267 boards/arm/nrf52/nrf52840-dk: replace some configs with jumbo config
replace some configs with jumbo config for nrf52840-dk
2024-10-20 09:40:54 +08:00
raiden00pl 01704380d3 boards/arm/nrf52/nrf52832-dk: replace some configs with jumbo config
replace some configs with jumbo config nrf52832-dk
2024-10-20 09:40:54 +08:00
Tomasz 'CeDeROM' CEDRO 2ed9bd5e71 boards/nucleo-l432kc: Add internal DAC code.
* Nucleo-L432KC board was missing internal MCU DAC code.
* DAC is now available on PA4/A3 and /dev/dac0 when enabled.
* Updated info on ADC inputs (PA6/A5,PA7/A6) depending on configuration.

Signed-off-by: Tomasz 'CeDeROM' CEDRO <tomek@cedro.info>
2024-10-19 12:29:49 +02:00
jihandong 444ba4caa4 libcxx: optional localization.
Signed-off-by: jihandong <jihandong@xiaomi.com>
Signed-off-by: cuiziwei <cuiziwei@xiaomi.com>
2024-10-19 14:34:38 +08:00
Eren Terzioglu 05ba822c41 esp32[c3]: Add BLE support 2024-10-18 21:33:58 +08:00
Xiang Xiao 24cb8c25ab bluetooth: Fix the incompatibility made by https://github.com/apache/nuttx/pull/14224
that pr requires chip turn on CONFIG_DRIVERS_BLUETOOTH to use bluetooth,
but not all defconig enable this option, so let's map bt_driver_register
to bt_netdev_register in header file in this case, and revert the unnessary
change in the related chip and board folders.

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2024-10-18 09:05:54 +08:00
chengkai 6aeb2e2996 Add space before error, bt_driver_register_internal not trigger error, add defconfig DRIVERS_BLUETOOTH.
Signed-off-by: chengkai <chengkai@xiaomi.com>
2024-10-17 18:09:32 +08:00
chengkai 31605b6335 bluetooth: call bt_driver_register common interface
Signed-off-by: chengkai <chengkai@xiaomi.com>
2024-10-17 18:09:32 +08:00
anjiahao b98b263246 Revert "sabre-6quad:by pass coredump ci ci"
This reverts commit b503b323ce.
2024-10-16 20:27:36 +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
liwenxiang1 8a1743d0a6 arch/x86_64: Resolving NUC Boot Failure Issue
The segment of the Xen PVH boot protocol was not specified during linking and was placed before .loader.text, causing the boot to fail

Signed-off-by: liwenxiang1 <liwenxiang1@xiaomi.com>
2024-10-16 13:53:11 +08:00
wanggang26 117ac1a507 mpfs/opnsbi: refine config for for insufficient envm capacity
to fix ci error about https://github.com/apache/nuttx/pull/14293

Signed-off-by: wanggang26 <wanggang26@xiaomi.com>
2024-10-16 13:51:21 +08:00
wangming9 a7c4ceb869 boards/arm/qemu: Add an impls section to the link script
Signed-off-by: wangming9 <wangming9@xiaomi.com>
Signed-off-by: lipengfei28 <lipengfei28@xiaomi.com>
2024-10-16 12:27:10 +08:00
wangming9 1f0cc62a8d board/arm/qemu: Adjust the address mapping in the LD script
Summary:
1. The start location of FLASH reserves the extended bootloader
2. DTB data is reserved at the start location of RAM

Signed-off-by: wangming9 <wangming9@xiaomi.com>
Signed-off-by: lipengfei28 <lipengfei28@xiaomi.com>
2024-10-16 12:27:10 +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
raiden00pl c393416580 libs/libxx: uClibc depends on CONFIG_ALLOW_GPL_COMPONENTS=y
uClibc is LGPL so it should depends on CONFIG_ALLOW_GPL_COMPONENTS=y
2024-10-16 07:56:50 +08:00
Kyle Wilson df47241a2b STM32G4 Flash Driver
Added a flash driver for the STM32G4 series. The primary change here is
the addition of stm32g4xxx_flash.c. This file uses the STM32L4 flash
driver as a template. The primary difference is the accounting for dual
banks with different page sizes.

Fixed error while building b-g474e-dpow1/buckboost. It was possible (technically) to have page be used uninitialzied. Changing the if statement to default to using a flash_page_size == 2048 fixes this issue.
2024-10-15 18:11:38 -03:00
Bowen Wang 43557c15c8 qemu-armv8a/qemu_bringup: init the pci ecam
Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
Signed-off-by: lipengfei28 <lipengfei28@xiaomi.com>
2024-10-15 21:40:45 +08:00
lipengfei28 054257c36e update defconfig
Signed-off-by: lipengfei28 <lipengfei28@xiaomi.com>
2024-10-15 21:40:35 +08:00
yinshengkai 8f3060ed52 boards: Enable LTO option for same70-xplained/mcuboot-loader
Avoid compilation errors due to insufficient flash in CI

Configuration/Tool: same70-xplained/mcuboot-loader,CONFIG_ARM_TOOLCHAIN_GNU_EABI
2024-10-14 16:17:34
arm-none-eabi-ld: /github/workspace/sources/nuttx/nuttx section `.ramfunc' will not fit in region `flash'
arm-none-eabi-ld: region `flash' overflowed by 52 bytes
arm-none-eabi-ld: warning: /github/workspace/sources/nuttx/nuttx has a LOAD segment with RWX permissions
make[1]: *** [Makefile:212: nuttx] Error 1
make: *** [tools/Unix.mk:551: nuttx] Error 2
make: Target 'all' not remade because of errors.

Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2024-10-15 18:13:38 +08:00
cuiziwei 4253001656 sim/m64:Fix ld error with .rodata can not be used when making a PIE object.
/usr/bin/ld: nuttx.rel: relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIE
/usr/bin/ld: failed to set dynamic section sizes: bad value

Signed-off-by: cuiziwei <cuiziwei@xiaomi.com>
2024-10-15 14:45:42 +08:00
cuiziwei 68e25dcee6 nuttx/x86_64:Add _sinit and _einit initialization.
Signed-off-by: cuiziwei <cuiziwei@xiaomi.com>
2024-10-15 12:57:31 +08:00
wanggang26 ca189ccaf2 boards/same70-xplained: refine config for insufficient flash capacity
Signed-off-by: wanggang26 <wanggang26@xiaomi.com>
2024-10-15 12:34:55 +08:00