Commit graph

8579 commits

Author SHA1 Message Date
simbit18
f000ed733f workflows/build.yml: macOS Workflow updated to macos-15-intel
The macOS 13 runner image will be retired by December 4th, 2025.
To raise awareness of the upcoming removal, jobs using macOS 13 will temporarily fail during the scheduled brownout time periods defined below:

November 4, 14:00 UTC to November 5, 00:00 UTC
November 11, 14:00 UTC to November 12, 00:00 UTC
November 18, 14:00 UTC to November 19, 00:00 UTC
November 25, 14:00 UTC to November 26, 00:00 UTC

https://github.blog/changelog/2025-09-19-github-actions-macos-13-runner-image-is-closing-down/

Signed-off-by: simbit18 <simbit18@gmail.com>
2025-12-01 18:32:10 -03:00
buxiasen
0f8bca6d8f testing/pm_smp: add more delay, avoid idle canot run one cycle
If the host performance low, possible not able to enter idle thread,
cause case break.

Signed-off-by: buxiasen <buxiasen@xiaomi.com>
2025-12-01 19:10:11 +08:00
buxiasen
df9fe43cc9 fb: fix no mmap with get_pinfo, kernel build with data abort
When BUILD_KERNEL, will case userspace access the kernel address and
abort.

Signed-off-by: buxiasen <buxiasen@xiaomi.com>
2025-12-01 19:09:54 +08:00
buxiasen
4ac0b10318 drivertest_uart: uart device open should use cfmakeraw to ensure raw.
reference: https://www.man7.org/linux/man-pages/man3/termios.3.html

Signed-off-by: buxiasen <buxiasen@xiaomi.com>
2025-12-01 19:09:41 +08:00
buxiasen
3bd8506ae8 testing/ostest/roundrobin: add compatible for SMP
Fix if SMP cause calculation run in multi-core cause case break.

Signed-off-by: buxiasen <buxiasen@xiaomi.com>
2025-12-01 19:09:27 +08:00
buxiasen
b95c9980b5 apps/ostest/roundrobin: add fail detect and print
Before patch we never detect the roundrobin fail.
After patch use a array to detect if the calculation swapped when
processing.

Signed-off-by: buxiasen <buxiasen@xiaomi.com>
2025-12-01 19:09:27 +08:00
buxiasen
d23eb01490 fs_stat_test: fix fs date case not strict enough
use utc diff should prefer and more strict.

Signed-off-by: buxiasen <buxiasen@xiaomi.com>
2025-12-01 19:07:22 +08:00
buxiasen
8126aaf803 cmake/process-spawn: remove if not required align with Makefile
We already fixed the process-spawn.c in Makefile, should align to cmake

Signed-off-by: buxiasen <buxiasen@xiaomi.com>
2025-12-01 11:23:10 +01:00
xuxingliang
6bd593459c examples/elf: fix cmake build error
CMake Error at cmake/nuttx_parse_function_args.cmake:76 (message):
  : unparsed INCLUDES;/home/neo/projects/nuttx/apps/examples/elf
Call Stack (most recent call first):
  cmake/nuttx_add_application.cmake:77 (nuttx_parse_function_args)
  /home/neo/projects/nuttx/apps/examples/elf/CMakeLists.txt:24 (nuttx_add_application)

Signed-off-by: xuxingliang <xuxingliang@xiaomi.com>
2025-11-27 22:23:42 +08:00
Jukka Laitinen
c3247ecc6c nshlib/nsh_fscmds.c: Allocate a PATH_MAX sized buffer for unlink_recursive
This fixes heap corruption when deleting a folder containing other folders
or files. The issue appeared at commit 131d50ae9d, which removed the
stack-based temporary buffer.

unlink_recursive requires that the path is provided in PATH_MAX sized
buffer. It concatenates sub-folder or file names to the same buffer.

nsh_getfullpath just allocates a buffer using strdup, so there is no room
for concatenating more data to it.

To keep the stack usage smaller, instead of reverting the breaking commit,
allocate the temporary buffer with lib_get_pathbuffer instead.

