Commit graph

3352 commits

Author SHA1 Message Date
Adwait Godbole
16e2aa0922 docs: Update Signal Interfaces documentation
Update the Signal Interfaces documentation to include all
signals with configurable default actions and group them
by behavior for improved readability.

This reflects the current implementation in
sched/signal/sig_default.c.

Signed-off-by: Adwait Godbole <adwaitngodbole@gmail.com>
2026-01-31 10:07:36 -03:00
Bowen Wang
97b64010cd Documentation/rpmsg: add rpmsg dump documentation
Add documentation for the RPMsg dump command, which is a diagnostic
tool for dumping RPMsg debugging information. The document covers:

- Command usage and syntax
- Output description including CPU info, endpoint list, virtqueue
  dump, and buffer states
- Common debugging use cases such as TX buffer timeout issues,
  communication failures, and buffer leak detection

Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
2026-01-30 07:50:11 -03:00
Bowen Wang
bb5eaec973 Documentation/rpmsg: add rpmsg_ping documentation
Add comprehensive documentation for the RPMsg Ping diagnostic tool,
which is used for testing inter-processor communication and measuring
latency/throughput metrics.

The documentation includes:
- Overview and use cases
- Configuration instructions
- Command syntax and parameters
- Usage examples with sample output
- Architecture workflow diagram
- Best practices for latency and throughput testing

Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
2026-01-30 07:50:11 -03:00
buxiasen
b68876d75d Documentation/arm/qemu: add qemu-armv7r board documentation
Add documentation for qemu-armv7r board which emulates ARM Cortex-R5
processor using OpenVela's QEMU fork. The upstream QEMU does not
support ARM Cortex-R virt machine, so this board requires the
prebuilt QEMU from OpenVela.

This documentation covers:
- NSH (flat build) configuration
- PNSH (protected build with MPU) configuration
- Prerequisites for downloading prebuilt QEMU
- Debugging instructions with GDB

Signed-off-by: buxiasen <buxiasen@xiaomi.com>
2026-01-30 12:07:18 +08:00
yangsong8
5effc98add Documentations/timer: add timer_wdog software timer documentation
Add documentation for CONFIG_TIMER_WDOG, a software-based timer
implementation using the NuttX wdog subsystem.

Signed-off-by: yangsong8 <yangsong8@xiaomi.com>
2026-01-29 09:25:07 -03:00
anjiahao
01a70e9daf Documentation:update abicheck.py
Add abicheck.py usage to documentation

Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2026-01-28 18:32:39 +01:00
Bowen Wang
def2e89b6e qemu-armv8a/netnsh: enabel the virtio-pci transport
Use to verify the virtio pci transport, and update the qemu-armv8a
document.

Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
2026-01-28 13:09:19 -03:00
Bowen Wang
9f351523a7 Documentation/virtio: add VirtIO framework documentation
Add comprehensive VirtIO framework documentation including:
- VirtIO architecture overview (driver layer, framework layer, transport layer)
- Driver and device registration workflow
- Source code directory structure
- API reference for NuttX VirtIO interfaces and OpenAMP virtqueue interfaces

Signed-off-by: wangbowen6 <wangbowen6@xiaomi.com>
2026-01-28 13:09:19 -03:00
Bowen Wang
0d628cfc5b Documentation/rpmsg: add RPMsg Port UART transport documentation
Add documentation for RPMsg Port UART, a transport layer that enables
RPMsg communication between SoCs via UART when shared memory is not
available.

The documentation covers:
- Hardware requirements (UART with flow control)
- Software architecture
- Escape coding protocol for command/data separation
- Connection establishment protocol
- Data frame format
- Low power support with ping-pong wake mechanism

Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
2026-01-28 19:23:41 +08:00
Bowen Wang
eee50fc6cf Documentation/rpmsg: add RPMsg Port transport layer documentation
Add comprehensive documentation for the RPMsg Port abstract transport
layer, which supports cross-SoC communication via physical backends
like SPI and UART.

The documentation covers:
- Architecture overview and layer diagram
- Buffer management with TX/RX free and ready lists
- Buffer layout with header reservation
- Data transmission and reception flow

Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
2026-01-28 19:23:41 +08:00
makejian
83fdd685df docs: enhance crypto documentation with key management features
Add detailed documentation for:
- MTD-based key storage and persistence
- AES key generation with multiple key sizes
- ECC P-256 key pair generation for ECDSA operations
- Key lifecycle management (save/load/delete)

Signed-off-by: makejian <makejian@xiaomi.com>
2026-01-28 11:52:12 +08:00
wangzhi16
3b11545356 sched/spinlock: Update the information of critmon in docu.
Since the busy-wait time statistics for entering the critical section have been added, the critmon information in the document has been updated accordingly.

