Commit graph

3685 commits

Author SHA1 Message Date
Piyush Patle
90219df0ec Documentation/arm64: add AM62x board bring-up guides
Document the AM62x platform and add board guides for BeaglePlay and
PocketBeagle2. The BeaglePlay guide includes the validated manual
U-Boot boot flow used for hardware testing.

Signed-off-by: Piyush Patle <piyushpatle228@gmail.com>
2026-05-28 22:21:38 +08:00
hanzj
331caeb475 Documentation: document ping6 command.
Add documentation for the ping6 ICMPv6 ECHO request command.
The ping6 tool sends ICMPv6 ECHO_REQUEST packets to a remote
IPv6 host and reports round-trip times and packet loss statistics.

Refs #11081

Signed-off-by: hanzj <hanzjian@zepp.com>
2026-05-28 09:43:31 -03:00
Erkan Vatan
15354fc7c5 docs/boards: Add documentation for t3-gem-o1 board.
Add documentation for the T3 Gemstone O1 (t3-gem-o1) development board,
including board specifications, serial console, available
configurations (nsh), and installation instructions via RemoteProc.

Signed-off-by: Erkan Vatan <evatan@t3gemstone.org>
2026-05-28 14:16:03 +02:00
hanzj
f031dc5604 Documentation: document lzf command.
Add documentation for the lzf compression/decompression command.
The lzf tool uses the liblzf library to compress and decompress
files using the lightweight LZF algorithm.

Refs #11081

Signed-off-by: hanzj <hanzjian@zepp.com>
2026-05-28 15:43:13 +08:00
Matteo Golin
8b0c54b59e docs/nxinit: Add link to Android init docs
Add the same link from the NXInit Kconfig help.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
2026-05-28 09:38:17 +08:00
Matteo Golin
cee841c775 docs/nxinit: Document configurable file path
Document that the init.rc file path is now configurable.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
2026-05-28 09:38:17 +08:00
Tomasz 'CeDeROM' CEDRO
0cfa6f1b96 doc: Migrating the rest of documentation from cwiki.
* This completes task list in https://github.com/apache/nuttx/issues/11127.
* This preserves selected content from cwiki and moves it to new docs.
* Most pages are simple copy-paste with a simple RST formatting updates,
  with minor updates.
* Content update / reorganization will follow later on when needed.
* Files added (or updated title from cwiki -> current docs):
  * Documentation/implementation:
    * index.
    * cancellation_points.
    * Asynchronous vs. Synchronous Context Switches -> context_switches.rst.
    * ARMv7-M Hardfaults, SVCALL, and Debuggers -> hardfatuls.rst.
    * chip.h FAQ -> chip_h.rst.
    * Debug Output (SYSLOG) Issues -> syslog.rst.
    * Detaching File Descriptors -> file_descriptors.rst.
    * device_nodes.rst.
    * Dynamic Clocking -> power_management.rst.
    * ENOTTY ioctl() Return Value -> ioctl.rst.
    * memory_configurations.rst.
    * kernel_modules_vs_shared_libraries.rst.
    * NAKing USB OUT/IN Tokens -> usb.rst.
    * naming_arch_mcu_board_interfaces.rst.
    * naming_os_internals.rst.
    * nuttx_tasking.rst.
    * oneshot_timers_and_cpu_load.rst.
    * nuttx_initialization_sequence.rst.
    * short_time_delays.rst.
    * Signal Handler Tour -> signal_handlers.rst.
    * smp.rst.
    * syslog.rst.
    * Task Exit Sequence -> nuttx_tasking.rst.
    * tasks_vs_threads.rst.
    * tls.rst.
    * tickless_os.rst.
    * Why Can't Kernel Threads Have pthreads -> kernel_threads_vs_pthreads.rst.
  * Documentation/components/filesystem:
    * smartfs.rst.

Signed-off-by: Tomasz 'CeDeROM' CEDRO <tomek@cedro.info>
2026-05-28 09:34:04 +08:00
hanzhijian
2354c720d8 Documentation: document gprof command.
Add documentation for the gprof command, which controls NuttX
function-call profiling.  Covers the start, stop, dump, and help
subcommands, configuration dependencies on CONFIG_PROFILE and
CONFIG_SYSTEM_GPROF, and a worked example showing how to collect
and analyse a gmon.out file.

Refs #11081