Signed-off-by: Jukka Laitinen <jukka.laitinen@tii.ae>
2025-11-26 10:27:47 -05:00
dependabot[bot]
3f6fc4b4f7 build(deps): bump actions/checkout from 5 to 6
Bumps [actions/checkout](https://github.com/actions/checkout) from 5 to 6.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-25 10:03:55 +08:00
likun17
6028b42d0f uorb/generator:Fix generator bugs and formatting issues.
replace kmm_zalloc with zalloc and malloc, and fix format and return value errors.

Signed-off-by: likun17 <likun17@xiaomi.com>
2025-11-20 20:44:25 +08:00
likun17
9cf9b862c1 uorb: add generator tool.
e.g.:
1. uorb_generator -f /data/sensor/19700101000003/sensor_accel_uncal0.csv -t sensor_accel_uncal2
2. uorb_generator -s -r 5 -n 200 -t sensor_accel_uncal2 timestamp:1,x:-2.0,y:3,z:4,temperature:5

Signed-off-by: likun17 <likun17@xiaomi.com>
2025-11-20 20:44:25 +08:00
caofuqi1
1c769d1410 testing/ltp: add cmake support
add cmake support for LTP

Signed-off-by: p-szafonimateusz <p-szafonimateusz@xiaomi.com>
Co-Authored: xuxin19 <xuxin19@xiaomi.com>
2025-11-19 01:38:36 +08:00
p-szafonimateusz
188d533dd2 testing/cmoka: fix cmake build
fix cmake build for cmoka:

   [2/9] No update step for 'cmocka_fetch-populate'
   [3/9] Performing patch step for 'cmocka_fetch-populate'
   can't find file to patch at input line 16
   Perhaps you used the wrong -p or --strip option?

Signed-off-by: p-szafonimateusz <p-szafonimateusz@xiaomi.com>
2025-11-18 21:59:42 +08:00
simbit18
c7ac717167 game: Aligned Cmake with Make
- Conway's Game of Life #3210

Signed-off-by: simbit18 <simbit18@gmail.com>
2025-11-14 22:40:17 +08:00
Matteo Golin
31d567e880 games/cgol: Add Conway's Game of Life
This commit introduces a new application, Conway's Game of Life (or
`cgol`). It is a simple frame buffer rendering application that makes
for an interesting, animated visual.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
2025-11-14 14:20:58 +08:00
daniel-geotab
9bbc2fe1e4 Revert "ppp: Fix wrong lcp_state handling on peer reconnection"
This reverts commit 800b93de9f.

Signed-off-by: daniellizewski <daniellizewski@geotab.com>
2025-11-11 14:05:47 -05:00
daniel-geotab
ba8823534c Revert "ppp: Reformat to match nuttx coding style"
This reverts commit 0c734ca62b.

Signed-off-by: daniellizewski <daniellizewski@geotab.com>
2025-11-11 14:05:47 -05:00
nuttxs
92269be92a netutils/netlib: support delete the DNS server address by index or address
- Modify the DHCP-client data structure to support multiple DNS addresses
- Enhance DHCP-option parsing to extract all DNS-server addresses
- Set all received DNS-server addresses
- fix some test case build error

Signed-off-by: nuttxs <zhaoqing.zhang@sony.com>
2025-11-10 18:10:16 +08:00
wangchengdong
bd10572851 testing/ostest: align wdog ostest with wdog bugfix
https://github.com/apache/nuttx/pull/17293 fixed
    wd_start bug, and this patch fixed the related ostest
    accordingly

Signed-off-by: Chengdong Wang <wangchengdong@lixiang.com>
2025-11-10 10:44:53 +08:00
Michal Lenc
761f25c857 nshlib/nsh_proccmds.c: fix description for TID and switch order
ID previously marked as PID was in fact TID. PID was hidden under
GROUP column. This fixes the description. The order of TID, PPID, PID
is also changed to more logical TID, PID, PPID.

Signed-off-by: Michal Lenc <michallenc@seznam.cz>
2025-11-07 10:32:42 +08:00
raiden00pl
91a7580303 testing/mm/cachetest/cachetest_main.c: fix codespell error
fix codespell error for cachetest_main.c

Signed-off-by: raiden00pl <raiden00@railab.me>
2025-11-02 22:33:46 +08:00
raiden00pl
4f5fe44af1 testing/testsuites/kernel/socket/cases: fix compilation error
fix compilation error:

kernel/socket/cases/net_socket_test_010.c: In function ‘ioctltestinternal’:
kernel/socket/cases/net_socket_test_010.c:188:20: error: ‘siocgifname’ undeclared (first use in this function)
  188 |   ret = ioctl(sfd, siocgifname, &ifr);

