Commit graph

59632 commits

Author SHA1 Message Date
Michal Lenc
6fd0bd21be .editorconfig: fix character encoding property specification
The property should be named charset, not encoding, according
to editorconfig documentation.

https://editorconfig.org/#supported-properties

Signed-off-by: Michal Lenc <michallenc@seznam.cz>
2025-11-28 19:12:13 +08:00
Vlad Pruteanu
6e7cfed8a1 documentation: Add HMAC-SHA support for esp32
Support for hardware accelerated HMAC-SHA(1/256) for ESP32
was added, this commit updates the documentation to reflect
this as well.

Signed-off-by: Vlad Pruteanu <pruteanuvlad1611@yahoo.com>
2025-11-28 08:24:59 +01:00
simbit18
b749dfba23 ci/platforms: necessary changes for macos-15-intel and macos-14 Apple Silicon
macos-15-intel  and  macos-14 Apple Silicon
- bloaty()
   aligned with the latest version

macos-15-intel
 - avr_gcc_toolchain()
     Latest version not available for Intel,
     so it needs to be built from source, which takes over an hour.
     The latest version prebuilt for Intel is 9.4.0
     Added an workaround for installation.

Signed-off-by: simbit18 <simbit18@gmail.com>
2025-11-28 11:04:21 +08:00
simbit18
027613fee2 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-11-28 11:04:21 +08:00
simbit18
2c60b6b33b drivers/sensors: improvements for Kconfig
- Rohm BH1750FVI Ambient Light Sensor support
   Correct order dependency

Factoring out common dependencies

 - STMicro LSM6DSO32 IMU sensor
   if SENSORS_LSM6DSO32 for common dependency

 - Broadcom APDS-9922 proximity and ambient light sensor
   if SENSORS_APDS9922  for common dependency

 - MEAS MS58XX altimeters sensor
   if SENSORS_MS58XX for common dependency

Signed-off-by: simbit18 <simbit18@gmail.com>
2025-11-28 11:03:55 +08:00
Alan Carvalho de Assis
13a361ab30 docs/stm32f429i-disco: Add the stm32f429i-disco picture
Signed-off-by: Alan C. Assis <acassis@gmail.com>
2025-11-27 18:27:46 -03: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
Michal Lenc
5743edd0e9 arch/arm/src/samv7/sam_qspi_spi.c: add support for SPI_SETDELAY
This commit adds support for SPI_SETDELAY operation on SAMv7 QSPI
peripheral running in SPI mode. The logic is the same as for standard
SPI peripheral, just different registers. The change allows to set
custom delays between transfers, chip selects and so on.

Signed-off-by: Michal Lenc <michallenc@seznam.cz>
2025-11-27 22:46:03 +08:00
Michal Lenc
edf3cc55a5 drivers/mtd/w25: support custom SPI transfers delay
This commit adds SPI_SETDELAY interface if CONFIG_SPI_DELAY_CONTROL
option is set. This allows to set custom delay between SPI transfers,
chip selects and so on.

Default values are set to 0. W25 SPI NOR flash works with them and
I haven't found any other values in the datasheet.

Signed-off-by: Michal Lenc <michallenc@seznam.cz>
2025-11-27 22:27:40 +08:00
Jukka Laitinen
58978490ad fs/fat: Ignore multiple consecutive slashes in long file names
This fixes the same issue as in 1f15756156, for long file names.

Signed-off-by: Jukka Laitinen <jukka.laitinen@tii.ae>
2025-11-27 22:26:56 +08:00
hujun5
0c6fe04ef7 Revert "sched_idletask: remove the check for whether tcb is NULL"
This reverts commit 8f91054b1d.

Signed-off-by: hujun5 <hujun5@xiaomi.com>
2025-11-27 08:26:53 -03:00
Vlad Pruteanu
70455f1890 xtensa/esp32: Add support for hardware accelerated HMAC-SHA
This add support for using the cryptographic accelerator
within the ESP32 for HMAC-SHA operations. The supported
algorithms are: SHA1 and SHA512.

Signed-off-by: Vlad Pruteanu <pruteanuvlad1611@yahoo.com>
2025-11-27 03:38:09 +08:00
Huang Qi
311f42bbac libc/unistd: Replace pipe() macro with proper function implementation
Replace the pipe() macro definition with a proper function implementation
to improve POSIX compliance and debugging capabilities. The new pipe()
function serves as a wrapper around pipe2() with flags set to 0.

Changes include:
- Convert pipe() from macro to function declaration in unistd.h
- Add lib_pipe.c implementation file with proper function documentation
- Update build system files (CMakeLists.txt and Make.defs) to include
  the new source file when CONFIG_PIPES is enabled
- Add pipe() entry to libc.csv for symbol tracking

