Commit Graph

61088 Commits

Author SHA1 Message Date
Matteo Golin 24dbdcd033 docs/m9s12/demo9s12ne64: Migrate README.txt to RST
Migrate legacy README.txt to RST format.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
2026-02-12 10:43:53 +01:00
Matteo Golin 49a149a78f docs/m9s12/ne64badge: Migrate README.txt to RST
Migrate legacy README.txt documentation to RST format.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
2026-02-12 10:43:53 +01:00
Jiri Vlasak 508f0d4b73 doc/userled: Fix printf example
It is needed to escape \ itself.

Signed-off-by: Jiri Vlasak <jvlasak@elektroline.cz>
2026-02-12 08:49:18 +01:00
Tiago Medicci Serrano 9cf7d80bab sched/mqueue: Enable receiving messages on an interrupt handler
The internal implementation of `file_mq_receive` did not allow
receiving a message from an interrupt handler. Although it is not
possible to wait for a message in an interrupt context, it is
perfectly possible to retrieve already-existing messages from the
message queue. This commit modifies file_mq_timedreceive_internal
to enable checking the message list and, if no messages exist, it
returns immediately. This enables receiving any existing messages
in an interrupt context.

Signed-off-by: Tiago Medicci Serrano <tiago.medicci@espressif.com>
2026-02-11 13:10:31 -05:00
donghaokun cbe13affa1 arch/tricore: initialize spinlock used by tricore systimer
Add explicit spin_lock_init in tricore_systimer_initialize() for the lock used by tricore systimer.

Signed-off-by: Haokun Dong <donghaokun@lixiang.com>
2026-02-11 11:28:52 -03:00
buxiasen 255618d838 imx95: add board reset
We suppose to use up_systemreset for nsh reboot command.

Signed-off-by: buxiasen <buxiasen@xiaomi.com>
2026-02-11 14:10:18 +01:00
buxiasen 8cff78cadf arm64/chip/imx9: add cmake support
We should prefer cmake for better compile speed.

Signed-off-by: buxiasen <buxiasen@xiaomi.com>
2026-02-11 14:10:18 +01:00
Matteo Golin e5077df813 docs/rasperrypi-pico-2: Small typo correction
The header underline did not extend far enough for Sphinx to correctly
parse it as a header.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
2026-02-11 10:28:14 +01:00
yaojingwei 24a18d33af v4l2_cap: fix reqbuf return error when set count = 0.
Return success when reqbuf count is zero.


Signed-off-by: yaojingwei <yaojingwei@xiaomi.com>
2026-02-10 16:20:21 -05:00
yangyalei 84bcb12fff nuttx/v4l2: Fix array access out of bounds
Fix out-of-bounds access in v4l2 array handling.


Signed-off-by: yangyalei <yangyalei@xiaomi.com>
2026-02-10 16:20:21 -05:00
vrmay23 6da5100bc0 arch/stm32h7: fix FDCAN clock, ILS register and extended ID
Fix three issues in the STM32H7 FDCAN SocketCAN driver:

1. Clock configuration: Allow board.h to override STM32_FDCANCLK.
   Previously the driver hardcoded STM32_HSE_FREQUENCY, ignoring
   any board-specific clock configuration.

2. ILS register bug: Fix putreg32 call that was writing FDCAN_ILS_TCL
   constant instead of the computed regval, causing interrupt routing
   issues.

3. Extended ID filter size: Increase n_extid from 64 to 128. Despite
   the reference manual (RM0433) suggesting 64 max, testing shows
   that 128 is required for reliable extended ID frame reception.
   With 64, some extended ID frames were silently dropped.

Signed-off-by: Vinicius May <vmay.sweden@gmail.com>
2026-02-10 08:34:25 -03:00
Felipe Moura ef71625ede input: add keyboard matrix driver
Add a generic kmatrix lower-half with polling/debounce, STM32 board adapters, Kconfig options, a public API header, and a test example/documentation.

Signed-off-by: Felipe Moura <moura.fmo@gmail.com>

decouple kbd / keypad.

Fix some comments

add documentation

fix rule issues

Update CMakeLists.txt

update documentation.

improve documentation
2026-02-10 08:15:01 -03:00
zhangyuan29 6c37217c36 drivers/note: noteram ioctl FIONBIO should return -ENOTTY
In file_dup3, the file descriptor is initialized with the O_NONBLOCK flag.
If the inode's ioctl(FIONBIO) call fails with a result other than OK or
ENOTTY, the file may be mistakenly released.

