2846 Commits

Author SHA1 Message Date
raiden00pl cb7fb72fae boards/nucleo-f446re: disable OSTEST in some configs
Disable OSTEST in configurations whose purpose is to test peripherals.

Signed-off-by: raiden00pl <raiden00@railab.me>
2025-12-19 08:39:41 -03:00
raiden00pl 96af0ceedf boards/nucleo-g431rb/qenco: reduce FLASH
Build Documentation / build-html (push) Has been cancelled
disable ostest from qenco configuration to reduce FLASH.

Signed-off-by: raiden00pl <raiden00@railab.me>
2025-12-18 17:25:23 +01:00
anjiahao fb8da4b89d mps3-an547:support protect mode
add mps3-an547:knsh configs

./tools/configure.sh mps3-an547:knsh
make -j20
qemu-system-arm -M mps3-an547 -m 2G -device loader,file=nuttx.hex -device loader,file=nuttx_user.hex -gdb tcp::1129 -nographic

nsh>ostest

Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2025-12-18 22:19:44 +08:00
Antoine Juckler d5633f75a8 mtd/at25ee: Use eeprom/spi_xx25xx internally
In order to reduce code duplication, use the eeprom/spi_xx25xx
driver within mtd/at25ee.

The eeprom/xxx.h includes have been merged into eeprom/eeprom.h, to
provide a common include file like mtd/mtd.h.

Signed-off-by: Antoine Juckler <6445757+ajuckler@users.noreply.github.com>
2025-12-17 19:03:54 +01:00
zhanghongyu aa8ffea3cf netdev_upperhalf: convert Kconfig to variable
Build Documentation / build-html (push) Has been cancelled
Upperhalf supports multiple working modes at the same time,
which is specified by NIC when register

Signed-off-by: zhanghongyu <zhanghongyu@xiaomi.com>
2025-12-14 10:01:22 +08:00
wangchengdong e2703c3f4a arm/stm32: Disable NSH help to fix build issue
Build Documentation / build-html (push) Has been cancelled
Disable NSH help in nucleo-f302r8/ihm07m1_b16 to resolve a build
failure caused by insufficient memory.

Signed-off-by: Chengdong Wang <wangchengdong@lixiang.com>
2025-12-11 20:07:00 +08:00
yangsong8 3949a87d36 boards/defconfig: enable CONFIG_SCHED_CHILD_STATUS
ADBD_SHELL_SERVICE depends on SCHED_CHILD_STATUS

Signed-off-by: yangsong8 <yangsong8@xiaomi.com>
2025-12-10 23:42:07 +08:00
Petro Karashchenko 3c0309e0ed arch/arm/samv7: optimize MCUboot loader configuration
Disable configuration options that are not needed for MCUboot loader
 - Disable floating point and long long support in libc
 - Disable libm
 - Disable POSIX features: environment variables, message queues, timers
   and pthreads
 - Disable RAMTEST app to save code space

Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2025-12-09 18:04:01 +08:00
simbit18 c47911ffa1 boards/arm/stm32l4: CMake added boards Part1
CMake added boards:

  - b-l475e-iot01a

 -  nucleo-l432kc

 -  nucleo-l452re

 -  nucleo-l496zg

 -  steval-stlcs01v1

 - stm32l476-mdk

Signed-off-by: simbit18 <simbit18@gmail.com>
2025-12-04 17:51:44 -03:00
adriendesp ec04ef9ccf arch/arm/xmc4 : various fixes and clean
- Fix EtherCAT signals drive strengh (from errata PORTS_CM.H002), caused bus faults.
- Changed xmc4_ecat.c for compile time pin definition.
- Fixed xmc4_ecat.c register not written (reset value already used).
- Removed EXTCLK for xmc4800 as pin is used for ECAT.
- Clean xmc4 familly board.h and clocks config.

Signed-off-by: adriendesp <adrien.desproges@gmail.com>
2025-12-03 13:47:34 +08:00
simbit18 b3caa6717f boards/arm/stm32l4/nucleo-l476rg: CMake fix addition of HTS221 and LSM6DSL
- fix addition of HTS221 and LSM6DSL sensors

Signed-off-by: simbit18 <simbit18@gmail.com>
2025-12-03 08:36:06 +08:00
simbit18 6f4d610636 boards/arm/kl: CMake build for Freedom-kl25z, Freedom-kl26z and Teensy-lc boards
- CMake added board NXP Freedom-KL25Z

- CMake added board NXP Freedom-KL26Z

- CMake added board PJRC Teensy-LC