This change allows for better debugging, proper symbol resolution,
and follows NuttX coding standards for library function implementations.

Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2025-11-26 17:18:13 +08:00
hujun5
8f91054b1d sched_idletask: remove the check for whether tcb is NULL
We should not call these functions before nx_start;
therefore, this_task will not be empty.

Signed-off-by: hujun5 <hujun5@xiaomi.com>
2025-11-25 16:01:29 -03:00
Matteo Golin
3edf6de552 drivers/timers/arch_alarm: Revert removal of ndelay_accurate
This reverts the removal of ndelay_accurate from #14450, since as
mentioned in #17011, this fails to consider the `sim` architecture
where CONFIG_BOARD_LOOPSPERMSEC was set to 0 because of reliance on the
accurate implementations of the up_delay functions. All the commit did
was remove a more accurate implementation in favour of a less accurate
one.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
2025-11-25 22:33:48 +08:00
dependabot[bot]
cf30528231 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:36:55 +01:00
wangchengdong
ba05c7f133 sched/signal: Fix nxsig_ismember() return value behavior
nxsig_ismember() has a return type of int, but the current
implementation returns a boolean value, which is incorrect.

All callers should determine membership by checking whether
the return value is 1 or 0, which is also consistent with the POSIX sigismember() API.

Signed-off-by: Chengdong Wang wangchengdong@lixiang.com
2025-11-25 10:02:52 +08:00
wangchengdong
817e4ee354 sched/signal: Initialize signal action pool during init phase
Initialize the signal action pool during the signal initialization
phase to improve performance and reduce footprint.

Signed-off-by: Chengdong Wang <wangchengdong@lixiang.com>
2025-11-25 10:02:24 +08:00
wangchengdong
bc561c677a sched/sleep: Add nxched_nanosleep() API
Introduce the nxched_nanosleep() API to provide a lightweight
nanosecond-level sleep based on nxsched_ticksleep().
This API offers the same functionality as nxsig_nanosleep() but without
signal-related overhead, making it suitable for implementing libc
sleep() or usleep() when signals are disabled.

Signed-off-by: Chengdong Wang wangchengdong@lixiang.com
2025-11-25 10:02:13 +08:00
wangchengdong
df17524e55 sched/signal: Use clock_compare() in nxsig_clockwait()
clock_compare() should be used when comparing clock tick values to
ensure correct handling of tick wrap-around and time ordering.

Signed-off-by: Chengdong Wang wangchengdong@lixiang.com
2025-11-25 09:50:13 +08:00
wangchengdong
7421846c94 sched/signal: Remove redundant wd_cancel() in nxsig_clockwait()
Both the watchdog timeout and signal dispatch paths already cancel
the watchdog timer, so the explicit wd_cancel() call is redundant.

Signed-off-by: Chengdong Wang wangchengdong@lixiang.com
2025-11-25 09:50:13 +08:00
wangchengdong
a232815648 sched/signal: Fix remaining time calculation in nxsig_clockwait()
Always compute the expected wake-up time by default, so the remaining
time can be calculated correctly when the flag is not TIMER_ABSTIME.

Signed-off-by: Chengdong Wang wangchengdong@lixiang.com
2025-11-25 09:50:13 +08:00
Antoine Juckler
02db473e97 drivers/eeprom: Set the bus frequency
Add EEPIOC_SETSPEED ioctl acting like the MTDIOC_SETSPEED ioctl. The
default frequency is settable in the Kconfig.

Add xx25xx SPI delay control configurations.

Signed-off-by: Antoine Juckler <6445757+ajuckler@users.noreply.github.com>
2025-11-25 09:49:26 +08:00
chengdong wang
df3fe0e16f Revert "sched/signal: Unblock task waiting for event when a signal received"
Events are not defined in the POSIX standard, so signals are not required
to wake tasks that are in the TSTATE_WAIT_EVENT state.

Signed-off-by: Chengdong Wang wangchengdong@lixiang.com
2025-11-24 11:00:23 -03:00
Max Kriegleder
a9ecff5f1c arch/arm/{nrf52|nrf53|nrf91}/i2c: fix I2C bus getting stuck during read
During I2C read, one-too-many byte is read, which can lead to the I2C bus
getting stuck. This is likely due to the STOP condition being set at the
wrong time or being missed completely. The chip offers a shortcut, such
that the STOP condition is set automatically after the last byte is being
written/read.