Signed-off-by: hanzj <hanzhijian@zepp.com>
2026-05-28 02:20:42 +02:00
Alan Carvalho de Assis
4df7831d48 doc/nxinit: Rename Init to NXInit and fix review comments
Initially Xiang contributed NXInit as Init, but then the community
suggested to rename it to NXInit to avoid conflict with other init
systems.

Signed-off-by: Alan C. Assis <acassis@gmail.com>
2026-05-27 19:29:04 -04:00
wangjianyu3
a628ff656f Docs: Add documentation for Init
Add documentation for the Init component, including syntax explanations and
simple examples.

Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
2026-05-27 19:29:04 -04:00
Eren Terzioglu
328ffdb297 Docs/platforms/espressif: Add UF2 file format docs
Add UF2 file format docs for RISC-V based Espressif devices

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2026-05-27 14:29:35 -04:00
Eren Terzioglu
a8a3e36adf Docs/platforms/xtensa: Add UF2 file format docs
Add UF2 file format docs for Xtensa based Espressif devices

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2026-05-27 14:29:35 -04:00
hanzhijian
304b8706cb Documentation: document hex2bin command.
Fill the blank hex2bin documentation page with an overview,
configuration options, usage synopsis, option descriptions,
examples, and notes.  All claims are sourced from the
hex2bin_main.c implementation and the Kconfig in
apps/system/hex2bin/.

Refs #11081

Signed-off-by: Zepp-Hanzj <han6569084@gmail.com>
2026-05-27 21:46:38 +08:00
hanzhijian
8bddb558cc Documentation: Document hostname command.
Add documentation for the hostname command, which displays or
sets the system hostname.

Refs #11081

Signed-off-by: hanzj <your-email@example.com>
2026-05-27 10:04:35 -03:00
hanzhijian
95b1f7dbf1 Documentation: document cle library.
Refs #11081

Signed-off-by: hanzj <hanzj@users.noreply.github.com>
Signed-off-by: hanzhijian <hanzhijian@zepp.com>
2026-05-27 10:03:54 -03:00
hanzhijian
9fe1ce133f Documentation: document lm75 temperature command.
Fill the blank documentation page for the lm75 (LM75 Temperature)
system command. The command reads temperature data from an LM75
I2C sensor and supports sample count and unit configuration.

Refs #11081

Signed-off-by: hanzhijian <hanzhijian@zepp.com>
2026-05-27 10:03:04 -03:00
hanzhijian
4f512de7cb Documentation: Document dd command.
Add documentation for the dd command, which copies data from
an input file or device to an output file or device.

Refs #11081

Signed-off-by: hanzj <your-email@example.com>
2026-05-27 12:48:02 +02:00
hanzhijian
ab77fb3467 Documentation: Document stackmonitor command.
Add documentation for the stackmonitor command, which starts a
background daemon to monitor stack usage for all tasks and threads.

Refs #11081

Signed-off-by: hanzj <your-email@example.com>
2026-05-27 12:29:35 +08:00
hanzhijian
3f4251e257 Documentation: Document taskset command.
Fill the taskset application reference page with source-backed usage,
configuration, forms, examples, and notes.  The documented command forms and
mask constraints come from apps/system/taskset/taskset.c and the enabling
configuration comes from apps/system/taskset/Kconfig.

Signed-off-by: hanzj <han.zhijiang@zte.com.cn>
2026-05-26 23:15:36 +08:00
hanzhijian
84f8156605 Documentation: document uniqueid command.
Signed-off-by: hanzhijian <hanzhijian@zepp.com>
2026-05-26 09:05:19 -04:00
hanzhijian
cea3a33ae7 Documentation: Document tee command.
Add the missing application reference for the tee system command.  The
page now documents the command purpose, build configuration, usage,
options, arguments, examples, and error behavior using the implementation
in apps/system/tee as source evidence.

Signed-off-by: hanzhijian <hanzhijian@zepp.com>
2026-05-26 09:04:57 -04:00
Eren Terzioglu
1c382c1a39 Docs/platforms/esp32p4: Add LP Mailbox docs
Add LP Mailbox docs for esp32p4

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2026-05-26 10:03:43 +08:00
Matteo Golin
8a8a5af90d !boards/boardctl: Remove BOARDIOC_INIT
BREAKING CHANGE: Remove BOARDIOC_INIT macro now that the interface is
removed in favour of CONFIG_BOARD_LATE_INITIALIZE.

Quick fix: instead of calling BOARDIOC_INIT from your application,
instead enable late initialization to have it performed automatically
prior to application entry.