Signed-off-by: wangzhi16 <wangzhi16@xiaomi.com>
2026-01-27 21:59:14 +08:00
makejian
5331d5a905 docs: enhance crypto documentation with RSA signature schemes
Add comprehensive documentation for RSA digital signature operations supported by the cryptodev/cryptokey interface.

Includes:
- RSA-PKCS1.5: Traditional PKCS#1 v1.5 padding scheme
  - CRK_RSA_PKCS15_SIGN: Generate RSA signature with PKCS#1 v1.5 padding
  - CRK_RSA_PKCS15_VERIFY: Verify RSA signature with PKCS#1 v1.5 padding

- RSA-PSS: Probabilistic Signature Scheme for enhanced security
  - CRK_RSA_PSS_SIGN: Generate RSA signature with PSS padding
  - CRK_RSA_PSS_VERIFY: Verify RSA signature with PSS padding

Signed-off-by: makejian <makejian@xiaomi.com>
2026-01-27 19:30:14 +08:00
Tomasz 'CeDeROM' CEDRO
ec41f30f9a doc: Update Host Tools section.
* Remove `tools/` from the section name.
* Generate local TOC that lists described tools.
* Update new parsetrace.py toctree location to fix indexing and display.

Signed-off-by: Tomasz 'CeDeROM' CEDRO <tomek@cedro.info>
2026-01-27 09:52:01 +08:00
Tomasz 'CeDeROM' CEDRO
1d06fe5905 doc: Improve sphinx build time + add autobuild help info.
* Update previous `-j 1` and `-j 8` switch to `-j auto` to use all CPUs.
* This improves doc build time 62s -> 25s on 24 core CPU.
* Add information about `make autobuild` to `make help`.
* Auotbuild is very handy for quick edits preview and was not in help before.

Signed-off-by: Tomasz 'CeDeROM' CEDRO <tomek@cedro.info>
2026-01-27 09:50:55 +08:00
yukangzhi
9bda244be8 tools/parsetrace.py: Fix get_typesize bug in parsetrace.py
For the following code, we need to check 'type_attr.form'.
type_attr = DIE.attributes["DW_AT_type"]
base_type_die = dwarfinfo.get_DIE_from_refaddr(xxx)

When type_attr.form==DW_FORM_ref_addr, 'type_attr.value' means
global reference (across compilation units).

When type_attr.form==DW_FORM_ref4, 'type_attr.value' means
local reference (within the same compilation unit).

Signed-off-by: yukangzhi <yukangzhi@xiaomi.com>
2026-01-26 23:22:41 +01:00
yukangzhi
8226e8e8fe driver/noteram: Support poll threshold
The noteram driver supports setting the poll threshold.

Signed-off-by: yukangzhi <yukangzhi@xiaomi.com>
2026-01-27 03:18:38 +08:00
yukangzhi
890f2e4625 sched: add trace points during system startup and board initialization
Add trace points to record transitions of g_nx_initstate and to mark
board early/late initialization boundaries. Also add trace marks for
RESET and PANIC to improve boot-time diagnostics and failure analysis.

Add OSINIT_RESET to indicate system is in reset process.

Signed-off-by: yukangzhi <yukangzhi@xiaomi.com>
2026-01-27 03:18:11 +08:00
yukangzhi
6ccc2fc7c8 driver/ramlog: Implement the rate limiting function for ramlog driver.
Limit the maximum number of log entries allowed within
the specified time interval in seconds.

Signed-off-by: yukangzhi <yukangzhi@xiaomi.com>
2026-01-27 03:17:05 +08:00
Eren Terzioglu
e0401ae18b Docs/platforms/espressif: Add SPI docs for esp32s2
Add SPI defconfig docs for esp32s2-saola-1

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2026-01-27 03:09:34 +08:00
anjiahao
fea492cf6f libc/spawn:support get/set priority
support get/set priority

Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2026-01-26 21:01:01 +08:00
ouyangxiangzhen
fdf3eb0d56 sched/hrtimer: Update the documentation.
This commit updated the documentation for hrtimer.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2026-01-26 16:37:10 +08:00
makejian
a744ce760e Documentation: add ECC/ECDSA note
Add brief documentation for ECC/ECDSA software implementation in the crypto subsystem documentation.

Signed-off-by: makejian <makejian@xiaomi.com>
2026-01-26 10:55:57 +08:00
yinshengkai
cd1000575e docs/dumpstack: improve documentation
Add dumpstack usage and configuration instructions

Signed-off-by: yinshengkai <yinshengkai@bytedance.com>
2026-01-23 16:33:01 +08:00
daichuan
763caabf6d boards/boardctl: Add BOARDIOC_MACADDR command
Add a new boardctl command BOARDIOC_MACADDR to retrieve the MAC address of the network interface.

The board_macaddr function needs to be implemented by the board logic.