Signed-off-by: zhangyuan29 <zhangyuan29@xiaomi.com>
2026-02-10 08:01:59 -03:00
yaojingwei c5549143ad sim_camera: support enum pixel format.
Expose enum pixel format support in sim_camera.

Signed-off-by: yaojingwei <yaojingwei@xiaomi.com>
2026-02-09 20:56:46 -03:00
yaojingwei c2efa96002 drivers/video: optimize critical section.
use spin/mutex lock to replace critial section.

Signed-off-by: yaojingwei <yaojingwei@xiaomi.com>
2026-02-09 20:56:46 -03:00
Andre Heinemans e83606732d boards/arm: add nxp mr-navq95b support
Build Documentation / build-html (push) Has been cancelled
- Add support for the MR-NAVQ95 which is an open-source development
  board designed for mobile robotics applications.
- Utilizes the NXP i.MX95 processor M7 core
- Configurations:
  'nsh'   A minimal configuration that only enables nsh shell
          on a UART
  'rpmsg' This configuration is similar to nsh but in addition
          it offers the Remote Processing Messaging (RPMsg) service to
          enable heterogeneous inter-core communication.

Signed-off-by: Andre Heinemans <andre.heinemans@nxp.com>
2026-02-06 15:28:12 -03:00
simbit18 99db09d050 boards/arm/s32k3xx: CMake added boards
CMake added boards:

  - mr-canhubk3

 -  s32k344evb

Signed-off-by: simbit18 <simbit18@gmail.com>
2026-02-06 15:27:50 -03:00
simbit18 b4be9a495a arch/arm/src/s32K3xx: CMake build implemented for NXP S32K3 Family
- added NXP S32K3 Family

Signed-off-by: simbit18 <simbit18@gmail.com>
2026-02-06 15:27:50 -03:00
Jiri Vlasak 65f8053305 lcd/ili9341: Improve putrun's checks
Improve checks for the position outside of the LCD's area. Fix the input
when possible.

Slightly improve the documentation.

Signed-off-by: Jiri Vlasak <jvlasak@elektroline.cz>
2026-02-06 14:15:36 -03:00
liang.huang 64d191d32e mm/mm_gran: fix data truncation by using size_t for mask
Use size_t instead of unsigned int for 'mask' to avoid address truncation,
especially when memory addresses exceed 32 bits.

Signed-off-by: liang.huang <liang.huang@houmo.ai>
2026-02-06 08:16:33 -05:00
Matteo Golin e8b3630224 docs/or1k: Migrate README.txt to RST format
Build Documentation / build-html (push) Has been cancelled
Migrate the or1k documentation from legacy README.txt to RST.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
2026-02-06 08:54:28 -03:00
Andre Heinemans 9ecfff0833 boards/imx95-evk: enable mpu by default
Enabling MPU will fix imx95-evk:rpmsg by making rsc-table and vrings
regions non-cachable. Since the rewrite of RpMsg these regions are not
invalidated anymore.

Signed-off-by: Andre Heinemans <andre.heinemans@nxp.com>
2026-02-05 11:17:47 -05:00
Adwait Godbole 83c11b29a9 tools: fix make host_info flag parsing and config string escaping
Fix incorrect flag handling and string escaping in the `make host_info`
diagnostic target.

Previously, CFLAGS, CXXFLAGS, and LDFLAGS were passed in a form that caused
improper splitting and quoting, which resulted in malformed output and
incorrectly escaped configuration values such as CONFIG_APPS_DIR.

This change ensures that:
- Compilation flags are passed as proper shell strings
- Flags are split correctly using shlex
- Configuration values are escaped exactly once when generating sysinfo.h
- Parsed output matches the contents of the .config file

This change affects diagnostic output only and does not modify the NuttX
build process or generated binaries.

Signed-off-by: Adwait Godbole <adwaitngodbole@gmail.com>
2026-02-05 14:23:19 +01:00
yangyalei 854cd0ca21 nuttx/audio: clear apb buffer when playback dequeue
memset apb buffer to zero when dequeue

Signed-off-by: yangyalei <yangyalei@xiaomi.com>
2026-02-05 08:22:18 -03:00
fangyibo b13defe9e4 nuttx/audio: ALLOCATE_BUFFER & BUFFERINFO support multiple calling
support multiple applications simultaneously calling ALLOCATE_BUFFER