If you need custom initialization logic, use the board_final_initialize
function and `BOARDIOC_FINALINIT` command instead.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
2026-05-26 09:57:29 +08:00
hanzhijian
0d792e6ffd Documentation: document setlogmask command 2026-05-25 10:30:16 -03:00
raiden00pl
f1e7b143d9 !drivers: separate pulse count feature from PWM driver
BREAKING CHANGE: separate pulse count feature from PWM driver.

Coupling PWM driver with pulse count feature was bad decision from the beginning,
these are two different things:

- PWM is a modulation scheme: it continuously represents a value by varying duty
cycle, usually at a fixed frequency.
- Pulse train generation is a finite waveform transaction: generate N edges/pulses
with selected timing, then complete.

This change introduce a new pulse count driver with new API.
Now user can generate pulse train by providing:

- high pulse length in ns
- low pulse length in ns
- pulse count

All architectures supporting pulse count have been adapted in subsequent commits.
Users must migrate their code to use the new driver with new API.

Signed-off-by: raiden00pl <raiden00@railab.me>
2026-05-25 14:33:11 +02:00
Lup Yuen Lee
c2de12153f Dockerfile & Docs: Change bitbucket.org/nuttx/tools to github.com
The repo bitbucket.org/nuttx/tools is no longer available. This PR changes it to to github.com/patacongo/tools, as explained in https://github.com/apache/nuttx/pull/18890. This PR updates the URL in Dockerfile and Docs.

Signed-off-by: Lup Yuen Lee <luppy@appkaki.com>
2026-05-25 08:34:45 -03:00
Michal Lenc
aca5b6533e documentation/pwm: update to reflect the latest API changes
Commit 4df80e19 removed CONFIG_PWM_MULTICHAN option and changed
the API. Update the documentation to reflect this change.

Signed-off-by: Michal Lenc <michallenc@seznam.cz>
2026-05-24 15:02:09 +02:00
Arjav Patel
0eda74c478 doc/system: Add documentation for micro-ROS integration.
Add minimal documentation of micro-ROS integration to the system
applications category, covering the library skeleton structure and
Kconfig options. This document provides baseline context for the
foundational library layout in apps/system/microros/.
2026-05-24 09:10:01 +08:00
Tiago Medicci Serrano
144cfecc9a Documentation: Add entry for Python on ESP32-P4
Add entries related to the Python interpreter for ESP32-P4.

Signed-off-by: Tiago Medicci Serrano <tiago.medicci@espressif.com>
2026-05-23 09:35:16 -03:00
ImBonkers
5993ed41aa Documentation/arm: Document Nucleo-N657X0-Q LED support.
Update the Nucleo-N657X0-Q board page to reflect the autoleds and
userleds support added in the preceding commits:

* Drop "user LEDs" from the "not yet wired up" warning list (only
  the user button remains there).
* Replace the placeholder "no userleds/buttons drivers" paragraph in
  the Buttons and LEDs section with a description of the two
  mutually-exclusive paths (ARCH_LEDS vs USERLED) and a pointer to
  the new nucleo-n657x0-q:leds configuration.
* Add a leds entry under Configurations.

Signed-off-by: ImBonkers <samuelnlinden@pm.me>
2026-05-23 20:23:35 +08:00
Jiri Vlasak
7065266c0c doc/audioutils: Add rtttl-c documentation
Add documentation about rtttl-c, a simple RTTTL parsing library.

Signed-off-by: Jiri Vlasak <jvlasak@elektroline.cz>
2026-05-21 23:12:05 -04:00
Matteo Golin
a50614512c docs/raspberrypi-4b: Document new SMP configuration
Documents the new SMP configuration.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
2026-05-22 06:45:10 +08:00
hanzhijian
2b670b83ae Documentation: add candump application documentation
Signed-off-by: hanzhijian <hanzhijian@zepp.com>
2026-05-22 00:43:01 +08:00
hanzhijian
41cd6eb16d Documentation/uorb: Fix command references in uORB docs.
Align the uORB application documentation with the actual command names, source layout, and configuration options in apps/system/uorb.

This updates the page to describe both uorb_listener and uorb_generator, uses the registered NSH command names in usage examples, and documents the listener and generator options to match the current implementation.

It also adds the relevant Kconfig enablement notes so the documented commands are easier to find and use.

Tested with:
- make html SPHINXOPTS="-W" -j