Signed-off-by: simbit18 <simbit18@gmail.com>
2025-12-02 02:42:55 +08:00
Alan Carvalho de Assis 658c5a938e boards/stm32f429i-disco: Add NX boot logo splash screen
This commit add a framebuffer example and initializes the board with
NuttX boot logo splash screen.

Signed-off-by: Alan C. Assis <acassis@gmail.com>
2025-11-27 15:17:30 -03:00
ouyangxiangzhen be62b6152b boards/arm: refresh the defconfig.
This commit refreshed the defconfig after count-based oneshot API
introduced.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2025-11-24 19:43:07 +08:00
v-tangmeng 34a2f0cc40 boards/arm: refresh the defconfig
This commit refreshed the defconfig.

Signed-off-by: v-tangmeng <v-tangmeng@xiaomi.com>
2025-11-24 19:43:07 +08:00
cuichaochao d3021ffa87 tm32f746g-disco: fix lvgldemo failed
use external ram in lvgldemo

Signed-off-by: cuichaochao <cuichaochao916@gmail.com>
2025-11-21 11:13:11 -05:00
leocafonso 80b9fc30de boards/arduino-r4-minima: Add PWM support using GPT timer
- Added PWM support on Arduino R4 Minima board.
This board has 5 PWM channels available using the GPT timer from the RA4M1 microcontroller.
- Added a pwm config file to enable PWM supporting GTP2 GTIOCB on P102.

Signed-off-by: leocafonso <leocafonso@gmail.com>
2025-11-17 09:01:31 -03:00
simbit18 1b58dd92d8 boards/arm/kinetis: CMake added NXP KWIKSTIK-K40 and PJRC Teensy 3.x boards
Build Documentation / build-html (push) Has been cancelled
CMake added boards:

  - NXP KWIKSTIK-K40

 -  PJRC Teensy 3.x

Signed-off-by: simbit18 <simbit18@gmail.com>
2025-11-13 14:13:16 -05:00
simbit18 f98d89874c boards/arm/kinetis: CMake added NXP TWR-K60N512 and TWR-K64F120M boards
CMake added boards:

  - NXP TWR-K60N512

 -  NXP TWR-K64F120M

Signed-off-by: simbit18 <simbit18@gmail.com>
2025-11-13 11:34:01 -05:00
raiden00pl 3e30a93d1b boards/nucleo-h743zi: register TMPFS
register TMPFS for nucleo-h743zi

Signed-off-by: raiden00pl <raiden00@railab.me>
2025-11-12 11:53:03 +01:00
trns1997 22bc630d9f drivers/kinetis/spi: Fix Kinetis DSPI transfers in non-FIFO mode.
Fix a transfer issue in the Kinetis DSPI driver when operating
with transmit and receive FIFOs disabled (`MCR[DIS_TXF]=1`,
`MCR[DIS_RXF]=1`). In this mode, the DSPI module behaves as a
simple double-buffered SPI interface without TX staging.

When FIFOs are disabled, `PUSHR` acts as a single 32-bit
command/data register. Partial (16-bit) writes to its upper or
lower halves can result in incomplete or corrupted transfers.
This patch ensures the full 32-bit packet is prepared and
written in a single operation.

* Resolves broken SPI transactions with LAN9252 (EasyCAT).
* Improves reliability in non-FIFO DSPI configurations.
* No impact on DMA or FIFO-enabled modes.

Signed-off-by: trns1997 <trns1997@gmail.com>
2025-11-12 11:24:03 +01:00
simbit18 eb583704fe boards/arm/kinetis: CMake added NXP Freedom-K28F and Freedom-K66F boards
CMake added boards:

  - NXP Freedom-K28F

 -  NXP Freedom-K66F

Signed-off-by: simbit18 <simbit18@gmail.com>
2025-11-11 14:04:23 -05:00
simbit18 12cee023b2 boards/arm/kinetis: Added CMake build for NXP Freedom-K64F board
- CMake added board NXP Freedom-K64F

https://www.nxp.com/design/design-center/development-boards-and-designs/FRDM-K64F