Signed-off-by: daichuan <daichuan@xiaomi.com>
2026-01-22 22:13:31 +08:00
Jiri Vlasak
4710b2f632 doc/apps: Add BARE 2026-01-22 03:48:35 +08:00
Bowen Wang
baba361bb1 Documentation/rpmsg: add RPMsg core concepts document
Add a concise RPMsg documentation covering:
- Overview of RPMsg framework for AMP systems
- Application scenarios (heterogeneous/homogeneous AMP)
- Layered architecture (Services/Framework/Transport/Physical)
- Message encapsulation process
- Workflow: channel establishment, sending and receiving
- Key design considerations (FIFO order, callback blocking)
- Transport layer comparison

All diagrams use ASCII art for portability.

Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
2026-01-22 03:45:55 +08:00
Côme VINCENT
34d3b06955 drivers/timers/capture: fix typo in capture.h
This commit fixes a typo in the capture.h header file. This is a
breaking change, but the fix is trivial (replace macro with new one).

Signed-off-by: Côme VINCENT <44554692+comejv@users.noreply.github.com>
2026-01-22 00:06:45 +08:00
makejian
8309aadd69 Documentation: Add Whetstone FPU benchmark documentation
Add documentation for the Whetstone floating-point benchmark
application which is being added to nuttx-apps.

The documentation includes:
- Overview of the benchmark
- Configuration options
- Usage examples
- Output interpretation
- Test modules description

Signed-off-by: makejian <makejian@xiaomi.com>
2026-01-20 17:15:31 +08:00
makejian
60b1cef84b Kconfig: Add ALLOW_CUSTOM_PERMISSIVE_COMPONENTS option
Add a new license configuration option for components that have
custom permissive licenses which are not covered by the standard
license options (BSD, MIT, GPL, etc.).

This option allows projects to explicitly opt-in to using components
with custom permissive licenses that allow free use, modification,
and distribution but may have specific attribution or notice
requirements.

Also update the License Setup documentation section to include
this new option.

Signed-off-by: makejian <makejian@xiaomi.com>
2026-01-20 02:15:19 +08:00
daichuan
b01f8b04e9 netdev: delete macro CONFIG_NETDEV_CHECKSUM with nuttx
not need CONFIG_NETDEV_CHECKSUM with nuttx

Signed-off-by: daichuan <daichuan@xiaomi.com>
2026-01-19 23:22:46 +08:00
daichuan
99bf7c3c5f net: skip TCP/UDP pseudo-header checksum with hardware offload
When supporting hardware checksum offloading, the network protocol stack
does not perform TCP/UDP pseudo-header checksum calculation.

Skip TCP/UDP pseudo header checksum calculation in network protocol stack

Signed-off-by: daichuan <daichuan@xiaomi.com>
2026-01-19 23:22:46 +08:00
Bowen Wang
949b519aa5 Documents/rptun: add the new rptun framework documents
Rmove the old rptun document and add new folder to add the new
rptun frameworks documents.

Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
2026-01-19 14:18:27 +08:00
aviralgarg05
ac3d964973 Doc: Correct XIAO ESP32C3 board configuration name
Documentation mentioned xiao-esp32c3 which is incorrect. The actual board name in the codebase is esp32c3-xiao. This commit fixes the board name in the documentation to match the directory structure.
2026-01-18 11:49:20 +08:00
hujun5
3129c06390 arch/arm64: disable fork support in protected build mode
Modify ARM64 architecture configuration to disable fork support in protected
build mode (BUILD_PROTECTED). Update ARCH_HAVE_FORK condition from
"!BUILD_KERNEL" to "!BUILD_KERNEL && !BUILD_PROTECTED", ensuring fork is
only available in flat/monolithic builds, not in protected kernel builds.

Signed-off-by: hujun5 <hujun5@xiaomi.com>
2026-01-18 11:17:13 +08:00
makejian
213c1b4957 docs: enhance crypto documentation with key management and asymmetric crypto
Add detailed descriptions of key management operations including:
- Key allocation and validation (CRK_ALLOCATE_KEY, CRK_VALIDATE_KEYID)
- Key import and export (CRK_IMPORT_KEY, CRK_EXPORT_KEY, CRK_EXPORT_PUBLIC_KEY)
- Key generation (CRK_GENERATE_AES_KEY, CRK_GENERATE_RSA_KEY, CRK_GENERATE_SECP256R1_KEY)
- Key lifecycle management (CRK_DELETE_KEY, CRK_SAVE_KEY, CRK_LOAD_KEY)
- Usage of keys in cryptographic operations