Signed-off-by: hanzhijian <hanzhijian@zepp.com>
2026-05-22 00:42:48 +08:00
Eren Terzioglu
50352c5b75 Docs/platforms/risc-v: Add Analog Comparator docs for esp32[-h2|-p4]
Add Analog Comparator docs for esp32h2 and esp32p4

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2026-05-21 09:38:58 -04:00
Peter Barada
2230d32595 Documentation/nucleo-h753zi: Add board image
Add missing NUCLEO-H753ZI board image.

Signed-off-by: Peter Barada <peter.barada@gmail.com>
2026-05-21 08:56:24 +02:00
Peter Barada
1840cbe63d Documentation/nucleo-h753zi: Fix typo in test log
Fix typo in string written to SD card; its "This", not "Thos".

Signed-off-by: Peter Barada <peter.barada@gmail.com>
2026-05-21 08:56:24 +02:00
Peter Barada
fc2f6c9fc5 boards/arm/stm32h7: Add support fpr nucleo-h753zi board
Add BSP for the NUCLEO-H753ZI board using nucleo-h743zi2 as base.

Signed-off-by: Peter Barada <peter.barada@gmail.com>
2026-05-21 08:56:24 +02:00
dependabot[bot]
f657ea6031 build(deps): bump idna from 3.11 to 3.15 in /Documentation
Bumps [idna](https://github.com/kjd/idna) from 3.11 to 3.15.
- [Release notes](https://github.com/kjd/idna/releases)
- [Changelog](https://github.com/kjd/idna/blob/master/HISTORY.md)
- [Commits](https://github.com/kjd/idna/compare/v3.11...v3.15)

---
updated-dependencies:
- dependency-name: idna
  dependency-version: '3.15'
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-20 13:13:59 -04:00
Peter van der Perk
52ae08196d Docs/platforms/imxrt: Update chip support table.
Include i.MXRT1170 as supported chip and add newer unsupported chips.
Also updated the cache chapter to reflect current state of driver and
support.

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2026-05-20 17:34:30 +08:00
Eren Terzioglu
306de5b04b Docs/platforms/esp32p4: Add touch sensor docs
Add touch sensor docs for esp32[-p4]

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2026-05-19 16:38:16 +08:00
Xiang Xiao
c6654b1106 !sched/clock: remove CONFIG_SYSTEM_TIME64 and always use 64-bit time
The 32-bit system clock has a limited range (~497 days) and the
configuration knob is no longer worth the complexity given that
practically every modern target already enables it.  Make 64-bit
time_t/clock_t/sclock_t/nuttx_time_t the only supported flavor.

Specifically:
  - Drop the SYSTEM_TIME64 Kconfig option and its dependent
    PERF_OVERFLOW_CORRECTION/HRTIMER guards in sched/Kconfig.
  - Remove every #ifdef CONFIG_SYSTEM_TIME64 branch in headers
    (include/{sys/types.h,limits.h,inttypes.h,nuttx/clock.h,
    nuttx/fs/hostfs.h}) and core code paths
    (sched/clock/clock.h, drivers/power/pm/pm_procfs.c,
    drivers/rpmsg/rpmsg_ping.c, fs/procfs/fs_procfsuptime.c,
    libs/libc/wqueue/work_usrthread.c,
    arch/avr/src/avrdx/avrdx_timerisr_tickless_alarm.c).
  - Strip CONFIG_SYSTEM_TIME64=y from every board defconfig.
  - Update Documentation/guides/rust.rst accordingly.

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2026-05-19 16:21:28 +08:00
Xiang Xiao
c32b683085 !compiler: drop CONFIG_HAVE_LONG_LONG and require long long support
Every compiler supported by NuttX provides the "long long" types,
so the CONFIG_HAVE_LONG_LONG indirection is no longer useful.
Remove the option from include/nuttx/compiler.h and treat
"long long" as unconditionally available across the OS.

In addition to deleting the guard itself, this commit unconditionally
enables the long-long flavored helpers that used to be gated behind
it:

  - libs/libc/fixedmath: drop the soft-emulated b32/ub32 routines
    in lib_fixedmath.c (-261 lines) and trim the matching
    prototypes, Make.defs and CMakeLists.txt entries; keep only
    the long-long backed implementations.
  - include/sys/endian.h, include/strings.h, libs/libc/string
    /lib_ffsll.c, lib_flsll.c: always expose the 64-bit byte-swap
    and ffsll/flsll variants.
  - libs/libm/libm/lib_llround{,f,l}.c: drop the empty stubs.
  - libs/libc/stdlib (atoll, llabs, lldiv, strtoll/ull, rand48,
    strtold), libs/libc/stream (libvsprintf, libvscanf,
    libbsprintf, ultoa_invert), libs/libc/misc (crc64, crc64emac),
    libs/libc/inttypes/strtoimax, libs/libc/lzf, libs/libc/libc.csv,
    libs/libc/string (memset, vikmemcpy): remove the
    #ifdef CONFIG_HAVE_LONG_LONG branches.
  - include/{stddef.h,stdlib.h,fixedmath.h,sys/epoll.h,cxx/cstdlib,
    nuttx/audio/audio.h,nuttx/crc64.h,nuttx/lib/math.h,
    nuttx/lib/math32.h,nuttx/lib/stdbit.h}: same guard cleanup.
  - drivers/note/note_driver.c, fs/spiffs/src/spiffs.h,
    sched/irq/irq_procfs.c: drop their local guards as well.
  - Documentation/applications/netutils/ntpclient/index.rst:
    refresh the documentation snippet.

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2026-05-19 16:21:28 +08:00
Saurav Pal
4f6e695f7c fs/mnemofs: Add mnemofs version 1 support.
Split mnemofs into allocation, directory, file, CTZ, and read/write
modules, and update direntry traversal and file handling. Add superblock
format version 1 support, reject newer on-flash versions, and preserve
the mounted version when rewriting metadata.

Update the NAND simulator drivers for the new mnemofs behavior by fixing
spare writes, exposing the erase state, allowing raw reads, and documenting
the background-task startup flow.

Signed-off-by: Saurav Pal <resyfer.dev@gmail.com>
2026-05-19 10:29:11 +08:00
Eren Terzioglu
f21acd2213 Docs/platforms/risc-v: Add LPSPI and SPI3 docs for esp32[-p4]
Add LPSPI and SPI3 docs for esp32p4

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2026-05-19 02:04:35 +08:00
ImBonkers
f47e5394b5 Documentation/arm: Add STM32N6 and Nucleo-N657X0-Q
Add documentation for the STMicro STM32N6 chip family and the
Nucleo-N657X0-Q development board introduced in the previous two
commits.

  - platforms/arm/stm32n6/index.rst
        Chip overview: core, peripherals supported in the initial
        port, and a pointer to the board page.

  - platforms/arm/stm32n6/boards/nucleo-n657x0-q/index.rst
        Board page, structured per Documentation/contributing/
        doc_templates/board.rst: hardware summary, user LED and
        button pin map, the two shipped configs (nsh, ostest),
        and the DEV-mode flash recipe used to load NuttX into
        AXISRAM via ST-LINK.

  - platforms/arm/stm32n6/boards/nucleo-n657x0-q/nucleo-n657x0-q.jpg
        Photograph of the board, referenced from the board page.

The pages are picked up by the existing glob-based toctree in
Documentation/platforms/arm/index.rst, no parent index changes are
required.

Signed-off-by: ImBonkers <samuelnlinden@pm.me>
2026-05-18 14:50:29 -03:00
Tomasz 'CeDeROM' CEDRO
76b31b04a3 doc/esp32p4: ESP32-P4 chip revisions, ESP32-P4-Nano board note.
* NuttX supports ESP32-P4 >= v3.0 by default.
* In order to run on older chips configuration tuning is required.
* Without configutation tune boot loop happens on older chips.
* Added note on WaveShare ESP32-P4-Nano board that is almost identical
  to existing ESP32-P4-Function-EV-Board board, so configs are compatible,
  but it has v1.3 chip, thus config tune is required as documented above.
* Added cross-file reference label to esp32p4-function-ev-board.

Signed-off-by: Tomasz 'CeDeROM' CEDRO <tomek@cedro.info>
2026-05-14 02:55:45 -04:00
Abhishek Mishra
9451848de3 Documentation/nsh: add chmod and chown command docs
Document the new NSH chmod and chown builtins,
including supported numeric permission and
ownership forms.

Signed-off-by: Abhishek Mishra <mishra.abhishek2808@gmail.com>
2026-05-14 02:44:26 -04:00
dependabot[bot]
f5689656c6 build(deps): bump urllib3 from 2.6.3 to 2.7.0 in /Documentation
Bumps [urllib3](https://github.com/urllib3/urllib3) from 2.6.3 to 2.7.0.
- [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.3...2.7.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-12 02:45:27 -04:00
Matteo Golin
382bb5e874 docs/risc-v: Remove mention of NSH_ARCHINIT
Removes mention of NSH_ARCHINIT since this configuration option no
longer exists.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
2026-05-10 07:59:10 +08:00