Commit Graph

3458 Commits

Author SHA1 Message Date
Tiago Medicci Serrano 08a1953193 Documentation: Document esp32p4-function-ev-board:psram_usrheap
This commit adds an entry for the ESP32-P4-Function-EV-Board's
`psram_usrheap` defconfig on docs.

Signed-off-by: Tiago Medicci Serrano <tiago.medicci@espressif.com>
2026-04-18 19:17:31 -03:00
shichunma 73be35c3a8 Documentation/ntpc: document DHCP NTP server support
Document that ntpc can use NTP servers learned from DHCP option 42 when DHCP client support is enabled.

Signed-off-by: Jerry Ma <shichunma@bestechnic.com>
2026-04-18 19:14:20 -03:00
Tomasz 'CeDeROM' CEDRO 865356908d doc: Contributing tools/checkpatch.sh example update.
* Add `./tools/checkpatch.sh -c -u -m -g HEAD~...HEAD` example
  to match checks performed by our CI.
* Add cross-reference to checkpatch.sh documentation.

Signed-off-by: Tomasz 'CeDeROM' CEDRO <tomek@cedro.info>
2026-04-18 19:06:06 -03:00
Norihiko Itou 83efa44f0c arch/arm: add STM32H755XI chip
Support STM32H755XI chip.
The STM32H755XI is a chip with a different package than the STM32H755II.

Signed-off-by: Norihiko Itou <itounrh@jae.co.jp>
2026-04-17 13:18:02 +02:00
daniellizewski 532fede38b arch/arm/src/stm32h5: Add support for USB host
Added stm32_usbdrdhost.c which adds USB FS host mode support using the
embedded PHY. Added Kconfig to select Device or Host.

Example config nucleo-h563zi:usbmsc added to test functionality