Signed-off-by: fangyibo <fangyibo@xiaomi.com>
2026-02-05 08:22:18 -03:00
yangyalei 904f391982 nuttx/audio: Add audio_try_enqueue
support upper driver check whether enqueue apb buffer to the lower
driver

Signed-off-by: yangyalei <yangyalei@xiaomi.com>
2026-02-05 08:22:18 -03:00
yangyalei 928b9368b4 nuttx/audio: Add compress audio macros
add compress audio macors and some subfmt

Signed-off-by: yangyalei <yangyalei@xiaomi.com>
2026-02-05 08:22:18 -03:00
yangyalei 8db9865a03 nuttx/audio: Add AUDIOIOC_RESETSTATUS ioctl
use AUDIOIOC_RESETSTATUS to reset application pointer

Signed-off-by: yangyalei <yangyalei@xiaomi.com>
2026-02-05 08:22:18 -03:00
yangyalei f8ab192285 nuttx/audio: Update app write head in enqueuebuffer
update aplication pointer in enqueuebuffer

Signed-off-by: yangyalei <yangyalei@xiaomi.com>
2026-02-05 08:22:18 -03:00
yangyalei 374a102af7 nuttx/audio: support multiplexing and state machine management
support multiple applications using upper at the same time

Signed-off-by: yangyalei <yangyalei@xiaomi.com>
2026-02-05 08:22:18 -03:00
yangyalei 7d55e26421 nuttx/audio: Direct return non-format configure operation
protect configure lower only once

Signed-off-by: yangyalei <yangyalei@xiaomi.com>
2026-02-05 08:22:18 -03:00
yangyalei d15f69cdb6 nuttx/audio: Add audio_stop/pause/resume
relayout the code for easy modification

Signed-off-by: yangyalei <yangyalei@xiaomi.com>
2026-02-05 08:22:18 -03:00
yangyalei bc718c605d nuttx/audio: Add audio_poll
support poll notify read/write enable

Signed-off-by: yangyalei <yangyalei@xiaomi.com>
2026-02-05 08:22:18 -03:00
yangyalei 9c35b01cd8 nuttx/audio: Add audio_mmap
1. mmap hw_ptr_s,
2. mmap apb buffers;

Signed-off-by: yangyalei <yangyalei@xiaomi.com>
2026-02-05 08:22:18 -03:00
yangyalei 06e233079f nuttx/audio: support record/release apb buffer in upper driver
support maintain apb buffer in upper half driver

Signed-off-by: yangyalei <yangyalei@xiaomi.com>
2026-02-05 08:22:18 -03:00
yangyalei d85c4db932 nuttx/audio: Add Hardware pointer
Add Hw pointer recored apb buffer read/write position

Signed-off-by: yangyalei <yangyalei@xiaomi.com>
2026-02-05 08:22:18 -03:00
yangyalei 2cc624a4c4 nuttx/audio: add AUDIOIOC_GETSTATE ioctl
support get lower driver state

Signed-off-by: yangyalei <yangyalei@xiaomi.com>
2026-02-05 08:22:18 -03:00
yangyalei 0af7c985b4 nuttx/audio: add AUDIOIOC_GETAUDIOINFO ioctl
use AUDIOIOC_GETAUDIOINFO get current audio format

Signed-off-by: yangyalei <yangyalei@xiaomi.com>
2026-02-05 08:22:18 -03:00
Bowen Wang 877a9af2d1 rpmsg_virtio/rptun: support fallback cpuname when VIRTIO_RPMSG_F_CPUNAME not set
When the VIRTIO_RPMSG_F_CPUNAME feature is not negotiated, the driver
previously would crash due to DEBUGASSERT. This commit adds support
for a fallback mechanism:

1. Add rpmsg_virtio_probe_cpuname() API that accepts an optional cpuname
   parameter to be used when VIRTIO_RPMSG_F_CPUNAME is not available.

2. Modify rptun driver to pass the cpuname from rptun device config
   to rpmsg_virtio_probe_cpuname().

3. Refactor rptun device register/unregister to prioritize RPMSG device
   handling before other virtio device types.

This ensures the system works correctly in scenarios where the remote
side does not support the VIRTIO_RPMSG_F_CPUNAME feature.

Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
2026-02-04 20:01:13 -03:00
liang.huang 1653db7ddc riscv: Fix page table traversal for SV39
With CONFIG_PAGING enabled and the RISC-V SV39 MMU active, the page fault
handler incorrectly tracked page table levels: `ptprev` pointed to the L1
page table while `ptlevel` indicated L2. This inconsistency caused faulty
virtual address resolution.