Signed-off-by: simbit18 <simbit18@gmail.com>
2025-11-11 22:15:52 +08:00
hujun5 857fdad220 boards/arm/qemu/qemu-armv7a: add demo for gdbstub
Gdbstub support
===========
  The Qemu version must be above 9.2 to support two serial ports.

  One window:
  ./tools/configure.sh qemu-armv7a:gdbstub; make -j25
  qemu-system-arm -cpu cortex-a7 -nographic -machine virt,virtualization=off,gic-version=2 -net none -kernel ./nuttx  -serial mon:stdio -serial pty
  char device redirected to /dev/pts/26 (label serial1)
  nx_start: Entry
  uart_register: Registering /dev/console
  uart_register: Registering /dev/ttyS0

  Another window:
  gdb-multiarch nuttx -ex "target remot /dev/pts/26"
  GNU gdb (Ubuntu 15.0.50.20240403-0ubuntu1) 15.0.50.20240403-git
  Copyright (C) 2024 Free Software Foundation, Inc.
  License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
  This is free software: you are free to change and redistribute it.
  There is NO WARRANTY, to the extent permitted by law.
  Type "show copying" and "show warranty" for details.
  This GDB was configured as "x86_64-linux-gnu".
  Type "show configuration" for configuration details.
  For bug reporting instructions, please see:
  <https://www.gnu.org/software/gdb/bugs/>.
  Find the GDB manual and other documentation resources online at:
  <http://www.gnu.org/software/gdb/documentation/>.

  For help, type "help".
  Type "apropos word" to search for commands related to "word"...
  Reading symbols from nuttx...
  Remote debugging using /dev/pts/26
  gdb_get_registers (state=0x402052f8) at gdbstub/lib_gdbstub.c:1020
  1020              reg = state->running_regs;
  (gdb) c

Signed-off-by: hujun5 <hujun5@xiaomi.com>
2025-11-11 19:53:56 +08:00
raiden00pl 44a924ab42 boards/stm32h7: add Arduino Portenta H7
Add initial support for Arduino Portenta H7.
For now only CM7 core is supported.

Signed-off-by: raiden00pl <raiden00@railab.me>
2025-11-10 18:13:47 +08:00
Filipe Cavalcanti 3577254d9f boards/arm: remove custom MCUBoot version from defconfigs
Removing the custom MCUBoot hash from 5 defconfigs.
This custom hash is blocking the MCUBoot update on nuttx-apps due to
changes in source files.

Signed-off-by: Filipe Cavalcanti <filipe.cavalcanti@espressif.com>
2025-11-05 17:25:26 +08:00
wangchengdong 26af1fadc9 arch: Enable event module for pcduino-a10 and smartl-c906
Enable the event module on pcduino-a10 and smartl-c906 boards
   to allow event tests to be executed on both ARM and RISC-V
   architectures.

Signed-off-by: Chengdong Wang <wangchengdong@lixiang.com>
2025-11-04 21:43:59 +08:00
simbit18 e86c048d15 boards/arm/gd32f4: nxstyle fix Relative files path
- fix Relative file path does not match actual file.

Signed-off-by: simbit18 <simbit18@gmail.com>
2025-10-29 22:04:25 +08:00
simbit18 dfc9f6c2a2 boards/arm: nxstyle fix Relative files path
- fix Relative file path does not match actual file.

Signed-off-by: simbit18 <simbit18@gmail.com>
2025-10-28 13:38:04 -04:00
kywwilson11 35d1aaafda arch/arm/stm32h5: STM32H5 PWM Driver (STM32H7 port)
Build Documentation / build-html (push) Has been cancelled
Adding the stm32h5 pwm driver. This is almost an exact copy of the stm32h7 pwm driver. I confirmed the timers for the h5 are version v2 and added the preprocessor definition. This commit was tested on a stm32h5 nucleo-h563zi development board. Necessary board files and a pwm config have been added. Added pin mappings for all timer outputs.

Signed-off-by: kywwilson11 <kwilson@2g-eng.com>

Added documentation regarding nucleo-h563zi:pwm config.

Removed CONFIG_STM32H5_PWM guard at the top. Fixed IRQs for tim1 and tim8. Added H5 to list of Timer IP v2 timers.

Conditionally compile stm32_serial.c.

Add stm32_pwm.c to CMakeLists.txt
2025-10-25 12:48:34 +08:00
simbit18 14a0780ff5 board/arm/stm32h5: Added CMake build for NUCLEO-H563ZI board
- CMake added board STM32 NUCLEO-H563ZI

https://www.st.com/en/evaluation-tools/nucleo-h563zi.html

Signed-off-by: simbit18 <simbit18@gmail.com>
2025-10-24 12:17:07 -04:00
wangchengdong 590ea0567d board/sam3u-ek: Adjust memory.ld to fix build error
Enlarge kflash memory size for the sam3u-ek board
    to resolve the build error.

Signed-off-by: Chengdong Wang <wangchengdong@lixiang.com>
2025-10-18 20:07:59 +08:00
chao an 2909b1dadd sam3u-ek/knsh: disable LIBC_TEMPBUFFER to save code size
Fix build break:

| arm-none-eabi-ld: /home/archer/code/nuttx/nuttx section `.data' will not fit in region `kflash'
| arm-none-eabi-ld: region `kflash' overflowed by 96 bytes
| Memory region         Used Size  Region Size  %age Used
|           kflash:       65632 B        64 KB    100.15%
|           uflash:           0 B        64 KB      0.00%
|           xflash:           0 B       128 KB      0.00%
|           ksram1:        4716 B         6 KB     76.76%
|           usram1:           0 B         4 KB      0.00%
|           xsram1:           0 B        22 KB      0.00%
|            sram2:           0 B        16 KB      0.00%
| make[1]: *** [Makefile:217: nuttx] Error 1
| make: *** [tools/Unix.mk:542: nuttx] Error 2

Signed-off-by: chao an <anchao.archer@bytedance.com>
2025-10-17 14:05:02 +08:00
chao an 87f134cfaa sched/sleep: replace all Signal-based sleep implement to Scheduled sleep
Nuttx currently has 2 types of sleep interfaces:

1. Signal-scheduled sleep: nxsig_sleep() / nxsig_usleep() / nxsig_nanosleep()
Weaknesses:
a. Signal-dependent: The signal-scheduled sleep method is bound to the signal framework, while some driver sleep operations do not depend on signals.
b. Timespec conversion: Signal-scheduled sleep involves timespec conversion, which has a significant impact on performance.

2. Busy sleep: up_mdelay() / up_udelay()
Weaknesses:
a. Does not actively trigger scheduling, occupy the CPU loading.

3. New interfaces: Scheduled sleep: nxsched_sleep() / nxsched_usleep() / nxsched_msleep() / nxsched_ticksleep()
Strengths:
a. Does not depend on the signal framework.
b. Tick-based, without additional computational overhead.

Currently, the Nuttx driver framework extensively uses nxsig_* interfaces. However, the driver does not need to rely on signals or timespec conversion.
Therefore, a new set of APIs is added to reduce dependencies on other modules.

(This PR also aims to make signals optional, further reducing the code size of Nuttx.)

Signed-off-by: chao an <anchao.archer@bytedance.com>
2025-10-17 14:05:02 +08:00
Alan Carvalho de Assis 2b2afeec4c sama5d3-xplained: Disable semihosting syslog
Build Documentation / build-html (push) Has been cancelled
TODO: Fix sama5 arch the same way stm32 to avoid compiling serial drivers
case no serial ports are used.

Signed-off-by: Alan C. Assis <acassis@gmail.com>
2025-10-14 08:36:44 -04:00
Alan Carvalho de Assis 82e4a715e6 boards/stm32/clicker2-stm32: Fix compilation after stm32_serial
This config doesn't have any STM32_USART enabled, but because it
have CDC_ACM if we disable CONFIG_SERIAL we are getting others
dependence error. So the solution here was enable the serial port
CONFIG_STM32_USART3.

Signed-off-by: Alan C. Assis <acassis@gmail.com>
2025-10-14 08:36:44 -04:00
Alan Carvalho de Assis cf8b8355b8 boards/stm32/nucleo-f303re: Remove syslog for can example
This can board profile doesn't use serial, but the syslog still
using up_putc() that doesn't exist now that stm32_serial.c is not
compiled.

Signed-off-by: Alan C. Assis <acassis@gmail.com>
2025-10-14 08:36:44 -04:00
Alan Carvalho de Assis 676f4cb111 boards/arm/stm32: Fix board configs which use LWL_CONSOLE
After fixing stm32 to not compile stm32_serial.c when STM32_USART
is not enabled, we need fix the lwl_console driver to include the
up_putc().

Signed-off-by: Alan C. Assis <acassis@gmail.com>
2025-10-14 08:36:44 -04:00
raiden00pl f809985e5b boards: remove reference to non-existent readme
Most references to the readmes have been removed.

The removed references didn't make much sense and were inconsistent with other
sections of the code. Some sections linked to the readme, others didn't.
More importantly, most boards don't have any readme references.

Let's not treat developers as fools who need to be reminded at every step
to check the readme (which doesn't exit anymore anyway).

Signed-off-by: raiden00pl <raiden00@railab.me>
2025-10-11 17:07:51 -04:00
chao an 4c7deedd27 sched/clock: remove return value of clock_systime_timespec()
clock_systime_timespec() always returns 0, so there is no need to
check the return value in the caller code, let us remove the return
value directly.

Signed-off-by: chao an <anchao.archer@bytedance.com>
2025-10-10 23:15:27 +08:00
simbit18 3a878cacf6 boards/arm/rp23xx/pimoroni-pico-2-plus: Corrected all defconfig files
Correct these configuration entries

 CONFIG_ARCH_BOARD="raspberrypi-pico-2" -> "pimoroni-pico-2-plus"

 CONFIG_ARCH_BOARD_RASPBERRYPI_PICO_2 -> CONFIG_ARCH_BOARD_PIMORONI_PICO_2_PLUS

error present in this PR #14831

Signed-off-by: simbit18 <simbit18@gmail.com>
2025-10-08 09:01:59 -04:00
simbit18 89e9fed39e boards/arm/rp23xx/pimoroni-pico-2-plus: added ‘rp23xx_spisd.h’ in board.h
Added missing #include ‘rp23xx_spisd.h’ in board.h
(forgotten in PR #17167)

Signed-off-by: simbit18 <simbit18@gmail.com>
2025-10-08 07:13:42 +08:00
simbit18 ee8a23071d boards/arm/rp23xx/xiao-rp2350: fix linker scripts 100% RAM usage
Compiling with --print-memory-usage always shows 100% RAM
Upstream bug raspberrypi/pico-sdk#1871

Signed-off-by: simbit18 <simbit18@gmail.com>
2025-10-08 07:13:07 +08:00
simbit18 c1042816f3 boards/arm/rp23xx/pimoroni-pico-2-plus: Added missing header file rp23xx_spisd.h
fix implicit declaration of function 'board_spisd_initialize'

src/rp23xx_common_bringup.c: In function 'rp23xx_common_bringup':
Error: src/rp23xx_common_bringup.c:390:9: error: implicit declaration of function 'board_spisd_initialize'; did you mean 'board_spidev_initialize'? [-Werror=implicit-function-declaration]
  390 |   ret = board_spisd_initialize(0, CONFIG_RP23XX_SPISD_SPI_CH);
      |         ^~~~~~~~~~~~~~~~~~~~~~

Signed-off-by: simbit18 <simbit18@gmail.com>
2025-10-07 15:16:10 +02:00
simbit18 61032a0ee1 boards/arm/rp23xx/pimoroni-pico-2-plus: fix linker scripts 100% RAM usage
Compiling with --print-memory-usage always shows 100% RAM
Upstream bug raspberrypi/pico-sdk#1871

Signed-off-by: simbit18 <simbit18@gmail.com>
2025-10-07 06:57:14 +08:00
simbit18 20b172dc19 boards/arm/rp23xx/pimoroni-pico-2-plus: fix 'BOARD_HSTX_FREQ' undeclared
fix error 'BOARD_HSTX_FREQ' undeclared

D:/nuttxpico/nuttx/arch/arm/src/rp23xx/rp23xx_clock.c
D:/nuttxpico/nuttx/arch/arm/src/rp23xx/rp23xx_clock.c: In function 'clocks_init':
D:/nuttxpico/nuttx/arch/arm/src/rp23xx/rp23xx_clock.c:297:26: error: 'BOARD_HSTX_FREQ' undeclared (first use in this function); did you mean 'BOARD_SYS_FREQ'?
  297 |                          BOARD_HSTX_FREQ);
      |                          ^~~~~~~~~~~~~~~
      |                          BOARD_SYS_FREQ

Signed-off-by: simbit18 <simbit18@gmail.com>
2025-10-06 09:15:38 -04:00
simbit18 6d32818f1d boards/arm/rp23xx: CMake added Pimoroni Pico Plus 2 board
- Added CMake build for Pimoroni Pico Plus 2

Signed-off-by: simbit18 <simbit18@gmail.com>
2025-10-05 15:04:11 -04:00
simbit18 8db94324b1 boards/arm/rp23xx: CMake added Seeed Studio XIAO RP2350 board
- Added CMake build for Seeed Studio XIAO RP2350

Signed-off-by: simbit18 <simbit18@gmail.com>
2025-10-03 16:35:48 -03:00
simbit18 92159bbdba arm/rp23xx: CMake build for Raspberry Pi RP23xx implemented
- CMake added board Raspberry Pi Pico 2

Signed-off-by: simbit18 <simbit18@gmail.com>
2025-10-02 14:29:19 -04:00
simbit18 8baa788484 boards/arm/rp23xx: fix implicit declaration of function rp23xx_dev_gpio_init
- Created a file rp23xx_common_pico.h with function
   prototype

     int rp23xx_dev_gpio_init(void);

 to allow cmake + ninja to build without errors.

 - Updated file rp23xx_pico.h with

for all boards.

Signed-off-by: simbit18 <simbit18@gmail.com>
2025-10-02 14:29:19 -04:00