Signed-off-by: daniellizewski <daniellizewski@geotab.com>
2026-04-17 12:42:12 +08:00
Daniel Monteiro 7139b02cd6 boards/raspberrypi-pico-2-rv: fix formatting mistake on docs
Signed-off-by: Daniel Monteiro <monteiroquiet@gmail.com>
2026-04-16 10:40:06 +08:00
Eren Terzioglu d8872255e8 Docs/platforms/risc-v: Add DFS docs for esp32[-c3|-c6|-h2|-p4]
Add DFS docs for risc-v based Espressif devices

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2026-04-15 18:38:02 +02:00
Lup Yuen Lee 12e8f92a28 CI: Retry build upon failure
In Jan-Feb 2026: NuttX CI hit a [record high usage of GitHub Runners](https://github.com/apache/nuttx/issues/17914), exceeding the limit enforced by ASF Infrastructure Team. We analysed the PRs and discovered that most GitHub Runners were wasted on __(1) Failure to Download the Build Dependencies__ for DTC Device Tree, OpenAMP Messaging, MicroADB Debugger, MCUBoot Bootloader, NimBLE Bluetooth, etc __(2) Resubmitting PR Commits__:

- [Video: Analysing the Most Expensive PR](https://youtu.be/swFaxaTCEQg)
- [Video: Second Most Expensive PR](https://youtu.be/uSpQkzBogEw)
- [Video: Third Most Expensive PR](https://youtu.be/J7w1gyjwZ1w)
- [Video: Most Expensive Apps PR](https://youtu.be/182h8cRpfvI)
- [Spreadsheet: Most Expensive PRs](https://docs.google.com/spreadsheets/d/1HY7fIZzd_fs3QPyA0TX7vsYOjL86m1fNOf1Wls93luI/edit?gid=70515654#gid=70515654)

Why would __Download Failures__ waste GitHub Runners? That's because Download Failures will terminate the Entire CI Build (across All CI Jobs), requiring a restart of the CI Build. And the CI Build isn't terminated immediately upon failure: NuttX CI waits for the CI Job to complete (e.g. arm-01), before terminating the CI Build. Which means that CI Builds can get terminated 2.5 hours into the CI Build, wasting 2.5 elapsed hours x [7.4 parallel processes](https://lupyuen.org/articles/ci3#live-metric-for-full-time-runners) of GitHub Runners.

This PR proposes to __Retry the Build for Each CI Target__. NuttX CI shall rebuild each CI Target (e.g. `sim:nsh`), upon failure, up to 3 times (total 4 builds). Each rebuild will be attempted after a Randomised Delay with Exponential
Backoff, initially set to 60 seconds, then 120 seconds, 240 seconds. The rebuilds will mitigate the effects of Intermittent Download Failures that occur in GitHub Actions. (And eliminate developer frustration)

If the build fails after 3 retries: Subsequent CI Targets will __not be allowed to rebuild__ upon failure. This is to prevent cascading build failures from overloading GitHub Actions, and consuming too many GitHub Runners.

Note that NuttX CI shall retry the build for __Any Kind of Build Failure__, including Download Failures, Compile Errors and Config Errors. We designed it simplistically due to our current constraints: (1) Lack of CI Expertise (2) NuttX CI is Mission Critical (3) Legacy CI Scripts are Highly Complex. To prevent Compile Errors and Config Errors: We expect NuttX Devs to [Build and Test PRs in Our Own Repos](https://github.com/apache/nuttx/issues/18568), before submitting to NuttX.

What about __Resubmitting PR Commits__ and its wastage of GitHub Runners? We also require NuttX Devs to [Build and Test PRs in Our Own Repos](https://github.com/apache/nuttx/issues/18568), before resubmitting to NuttX. GitHub Runners will then be charged to the developer's quota, without affecting the GitHub Runners quota for Apache NuttX Project. We plan to [Kill All CI Jobs](https://youtu.be/182h8cRpfvI?si=MmAuwLISZPPMoqDq&t=1479) for PRs that have been switched to Draft Mode. We'll monitor this through the [NuttX Build Monitor](https://github.com/apache/nuttx/issues/18659).

Modified Files:

`tools/testbuild.sh`: We introduce a New Wrapper Function `retrytest` that will call the Existing Function `dotest`, to build the CI Target and retry on error.

`Documentation/components/tools/testbuild.rst`: Updated the `testbuild.sh` doc with the Retry Logic.

Signed-off-by: Lup Yuen Lee <luppy@appkaki.com>
2026-04-15 12:30:17 +02:00
Abhishek Mishra ba6a4d55fe !Documentation: describe build-time passwd generation workflow.
Build Documentation / build-html (push) Has been cancelled
Document the new mkpasswd-based password generation system and its
integration with the build process.

Changes:
* Add comprehensive mkpasswd tool documentation to components/tools
* Update SIM board docs to explain generated passwd workflow
* Update ESP32-C3-legacy board docs for passwd generation
* Update RX65N board docs with credential handling guidance
* Document how to configure and use BOARD_ETC_ROMFS_PASSWD_* options
* Explain security benefits of build-time generation vs static files
* Update all doc examples from default username "admin" to "root"

BREAKING CHANGE: Boards using static /etc/passwd files in ETC_ROMFS
must migrate to the new build-time generation workflow documented in
Documentation/components/tools/index.rst. The old static passwd files
are no longer present in migrated boards; boards that relied on them
will fail to build until credentials are configured via Kconfig.

Signed-off-by: Abhishek Mishra <mishra.abhishek2808@gmail.com>
2026-04-14 16:06:30 +08:00
Arjav Patel ea161e4fa9 documentation: Document MQTT-C with Mbed TLS usage.
Add Kconfig guidance, mqttc_pub TLS options and default port, the
mqttc_mbedtls_pub example, and cross-links between the mqttc example and mbedtls overview pages

Signed-off-by: Arjav Patel <arjav1528@gmail.com>
2026-04-14 16:05:54 +08:00
raiden00pl 1513b3e20c arch/nrf52|nrf53: add qencoder support
add qencoder support for nrf52 and nrf53

Signed-off-by: raiden00pl <raiden00@railab.me>
2026-04-12 19:41:52 -04:00
raiden00pl 6928384019 arch/stm32{f7|h7|l4|l5|u5}: remove references to CONFIG_STM32_TIMx_QECLKOUT
Remove useless references to CONFIG_STM32_TIMx_QECLKOUT

Signed-off-by: raiden00pl <raiden00@railab.me>
2026-04-12 10:52:36 -04:00
Tiago Medicci Serrano 6ef0d35894 Documentation: Power Management for ESP32-P4-Function-EV-Board
This commit documents the power management defconfig for the
ESP32-P4-Function-EV-Board.

Signed-off-by: Tiago Medicci Serrano <tiago.medicci@espressif.com>
2026-04-10 14:33:52 -03:00
Eren Terzioglu c97a7856e3 Docs/risc-v/esp32[-c3|-c6|-h2]: Add autopm docs
Build Documentation / build-html (push) Has been cancelled
Add autopm docs for risc-v based Espressif devices

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2026-04-10 20:34:46 +08:00
Vlad Pruteanu ad168fdf2d arch/xtensa/esp32: Add support for hardware accelerated PBKDF2
This adds support for the PBKDF2 algorithm in the ESP32 crypto
driver. Here, it will take advantage of the hardware-accelerated
implementation of SHA.

Signed-off-by: Vlad Pruteanu <pruteanuvlad1611@yahoo.com>
2026-04-10 20:32:46 +08:00
Xiang Xiao c272086ab5 Documentation/platforms/arm/tiva: add lm3s6965-ek board documentation
Add board documentation for the Stellaris LM3S6965 Evaluation Kit
including available configurations (nsh, qemu-flat, qemu-protected,
qemu-kostest, qemu-nxflat) and instructions for running and debugging
with QEMU.

Also add a Supported Boards toctree section to the Tiva platform
index to automatically include board documentation.

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2026-04-07 14:51:10 +02:00
Piyush Patle 0dccc8ba21 include/debug.h: Move to include/nuttx/debug.h
debug.h is a NuttX-specific, non-POSIX header. Placing it in the
top-level include/ directory creates naming conflicts with external
projects that define their own debug.h.
This commit moves the canonical header to include/nuttx/debug.h,
following the NuttX convention for non-POSIX/non-standard headers,
and updates all in-tree references.

A backward-compatibility shim is left at include/debug.h that
emits a deprecation #warning and re-includes <nuttx/debug.h>,
allowing out-of-tree code to continue building while migrating.

Signed-off-by: Piyush Patle <piyushpatle228@gmail.com>
2026-04-07 07:50:06 -03:00
Alan Carvalho de Assis f255cd870b Doc/raspberry-pico-w: Update ST7735 Documentation
Build Documentation / build-html (push) Has been cancelled
Keep the documentation in sync with raspberrypi-pico.

Signed-off-by: Alan C. Assis <acassis@gmail.com>
2026-04-06 12:47:00 -04:00
Alan Carvalho de Assis 7bdd9330bc doc/raspberry-pi-pico: Fix ST7735 Documentation
Change the order of voltage suggesting 3V3 first and than 5V to avoid
users to damage their LCDs.

Signed-off-by: Alan C. Assis <acassis@gmail.com>
2026-04-06 12:47:00 -04:00
Daniel Monteiro b9b9266c3b doc: add info on 3V3 ST7735 displays for Pico and W boards
Previously the info was only for 5V volts.
2026-04-06 08:32:45 -03:00
Alan Carvalho de Assis 78e3f17b9e doc/raspberrypi-pico: Improves ST7735 Documentation
Build Documentation / build-html (push) Has been cancelled
This commit improves the documentation about ST7735 LCD usage.

Signed-off-by: Alan C. Assis <acassis@gmail.com>
2026-04-04 19:45:20 +02:00
Piyush Patle 140f2c1c78 docs/rc: document RC/LIRC drivers and remove empty drivers/rmt files
Add documentation for the RC/LIRC character driver subsystem covering
device registration, the LIRC interface, and usage from user space.

Remove placeholder empty files under drivers/rmt that were left over
from the rmtchar era and are no longer referenced.

Signed-off-by: Piyush Patle <piyushpatle228@gmail.com>
2026-04-04 11:18:32 -03:00
wangjianyu3 439ec6c09b boards/lckfb-szpi-esp32s3: add ES7210 board support
Add board-level support for ES7210 4-ch ADC on lckfb-szpi-esp32s3:

- configs/es7210/defconfig: Board configuration with I2C0, I2S0,
  ES7210 driver enabled. I2S pins: BCLK=14, DIN=12, MCLK=38, WS=13,
  sample rate 48kHz.
- src/esp32s3_board_es7210.c: Board init registering ES7210 on I2C0
  bus with I2S0 as audio transport
- src/esp32s3_bringup.c: Call ES7210 board init on startup; skip
  generic I2S audio device registration on I2S0 when ES7210 is
  enabled to avoid conflicting audio device on the same port
- src/esp32s3-szpi.h: ES7210 I2C address and device path defines
- src/Make.defs: Build integration for CONFIG_AUDIO_ES7210

Tested: 48kHz/2ch/16bit recording on ESP32-S3 (lckfb-szpi N16R8),
verified with nxrecorder and es7210_test.

Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
2026-04-03 13:34:36 +08:00
simbit18 1b12ab5265 docs: add CMake for Waveshare ESP32-C3-Zero board
Update Build System for Waveshare ESP32-C3-Zero board

Signed-off-by: simbit18 <simbit18@gmail.com>
2026-04-02 19:21:36 -04:00
Felipe Moura 11d15bb238 arm/ht32f491x3: rework PWM lower-half like nrf53
Use static lower-half instances per timer and select the channel
through Kconfig and board data instead of passing runtime PWM
routing into the driver.

This keeps the HT32 PWM support aligned with the existing NuttX
pattern and documents the esk32 single-device TMR3 routing.

Signed-off-by: Felipe Moura <moura.fmo@gmail.com>
2026-04-02 12:11:13 +02:00
Filipe Cavalcanti 2615513a45 docs: add CMake documentation for RISC-V Espressif devices
Update NuttX documentation with CMake usage instructions for Espressif devices.

Signed-off-by: Filipe Cavalcanti <filipe.cavalcanti@espressif.com>
2026-04-02 13:16:54 +08:00
Piyush Patle bd885b7075 Documentation/verdin-mx8mp: port README.txt to rst 2026-03-31 22:15:12 -04:00
Piyush Patle c118b9c8a7 Documentation/sam4cmp-db: port README.txt to rst 2026-03-31 22:15:12 -04:00
Piyush Patle 4d970d4a70 Documentation/olimex-lpc2378: port README.txt to rst 2026-03-31 22:15:12 -04:00
Piyush Patle 8d84652d6d Documentation/teensy-lc: port README.txt to rst 2026-03-31 22:15:12 -04:00
Eren Terzioglu a9142d93cd Docs/risc-v/esp32p4: Add LPI2C docs
Add LPI2C docs for esp32p4

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2026-04-01 10:06:46 +08:00
Eren Terzioglu ae5c08c758 Docs/risc-v/esp32p4: Add LPUART docs for esp32p4
Add LPUART docs for esp32p4

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2026-04-01 10:06:46 +08:00
dependabot[bot] 4bfa4fa2e3 build(deps): bump pygments from 2.19.2 to 2.20.0 in /Documentation
Bumps [pygments](https://github.com/pygments/pygments) from 2.19.2 to 2.20.0.
- [Release notes](https://github.com/pygments/pygments/releases)
- [Changelog](https://github.com/pygments/pygments/blob/master/CHANGES)
- [Commits](https://github.com/pygments/pygments/compare/2.19.2...2.20.0)

---
updated-dependencies:
- dependency-name: pygments
  dependency-version: 2.20.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-31 08:38:01 -03:00
Eren Terzioglu d7a4a6e0d8 Docs/risc-v/esp32p4: Add lpcore docs for esp32p4
Add lpcore docs for esp32p4

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2026-03-31 08:37:24 -03:00
Felipe Moura bd6a466317 ht32f491x3/esk32: add docs and flash helpers
Document the HT32F491x3 ESK32 board, build steps,
flashing flow, and validation commands. Add WSL and
PowerShell flash backends plus a Python wrapper.

Signed-off-by: Felipe Moura <moura.fmo@gmail.com>
2026-03-30 09:48:16 +08:00
Vlad Pruteanu 3039184806 crypto/cryptosoft: Add support for PBKDF2
This adds support for PBKDF2 (SHA1 and SHA256) while leveraging
the existing infrastructure for HMAC.

Signed-off-by: Vlad Pruteanu <pruteanuvlad1611@yahoo.com>
2026-03-29 17:23:03 -03:00
wangjianyu3 bab7e3e51b boards/lckfb-szpi-esp32s3: add UVC camera standalone defconfig
Add UVC configuration for lckfb-szpi-esp32s3 board based on gc0308
camera config, with USB OTG and UVC gadget driver enabled in
standalone (non-composite) mode.

- defconfig: enable ESP32S3_OTG, USBUVC, UVC example app
- board doc: add uvc section with usage and host verification

Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
2026-03-29 12:35:22 -03:00
wangjianyu3 4775b36316 drivers/usbdev: add UVC gadget class driver
Add USB Video Class 1.1 gadget driver supporting Bulk transport
with uncompressed YUY2 video streaming. Resolution and frame
interval are negotiated dynamically via PROBE/COMMIT control.

- uvc.h: protocol constants, streaming control struct, public API
- uvc.c: class driver with PROBE/COMMIT, bulk EP, /dev/uvc0 chardev
- Kconfig/Make.defs: USBUVC config and build rules
- boardctl.c: BOARDIOC_USBDEV_UVC standalone init path

Hardened against host disconnect:
- Removed nxmutex_lock from USB interrupt context paths
- Added 30s semaphore timeout in uvc_write with EP_CANCEL fallback
- Drain stale wrsem counts in VS_COMMIT before new stream
- Guard uvc_streaming_stop() against double EP_CANCEL race
- Handle EP_SUBMIT returning -ESHUTDOWN gracefully

Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
2026-03-29 12:35:22 -03:00
Alin Jerpelea f8ef8e7bb1 Documentation: add NuttX-12.13.0 release notes
Add release notes for 12.13.0 release

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2026-03-29 22:34:53 +08:00
liuhongchao c252d564cd Documentation: Add getevent input event monitor documentation.
Add rst documentation for the getevent tool under
Documentation/applications/graphics/input/. Content is placed
directly in index.rst following the existing convention used by
other graphics application docs.

Signed-off-by: liuhongchao <liuhongchao@xiaomi.com>
2026-03-27 08:09:24 -03:00
dependabot[bot] e7dc7f3f5e build(deps): bump requests from 2.32.5 to 2.33.0 in /Documentation
Build Documentation / build-html (push) Has been cancelled
Bumps [requests](https://github.com/psf/requests) from 2.32.5 to 2.33.0.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.32.5...v2.33.0)

---
updated-dependencies:
- dependency-name: requests
  dependency-version: 2.33.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-27 09:45:36 +08:00
raiden00pl 4b48a27aee boards/nucleo-c071rb: add adcscope example
add adcscope example for nucleo-c071rb

Signed-off-by: raiden00pl <raiden00@railab.me>
2026-03-24 18:24:40 +01:00
buxiasen ced3cb1aa8 Documentation: imx95-a55-evk: add UMS flashing steps for u-boot
Build Documentation / build-html (push) Has been cancelled
Add detailed steps for copying nuttx.bin to eMMC via u-boot USB Mass
Storage (ums) mode, which exposes the eMMC as a USB drive on the host
PC for easy file transfer.

Signed-off-by: buxiasen <buxiasen@xiaomi.com>
2026-03-24 15:39:07 +08:00
raiden00pl 0705828024 boards/nrf53/thingy53: add sensor scope example
add sensor scope example for thingy53

Signed-off-by: raiden00pl <raiden00@railab.me>
2026-03-24 09:39:42 +08:00
raiden00pl cbe59b0328 boards/nrf52832-dk: add nxscope examples (UART and RTT)
add nxscope examples for nrf52832-dk

Signed-off-by: raiden00pl <raiden00@railab.me>
2026-03-24 09:39:42 +08:00
raiden00pl 9424c3ac3b Documentation: update nxscope doc
update various nxscope doc

Signed-off-by: raiden00pl <raiden00@railab.me>
2026-03-24 09:39:42 +08:00
Huang Qi e3eeaefd6d style: Fix "the the" typo across the codebase.
Fix 269 occurrences of duplicate "the" word typo found in 209 files
across source code, header files, and configuration.

Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2026-03-23 11:07:49 +01:00
Huang Qi 864fdb090c arch/risc-v/k210: Remove QEMU support
Remove the CONFIG_K210_WITH_QEMU option and associated conditional
code paths. The reasons for removal are:

* Simplifies code path for real hardware by removing QEMU workarounds
* The current QEMU target uses sifive_u machine, which is not designed
  for K210 emulation
* For RISC-V QEMU simulation, the qemu-rv (rv-virt) target is a better
  choice
* Renode can be used as an alternative for K210 simulation if needed

Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2026-03-23 14:25:29 +08:00
Huang Qi 078e7099b7 arch/risc-v/k210: Add Watchdog Timer (WDT) driver support.
Add WDT driver for K210 with support for both WDT0 and WDT1 peripherals.
This includes:
- Add k210_wdt.c and k210_wdt.h driver files with interrupt-based
  watchdog timer functionality
- Add hardware register definitions in k210_wdt.h
- Add K210_WDT, K210_WDT0, K210_WDT1 Kconfig options
- Add memory map definitions for WDT0 (0x50400000) and WDT1 (0x50410000)
- Reorder WDT IRQ definitions (IRQ 21, 22) before UART0 (IRQ 33) in irq.h
- Add WDT initialization in board bringup for maix-bit

Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2026-03-18 10:15:36 +08:00
Eren Terzioglu 5b6d0e9d49 Docs/platforms/espressif: Add AES support docs
Add AES support docs for esp32s2

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
2026-03-17 18:45:53 -03:00