This commit fixes the traversal logic to ensure consistent level tracking
across all three page table levels (L1–L3), enabling reliable page fault
handling and on-demand paging.

Additional changes:
- Set PGT_L3_SIZE to 2048 to enable mapping up to 8MB of address space.
- Update knsh_paging config to avoid crashes caused by excessive memory
  alignment requirements.
- Add knsh64_paging config to verify this commit works as expected.

Signed-off-by: liang.huang <liang.huang@houmo.ai>
2026-02-04 11:52:04 -03:00
hujun5 82a218cbf3 sched_waitpid.c: HIS_metric_violation: CCM
Build Documentation / build-html (push) Has been cancelled
This commit refactors nxsched_waitpid() by extracting the core waiting logic
into a separate waittcb() helper function. This change significantly reduces
the cyclomatic complexity of the main function while preserving all original
functionality and improving code maintainability with better separation of
concerns between initialization and wait handling logic.

Signed-off-by: hujun5 <hujun5@xiaomi.com>
2026-02-04 03:04:44 +08:00
hujun5 5abba4f655 sched_waitpid.c: HIS_metric_violation(HIS_GOTO)
This commit eliminates the goto statement in nxsched_waitpid() function to
improve code quality metrics compliance. The control flow has been restructured
using nested if-else statements to achieve identical functionality while
maintaining MISRA/HIS coding standard compliance and improving code readability.

Signed-off-by: hujun5 <hujun5@xiaomi.com>
2026-02-04 03:04:44 +08:00
yinshengkai 87b317f965 Documentation: Add gprof profiling tool documentation and support.
Verified on qemu-armv7a and mps2-an500 platforms with
CoreMark benchmark and system profiling examples

Signed-off-by: yinshengkai <yinshengkai@bytedance.com>
2026-02-04 03:03:45 +08:00
yinshengkai 87be79efb3 boardss: add gprof examples
Two Examples of Incorporating gprof into QEMU

Signed-off-by: yinshengkai <yinshengkai@bytedance.com>
2026-02-04 03:03:45 +08:00
yinshengkai 54040c6888 libs/libc/machine/arm: add Cortex-M0/M23 support to arch_mcount
Add support for ARMv6-M and ARMv8-M Baseline architectures
(Cortex-M0/M0+/M23) in the mcount profiling function. These cores
only support limited Thumb-1 instruction set and require different
assembly instructions compared to ARMv7-M and higher.

Changes:
- Use MOVS+BICS instead of BIC for bit clearing on M0/M23
- Separate register restore for limited push/pop instructions
- Use BX instead of direct POP to PC on M0/M23

Signed-off-by: yinshengkai <yinshengkai@bytedance.com>
2026-02-04 03:03:45 +08:00
anjiahao 871a9b3261 libc_bsd:add missing SPDX-License
Just add SPDX-License, no code changes

Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2026-02-04 03:02:04 +08:00
anjiahao 4db4252a7c libc/string: Add BSD-optimized memset implementation.
Add lib_bsdmemset.c from newlib (Red Hat BSD license) which provides
an optimized memset using word-aligned writes and loop unrolling for
improved performance on larger buffers.

Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2026-02-04 03:02:04 +08:00
wangmingrong1 6301af9a44 libbuitin/compiler-rt: Solve some compilation errors
1. remove_item It needs to use the full path to exclude the file, otherwise the exclusion will fail
2. No include path was added, resulting in the header file not being found

Signed-off-by: wangmingrong1 <wangmingrong1@xiaomi.com>
2026-02-04 02:33:36 +08:00
wangmingrong1 5f7d4ddcad compiler-rt: Upgrade to version 18.1.3
Some files need to be included in a specific arch

Signed-off-by: wangmingrong1 <wangmingrong1@xiaomi.com>
2026-02-04 02:33:36 +08:00
wangmingrong1 0832cdca1c toolchain/arm/clang:Update clang compilation specifications
Delete the specified --config, clang can automatically find the library file through the set -march, -mcpu, and -mfpu
Otherwise, different versions of clang support different special cfg settings.

Signed-off-by: wangmingrong1 <wangmingrong1@xiaomi.com>
2026-02-04 02:33:36 +08:00