Signed-off-by: Max Kriegleder <max.kriegleder@gmail.com>
2025-11-24 14:57:10 +01:00
ouyangxiangzhen
6689a408f3 Documentation/drivers/timers: Add information about timers.
This commit added additional informantion about the timer driver
abstraction.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2025-11-24 19:43:07 +08:00
ouyangxiangzhen
a923cfe4ed arch/riscv: Fix bl602 start_absolute.
This commit fix bl602 start_absolute.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2025-11-24 19:43:07 +08: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
ouyangxiangzhen
0d0c02205b drivers/timers: Fix oneshot callback arg.
This commit fixed the oneshot callback arg problem.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2025-11-24 19:43:07 +08:00
ouyangxiangzhen
b540618e9f driver/timers: Simplify the up_timer_initialize.
This commit simplified the up_timer_initialize.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2025-11-24 19:43:07 +08:00
ouyangxiangzhen
b1dd15e6e5 arch/riscv: Remove kmalloc.h for mtime driver.
This commit removed kmalloc.h for mtime driver.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2025-11-24 19:43:07 +08:00
ouyangxiangzhen
ee32bd44e0 arch/risc-v: Add clkdev drivers for esp32 timers.
This commit added clkdev drivers for esp32 timers.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2025-11-24 19:43:07 +08:00
ouyangxiangzhen
882c663a4f arch/riscv: Add clkdev driver for esp32c3-legacy.
This commit added clkdev driver for esp32c3-legacy.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2025-11-24 19:43:07 +08:00
ouyangxiangzhen
f9e894e490 arch/riscv: Add clkdev driver for bl602 timer.
This commit added clkdev driver for bl602 timer.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2025-11-24 19:43:07 +08:00
ouyangxiangzhen
a5e64a0a5c arch/riscv: Add CONFIG_ONESHOT condition for riscv_mtimer.c.
This commit added CONFIG_ONESHOT condition for riscv_mtimer.c

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2025-11-24 19:43:07 +08:00
ouyangxiangzhen
2227f232f0 arch/risc-v: Add clkdev driver for mtime.
This commit added clkdev driver for risc-v machine timer.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2025-11-24 19:43:07 +08:00
ouyangxiangzhen
b2fc959e40 risc-v/bl602: Fix boot issue caused by atomic instructions.
Since the bl602 do not support the atomic extention, we should compile
it with `-march=rv32imfc`, or it will fail to boot when executing the
`lr.w` instruction.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2025-11-24 19:43:07 +08:00
ouyangxiangzhen
fd4d93e928 arch/risc-v: Ensure the timer setting atomicity on 32-bit platforms.
This commit guaranteed the timer setting atomicity on 32-bit platforms.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2025-11-24 19:43:07 +08:00
ouyangxiangzhen
c4fd6f9636 arch/intel64: update the defconfig after clkdev driver introduced.
This commit refreshed the defconfig after clkdev driver introduced.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2025-11-24 19:43:07 +08:00
ouyangxiangzhen
f2585f3042 arch/intel64: Added clkdev driver for oneshot_lower.
This commit addedd clkdev driver for oneshot_lower.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2025-11-24 19:43:07 +08:00
ouyangxiangzhen
c8c9dbd127 arch/intel64: Added clkdev driver for TSC-deadline.
This commit added clkdev driver for TSC-deadline.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2025-11-24 19:43:07 +08:00
chenxiaoyi
6308167c45 arch/sim: fix oneshot driver to work with both signal and sleep
This commit fixed oneshot driver to work with both signal and sleep.

Signed-off-by: chenxiaoyi <chenxiaoyi@xiaomi.com>
Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2025-11-24 19:43:07 +08:00
ouyangxiangzhen
29bf45c371 arch/sim: Add clkdev driver for sim.
This commit added clkdev driver for sim.

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
ouyangxiangzhen
6f17f1ce81 driver/timers: Simplify Goldfish timer driver.
This commit simplified goldfish timer driver for better performance.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2025-11-24 19:43:07 +08:00
ouyangxiangzhen
5296b8d3e3 drivers/timers: Simplify goldfish timer driver.
This commit simplified the goldfish timer driver, reduce the register io
operations.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2025-11-24 19:43:07 +08:00
ouyangxiangzhen
8f2f51e145 drivers/timers: Add clkdev drivers for goldfish.
This commit added clkdev drivers for goldfish.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2025-11-24 19:43:07 +08:00
buxiasen
8cb0e654a3 arch/armv8-r/timer: fix the UINT64_MAX mask cause tick mode no isr
When TICKLESS not enabled, up_alarm_set_lowerhalf will call start, if we
overwrite the compare register will cause TICK mode no longer isr.

Signed-off-by: buxiasen <buxiasen@xiaomi.com>
2025-11-24 19:43:07 +08:00
husong1
482de93342 arch/arm: Fix the arm timer's maximum delay to be a 64-bit integer.
This commit fixed the arm generic timer's maximum delay.

Signed-off-by: husong1 <husong1@xiaomi.com>
2025-11-24 19:43:07 +08:00
husong1
80463c8b06 arch/armv7r: Add armv7r clkdev timer driver.
This commit added armv7r clkdev timer driver.

Signed-off-by: husong1 <husong1@xiaomi.com>
2025-11-24 19:43:07 +08:00