Signed-off-by: makejian <makejian@xiaomi.com>
2026-01-17 11:41:23 +08:00
makejian
5fb5e2ff4f docs: update crypto API documentation with supported algorithms
Document all supported cryptographic algorithms and their variants in the NuttX Crypto API subsystem, including:
- AES-CBC with 128/192/256-bit key sizes
- HMAC and hash functions
- AES GMAC and CMAC
- ChaCha20-Poly1305
- And other supported algorithms

This documentation provides a comprehensive reference for developers using the cryptographic services.

Signed-off-by: makejian <makejian@xiaomi.com>
2026-01-15 16:11:19 -03:00
xuxin19
81d1126965 tools[feat]: add config check tool
[checkkconfig.py] is a tool that simulates the effects of modifying a CONFIG item,
Can be used to check whether my config changes are what I expected.

Signed-off-by: xuxin19 <xuxin19@xiaomi.com>
2026-01-14 17:50:18 +01:00
ouyangxiangzhen
4514a11237 sched/sched: Update the comments and docs.
This commit updated the comments and docs after removing the
nxsched_tick_expiration.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2026-01-13 21:41:35 +08:00
ouyangxiangzhen
dedfc9af1f sched/wdog: Update the documentation.
This commit updated the documentation.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2026-01-13 21:41:35 +08:00
ouyangxiangzhen
b968070829 sched/hrtimer: Update the documentation.
This commit updated the documentation.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2026-01-13 21:41:35 +08:00
chenzihan1
513673c11a drivers/ioexpander: add enable & disable macro for gpio SETDEBOUNCE and SETMASK
IOEXPANDER_DEBOUNCE_DISABLE (0): Disable debounce filtering
IOEXPANDER_DEBOUNCE_ENABLE (1): Enable debounce filtering
IOEXPANDER_MASK_DISABLE (0): Unmask the interrupter
IOEXPANDER_MASK_ENABLE (1): Mask the interrupter

Signed-off-by: chenzihan1 <chenzihan1@xiaomi.com>
2026-01-13 09:27:52 -03:00
wangchengdong
51bcec53c4 nuttx/sched: rename nxsched_timer_expiration
rename nxsched_timer_expiration to nxsched_tick_expiration
    to align with nxsched_process_tick()

Signed-off-by: Chengdong Wang <wangchengdong@lixiang.com>
2026-01-12 16:20:42 +08:00
zhangshuai39
4b5bd23957 netlib: Supplement the netlib_check_httpconnectivity documentation
A brief introduction to the interface functions, parameters, and return values.

Signed-off-by: zhangshuai39 <zhangshuai39@xiaomi.com>
2026-01-09 17:11:04 +08:00
xucheng5
f989860c4a timer: add timer operation support
Add basic timer operations to the kernel, including registration,
start/stop, and callback handling. This provides a consistent timer
interface for use by kernel components and drivers.

Signed-off-by: zhaohaiyang1 <zhaohaiyang1@xiaomi.com>
2026-01-09 17:10:43 +08:00
dependabot[bot]
69d4e4101f build(deps): bump urllib3 from 2.6.0 to 2.6.3 in /Documentation
Bumps [urllib3](https://github.com/urllib3/urllib3) from 2.6.0 to 2.6.3.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/2.6.0...2.6.3)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-version: 2.6.3
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-08 09:05:02 +01:00
Huang Qi
e6a0c6c377 Documentation: Add mquickjs documentation
Add documentation for MicroQuickJS JavaScript interpreter in
Documentation/applications/interpreters/mquickjs/index.rst.

The documentation includes:
- Description of MicroQuickJS (lightweight JS interpreter by Fabrice Bellard)
- Strict mode restrictions (ES5 subset, no array holes, no value boxing, etc.)
- Configuration options (CONFIG_INTERPRETERS_MQJS, priority, stack size)
- Usage instructions with command options and examples
- Memory limit warning (default 16MB is too large for embedded systems)
- Feature highlights (minimal footprint, tracing GC, ROM-based stdlib, etc.)

Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2026-01-07 12:39:14 -05:00
gaohedong
863c20544c net/vlan: add a documentation for vconfig
Users can add or delete Vlan interfaces through the vconfig tool. This document describes the usage of vconfig.

Signed-off-by: gaohedong <gaohedong@xiaomi.com>
2026-01-07 22:25:47 +08:00
zhangshuai39
6b4bb6b20f netlib: Supplement the netlib_check_ifconnectivity documentation
A brief introduction to the interface functions, parameters, and return values.

Signed-off-by: zhangshuai39 <zhangshuai39@xiaomi.com>
2026-01-07 17:26:35 +08:00
wangchengdong
24651af90c [EXPERIMENTAL]sched/hrtimer: update hrtimer document
Update the hrtimer documentation to describe the hrtimer state machine,
    which is introduced to handle safe cancellation and execution in SMP
    environments.

Signed-off-by: Chengdong Wang <wangchengdong@lixiang.com>
2026-01-06 23:14:04 +08:00