Signed-off-by: raiden00pl <raiden00@railab.me>
2025-11-02 22:33:46 +08:00
raiden00pl
0a906edd81 testing/mm/cachetest/cachetest_main.c: fix compilation error
fix compilation error:

cachetest_main.c: In function ‘cachetest_main’:
cachetest_main.c:240:7: error: implicit declaration of function ‘up_flush_dcache’ [-Wimplicit-function-declaration]
  240 |       up_flush_dcache((uintptr_t)info.waddr, (uintptr_t)info.waddr +

Signed-off-by: raiden00pl <raiden00@railab.me>
2025-11-02 22:33:46 +08:00
raiden00pl
1f1240a0f4 testing/drivers/fftest/fftest.c: fix compilation error
fix compilation error:

CC:  vfs/fs_rmdir.c fftest.c: In function ‘fftest_main’:
fftest.c:104:7: error: implicit declaration of function ‘ioctl’ [-Wimplicit-function-declaration]
  104 |   if (ioctl(fd, EVIOCGBIT, fffeatures) < 0)

Signed-off-by: raiden00pl <raiden00@railab.me>
2025-11-02 22:33:46 +08:00
George Poulios
f3dc21755f tee/optee_client: Consolidate libteec and optee_supplicant
Merges build file structure so that both libteec and optee_supplicant
are under the same nuttx-app directory. This better reflects external
source repo structrure (optee_client containing both libteec and
tee-supplicant) and avoids a case where build of supplicant
was attempted before libteec, leading to a missing .zip file
(zip file was only downloaded by libteec, but order of builds was
not enforced).

Signed-off-by: George Poulios <gpoulios@census-labs.com>
2025-10-30 21:46:56 +08:00
dependabot[bot]
099c8ff58e build(deps): bump actions/download-artifact from 5 to 6
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 5 to 6.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/download-artifact
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-28 10:32:42 +01:00
dependabot[bot]
d1c1ce09df build(deps): bump actions/upload-artifact from 4 to 5
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4 to 5.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-28 10:32:22 +01:00
Kevin Witteveen (MartiniMarter)
452ae235c6 graphics/jpgresizetool: Add libjpeg resize tool
Add a libjpeg based JPEG resize tool.
Simple resizer that can resize JPEGs using
"jpgresize input.jpg output.jpg scale_denom(1,2,4,8) quality%".
Tries to use little memory by scanning per line.

Signed-off-by: Kevin Witteveen (MartiniMarter) <kevinwit1999@gmail.com>
2025-10-27 00:14:45 +08:00
simbit18
4ffed5d6dc CI MSYS2: added the genromfs tool for creating romfs file systems
Add:

 - the genromfs tool for creating romfs file systems

https://github.com/chexum/genromfs

Signed-off-by: simbit18 <simbit18@gmail.com>
2025-10-20 12:30:45 -04:00
trns1997
4f5d25e1eb ci: Sync build.yml workflow with NuttX repository.
Update the  workflow in nuttx-apps to match the
corresponding workflow in the main NuttX repository, ensuring
consistency across both CI configurations.

This synchronization follows the guidance from:
https://lupyuen.org/articles/ci3\#sync-to-nuttx-apps

* Aligns CI triggers, job structure, and naming conventions.
* Maintains consistency between NuttX and nuttx-apps CI setups.

Signed-off-by: trns1997 <trns1997@gmail.com>
2025-10-20 01:11:15 +08:00
Huang Qi
847f862fd4 examples/elf: Fix invalid preprocessor directive syntax
Fix invalid preprocessor directive in elf_main.c by changing
`#  Warning "No file system selected"` to `#  warning "No file system selected"`.

The incorrect uppercase "Warning" directive would cause compilation
errors, while the proper lowercase "warning" directive generates
the intended compiler warning when no file system is selected.

Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2025-10-19 11:53:23 -04:00
Stepan Pressl
9e83bc2270 examples/shv-nxboot-updater: use downgraded pyshv==0.8.0
The problem probably arises from an incompatibility issue
between the shv-libs4c and pyshv libraries. The fix is to downgrade
the library for now and then revert back.

Signed-off-by: Stepan Pressl <pressl.stepan@gmail.com>
2025-10-17 14:40:03 -04:00
Pavel Pisa
7f90139918 netutils/libshvc: update to correct reply head for non single element CID array
The update enables interoperability with a Silicon-Heaven
SHV3 protocol broker implemented in Rust language

  https://github.com/silicon-heaven/shvbroker-rs

New commits from shv-libs4c project

  https://github.com/silicon-heaven/shv-libs4c

- shv_pack_head_reply: correct reply head for non single element
  CID array

  When servicing request from the SHV3 protocol version broker
  itself then CID array is empty and missing TAG_CALLER_IDS
  for empty array breaks encoding scheme.

- shv_process: even in case of unsuccessful attempts to connect
  respect request to stop

  The request to stop initiate  by signal caused the high priority
  thread to enter busy-loop and block a system. Check for request
  to stop (running flag cleared) even in disconnected state after
  unsuccessful attempt.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
2025-10-17 14:39:16 -04:00
Huang Qi
27579eb531 examples/fb: Fix error message formatting and accuracy
Fix two error message issues in the framebuffer example:
* Add missing newline character to fbmem2 error message in fb_init_mem2()
* Correct mmap() error message that incorrectly referenced FBIOGET_PLANEINFO

These changes improve error reporting clarity and consistency for debugging framebuffer initialization issues.

Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2025-10-17 14:56:51 +08:00
trns1997
a44d65c939 testing/cxx-oot-build: Exclude cxx-oot-build in CMake projects.
Remove the previous guard logic and use a proper CMake
`exclude` rule to prevent `cxx-oot-build` from being
included when building projects with CMake.

* Ensures OOT test project is not pulled into normal apps.
* Keeps CI and export tests isolated from regular builds.

Signed-off-by: trns1997 <trns1997@gmail.com>
2025-10-15 14:34:32 +08:00
Halysson
ddf1dcc3ff netutils/cmux: Add support for CMUX protocol
This commit adds CMUX (GSM 07.10) protocol support to netutils.
CMUX allows multiplexing multiple virtual serial connections
over a single physical serial link.

Changes include:
- CMUX protocol implementation
- CRC table for frame validation
- Basic frame handling

Signed-off-by: Halysson <halysson1007@gmail.com>
2025-10-06 15:04:22 -03:00
trns1997
3684699190 testing/cxx-oot-build: Add out-of-tree build test.
Add the source content for the out-of-tree build test
under `apps/testing/cxx-oot-build`. This supports the
new CI check in NuttX to prevent regressions in the
`make export` workflow.

The test project provides:
* Sample OOT build structure.
* Integration with exported `nuttx-export`.
* Verification of successful build and link.

Signed-off-by: trns1997 <trns1997@gmail.com>
2025-09-25 18:32:38 +08:00
Stepan Pressl
cf41b01135 netutils/libshvc: add Silicon Heaven integration into NuttX and SHV examples
This commit marks the end of my GSoC 2025 project in the NuttX section.
All changes:

- Silicon Heaven protocol (SHV) implementation:
  The library is cloned from github.com/silicon-heaven/shv-libs4c
  and compiled here. The library has out-of-the-box support
  for NuttX and possibly all posix systems.
  The library is compiled with CONFIG_SHV_LIBS4C_PLATFORM define
  set to "nuttx". The library's dependancy is Pavel Pisa's ULUT
  and originates from Michal Lenc's GSoC.

- examples/shv-nxboot-updater:
  An example which constructs a SHV tree with which you can perform
  firmware updates using a SHV "file node". The file node wraps
  around NXBoot's update partition.
  The application also allows for NXBoot confirmation of the images.
  This application is to be meant used as a "background service",
  started before any apps, possibly using rcS. The tree is allocated
  as GAVL (see below).

- examples/shv-test:
  An example which constructs a SHV tree and gives the user
  the ability to choose which type of construction should be used,
  either:
    - GAVL:       dynamic SHV tree allocation encapsulated within
                  an AVL tree.
    - GSA:        dynamic SHV tree allocation encapsulated within
                  a continuous array with binary search
    - GSA_STATIC: SHV tree is defined as static const, this means
                  all the data structures are placed in .rodata.
		  Extremely beneficial for embedded systems,
		  as .rodata is located in flash and embedded
		  systems usually have more flash than sram,
		  thus reducing sram usage. The downside is that
		  the definitions are rather tedious, but can
		  be automated in case of some code generation
		  (like in pysimCoder).
		  All of it is places in a continuous array with
		  binary search.

Signed-off-by: Stepan Pressl <pressl.stepan@gmail.com>
2025-09-24 21:43:07 +08:00
wangjianyu3
bc73779144 nshlib/nsh_parse: Fix "e" flag not take effect
The NSH exits when a command exits with a non-zero status, even if the "e" flag is not set.
This error does not exist in NSH scripts.

Without this patch:

  nsh> sh -c "set -e; mkdir /test; echo $?"
  nsh: /test: mkdir failed: 17
  nsh> sh -c "set +e; mkdir /test; echo $?"
  nsh: /test: mkdir failed: 17
  nsh> rm /test
  nsh> sh -c "set +e; mkdir /test; echo $?"
  0

With this patch:

  nsh> sh -c "set -e; mkdir /test; echo $?"
  nsh: /test: mkdir failed: 17
  nsh> sh -c "set +e; mkdir /test; echo $?"
  nsh: /test: mkdir failed: 17
  1
  nsh> rm /test
  nsh> sh -c "set +e; mkdir /test; echo $?"
  0

Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
2025-09-18 02:15:49 +08:00
Lars Kruse
00911d417d boot/nxboot: improve documentation
Previously it was hard to guess the correct entrypoint for the
bootloader application.

Signed-off-by: Lars Kruse <devel@sumpfralle.de>
2025-09-18 02:15:43 +08:00
michal matias
a85121b168 netutils: Add plcatool
Add plcatool - simple tool for managing PLCA configuration in 10BASE-T1S PHYs.

Signed-off-by: michal matias <mich4l.matias@gmail.com>
2025-09-17 19:29:10 +08:00
Jukka Laitinen
479d206dff system/cdcacm: Support sercon and serdis in CONFIG_BUILD_KERNEL
- Put sercon and serdis in separate source files, so that the main
functions can be compiled in also in kernel build.
- Don't store the ttyacm handle in the application, it is stored
in kernel side in case of the system_cdcacm

Signed-off-by: Jukka Laitinen <jukka.laitinen@tii.ae>
2025-09-17 12:38:05 +02:00
wangjianyu3
10cab6bf6d nshlib/nsh_syscmds: Fix resetcause and rpmsg_help typos
nshlib/nsh_syscmds.c:111: unkown ==> unknown
nshlib/nsh_syscmds.c:651: acknowlege ==> acknowledge

Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
2025-09-17 10:07:24 +02:00
wangjianyu3
09f0f89e3a nshlib/reset_cause: Fix format warning for flag
Fix format string not appropriate warning for cause.flag.

nsh_syscmds.c: In function 'cmd_reset_cause':
nsh_syscmds.c:513:24: error: format '%lu' expects argument of type 'long unsigned int', but argument 4 has type 'uint32_t' {aka 'unsigned int'} [-Werror=format=]
  513 |       nsh_output(vtbl, "%s(%lu)\n",
      |                        ^~~~~~~~~~~
  514 |              g_resetcause[cause.cause], cause.flag);
      |                                         ~~~~~~~~~~
      |                                              |
      |                                              uint32_t {aka unsigned int}

Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
2025-09-17 10:07:24 +02:00
Stepan Pressl
9968fa064b benchmarks/cyclictest: fix comp. warning and optargs termination
Fix reqtimeout_timer may be uninitilized.

Signed-off-by: Stepan Pressl <pressl.stepan@gmail.com>
2025-09-14 10:37:27 +02:00
Lars Kruse
df711238fe system/dd: implement "--help" parameter
Previously the usage hints were displayed only in case of errors.

Signed-off-by: Lars Kruse <devel@sumpfralle.de>
2025-09-12 09:33:13 +08:00
Lars Kruse
db36c8c617 system/dd: emit status messages to stderr (not stdout)
Previously `dd` clobbered its output by writing status messages (e.g.
transfer statistics) to stdout.

Now all status messages are written to stderr.

Signed-off-by: Lars Kruse <devel@sumpfralle.de>
2025-09-12 09:33:13 +08:00
wangchengdong
93060aa59d nshlib/nsh_builtin.c : Add support to run builtin dirrectly as command
Add a new config: NSH_BUILTIN_AS_COMMAND.
  Provide a new implementation for nsh_builtin
  when CONFIG_NSH_BUILTIN_APPS_AS_COMMAND is enabled.

Signed-off-by: Chengdong Wang <wangchengdong@lixiang.com>
2025-09-11 20:00:20 +08:00