Commit Graph

2366 Commits

Author SHA1 Message Date
Tiago Medicci Serrano
5afa727eef documentantion/applications: add WAPI documentation
Initial documentation of the WAPI (Wireless API). Currently, `wapi`
is the only interface provided to handle Wi-Fi networking from the
userspace.
2023-04-29 14:35:09 +08:00
Lucas Saavedra Vaz
7f32b7973b boards/xtensa/esp32s2-kaluga-1: Add support for LCD displays 2023-04-27 02:18:32 +08:00
yinshengkai
308b93b168 doc: add critmon comand docment
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2023-04-24 19:38:29 +08:00
YAMAMOTO Takashi
2d223d0744 Documentation/platforms/sim/sim/boards/sim: mention toywasm config 2023-04-23 23:19:20 +08:00
YAMAMOTO Takashi
72783209a3 Migrate sim board README.txt to Documentation 2023-04-22 01:47:46 +08:00
Stuart Ianna
4cae98674d litex: Support for kernel build with vexriscv-smp. 2023-04-22 01:40:32 +08:00
Lucas Saavedra Vaz
bdfe31e850 boards/xtensa/esp32: Add ESP32-PICO-KIT support 2023-04-22 01:23:13 +08:00
pengyiqiang
0ed82e8380 video/fb: add vsync offset support
Android Documentation: https://source.android.com/docs/core/graphics/implement-vsync#vsync_offset

Signed-off-by: pengyiqiang <pengyiqiang@xiaomi.com>
2023-04-22 01:09:09 +08:00
Gustavo Henrique Nihei
9affcb8673 boards: Update tickless defconfigs with ostest for testability
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2023-04-06 19:29:23 +03:00
Alan Carvalho de Assis
b87eb7c82f esp32: Add Ai-Thinker ESP32 Audio Kit board
This commit adds support to Ai-Thinker ESP32 Audio Kit V2.2 A247
board.

There are two modules of this board. The old model uses AC101 audio
and is not supported currently (AFAIK there is no AC101 driver) and
the new version uses the ES8388 audio codec. This model is supported
by this commit.

Just read the documentation to test playing an audio file.
TODO: Test audio recording.
2023-03-28 20:58:36 +03:00
Xiang Xiao
5ce5d01d75 signal: Remove configurable assignment of signal numbers
please reference the issue here for more information:
https://github.com/apache/nuttx/issues/8898

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-03-26 08:31:36 -06:00
Lucas Saavedra Vaz
c702223fab Documentation: Improve pages for ESP boards 2023-03-25 12:23:35 +02:00
Lucas Saavedra Vaz
c961edbe6c Documentation: Fix compilation warnings 2023-03-25 12:23:35 +02:00
Masanari Iida
7ac80d4e59 Documentation: Fix some spelling typos in index.rst
This patch fixes some spelling typos in index.rst.

Signed-off-by: Masanari Iida <standby24x7@gmail.com>
2023-03-22 17:28:58 -03:00
Alan Carvalho de Assis
b91042e5a0 avr: Add support to Atmega mega1284p_xplained board 2023-03-21 16:30:44 +02:00
Hiroki Noda
cc2b0e2594 Documentation/quickstart: update link for USBIP in WSL2 2023-03-20 08:58:14 +01:00
Tiago Medicci Serrano
af45eced2b docs/esp32s3: add documentation for Wi-Fi (STA + SoftAP) 2023-03-16 19:07:25 +01:00
Michal Lenc
4084c749c8 Documentation: add initial documentation page for SAMv7 MCU
Initial documentation page for SAMv7 MCU is added. There are still
board pages to be added in the future.

Signed-off-by: Michal Lenc <michallenc@seznam.cz>
2023-03-06 23:37:57 +08:00
Eero Nurkkala
4bb432b0f4 Documentation: risc-v/mpfs: correct information
These changes were requested by the vendor, hence fix them
accordingly.

Signed-off-by: Eero Nurkkala <eero.nurkkala@offcode.fi>
2023-03-02 13:32:32 +08:00
Alan Carvalho de Assis
dd0f389e72 doc: Add guide how to use QEMU and GDB to debug NuttX
This guide is based on steps from this issue:
https://github.com/apache/nuttx/issues/8616
2023-02-26 01:14:41 +08:00
Alan Carvalho de Assis
b216f74a4b doc: Add xxd to get romfs working, reported by Simon Filgis 2023-02-24 21:53:48 +08:00
yinshengkai
55ce5d0511 note: remove SCHED_INSTRUMENTATION_HIRES
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2023-02-23 22:30:07 +08:00
simbit18
3ed255b8b8 Docs: Update links 2023-02-23 00:53:09 +08:00
simbit18
7cfeccee92 Doc organization.rst
update tip incorrect permalink
2023-02-22 01:05:30 +08:00
chao an
ee1e1108a7 drivers/note: fix build break by note rename change
Regression by:

| commit ee24396d77
| Author: Xiang Xiao <xiaoxiang@xiaomi.com>
| Date:   Tue Feb 14 01:11:48 2023 +0800
|
|     drivers/note: Change DRIVER_NOTExxx to DRIVERS_NOTExxx
|
|     follow other driver config style
|
|     Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>

Signed-off-by: chao an <anchao@xiaomi.com>
2023-02-20 16:19:57 +08:00
chao an
73214965b8 Documentation/kconfiglib: update document to support kconfiglib
Signed-off-by: chao an <anchao@xiaomi.com>
2023-02-20 14:35:06 +08:00
Fotis Panagiotopoulos
85ceb7920e Typo fixes. 2023-02-17 11:17:11 -03:00
Jackson R
491c3b564f Repeated Command "sudo port install"
The merged code had Repeated Command.
2023-02-16 14:09:50 +08:00
Jackson R
37db965cff This simulator was tested on ARM MacBook.
Updating Simulator for macOS

macOS requires genromfs and X11 Libraries to run Simulators.
* Added instructions to install genromfs
* Added instructions to install X11
Adding Xorg Server

The linker was unable to identify the location of X11 libraries.

removed -L/opt/X11/lib from ln 145

Updating Changes to streamline with other Hosts
2023-02-16 09:27:54 +08:00
Michal Lenc
00e87962fd imxrt: add option to select PWM trigger source value from configuration
Current implementation supports the trigger generation only from timer
capture on period value. This is sufficient for PWM synchronization but
may not be enough for other purposes as ADC triggering for example.

This change adds an option to generate the trigger based on a duty
cycle value.

Signed-off-by: Michal Lenc <michallenc@seznam.cz>
2023-02-11 20:07:28 +08:00
chenwen@espressif.com
cfc9029c5d risc-v/esp32c6: Add ESP32-C6 basic support
1. Bring up OS kernel.
  2. Add interrupt support.
  3. Add system timer support.
  4. Add the ESP32-C6 devkit board.
  5. Add basic UART support for console.
  6. Add clock configuration.
  7. Add board reset support.
2023-02-10 17:38:41 -03:00
Ville Juven
f4b82b6405 sched/addrenv: Remove up_addrenv_restore
The function is not relevant any longer, remove it. Also remove
save_addrenv_t, the parameter taken by up_addrenv_restore.

Implement addrenv_select() / addrenv_restore() to handle the temporary
instantiation of address environments, e.g. when a process is being
created.
2023-02-08 02:51:23 +08:00
Lucas Saavedra Vaz
7df663bff8 docs/boards/esp32s2-saola-1: Fix watchdog example 2023-02-04 18:28:10 -03:00
Alan Carvalho de Assis
8564b49469 doc: Add USB RNDIS tutorial to documentation. 2023-01-29 10:09:13 +08:00
Peter Bee
fa17262e5d Doc/rp2040: fix typo
Missing blank line in waveshare-rp2040-lcd-1.28

Signed-off-by: Peter Bee <bijunda1@xiaomi.com>
2023-01-28 13:19:16 +08:00
Ville Juven
42d0e356c2 arch/addrenv: Change group_addrenv_t to arch_addrenv_t
This is preparation for moving address environments out of the group
structure into the tcb.

Why move ? Because the group is destroyed very early in the exit phase,
but the MMU mappings are needed until the context switch to the next
process is complete. Otherwise the MMU will lose its mappings and the
system will crash.
2023-01-27 23:17:01 +08:00
Xiang Xiao
8bf693b362 libc/pthread: Implement pthread_condattr_[set|get]pshared
https://pubs.opengroup.org/onlinepubs/009696799/functions/pthread_condattr_getpshared.html

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-01-24 13:53:02 -03:00
Xiang Xiao
c11cd7f103 libc/pthread: Implement pthread_attr_[set|get]stackaddr
https://pubs.opengroup.org/onlinepubs/009696799/functions/pthread_attr_getstackaddr.html

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-01-24 13:53:02 -03:00
Xiang Xiao
36b74bab02 libc/pthread: Implement pthread_rwlockattr API
https://pubs.opengroup.org/onlinepubs/9699919799/functions/pthread_rwlockattr_getpshared.html

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-01-24 13:53:02 -03:00
Xiang Xiao
679544cd32 Documentation: Remove the supported function from the unsupported list
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-01-24 13:53:02 -03:00
Lucas Saavedra Vaz
454570532e docs/boards/esp32-devkitc: Fix watchdog example 2023-01-21 12:27:35 +08:00
Peter Bee
ab059a7ba3 Documentation/p/a/rp2040: add docs for waveshare-rp2040-lcd-1.28
Signed-off-by: Peter Bee <bijunda1@xiaomi.com>
2023-01-19 18:52:01 +08:00
YAMAMOTO Takashi
2e0de13813 Documentation: Restore some esp32-devkitc openocd doc
Restore some openocd information which I occassionally need.

This is a partial revert of:
```
commit 58a5e0744b
Author: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
Date:   Mon Jul 26 21:43:42 2021 +0200

    Documentation/esp32: Remove the rest of the OpenOCD text.
    This information there is outdated and some of its content should be in
    the board documentation and not the chip.

    Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
```
2023-01-17 16:48:01 +08:00
Lee Lup Yuen
c07bd5d644 arm64/pinephone: Add driver for PinePhone Touch Panel
This PR adds the existing Goodix GT9XX Touch Panel Driver to the Bringup Function for PINE64 PinePhone.

With this PR, LVGL Touchscreen Apps will respond to Touch Input on PinePhone.

### Modified Files

`boards/arm64/a64/pinephone/src/pinephone_bringup.c`: Added GT9XX Touch Panel Driver to PinePhone Bringup Function

`boards/arm64/a64/pinephone/src/Makefile`: Added `pinephone_touch.c` to the Makefile

`include/nuttx/input/gt9xx.h`: Fixed a comment in GT9XX Touch Panel Driver

### New Files

`boards/arm64/a64/pinephone/src/pinephone_touch.c`, `pinephone_touch.h`: Register GT9XX Touch Panel Driver on PinePhone

`boards/arm64/a64/pinephone/configs/lvgl/defconfig`: Added PinePhone Board Config `lvgl` to support LVGL Touchscreen Apps

### Updated Documentation

`Documentation/platforms/arm/a64/boards/pinephone/index.rst`: Added PinePhone Board Config `lvgl` for LVGL Touchscreen Apps
2023-01-16 13:45:17 +08:00
Alan Carvalho de Assis
7677ec10dd Fix missing back single quotes and add if-then-else example 2023-01-13 12:21:20 +08:00
zouboan
7e81dce71c arm64/a64: add driver for Allwinner A64 I2C bus
arm64/a64: add driver for Allwinner A64 I2C bus

arm64/a64: add driver for Allwinner A64 I2C bus

arm64/a64: add driver for Allwinner A64 I2C bus
2023-01-03 01:45:56 +08:00
Jukka Laitinen
f33dc4df3f Change FIOC_MMAP into file operation call
- Add mmap into file_operations and remove it from ioctl definitions.
- Add mm_map structure definitions to support future unmapping
- Modify all drivers to initialize the operations struct accordingly

Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2023-01-02 11:23:20 -03:00
Brennan Ashton
a4ca15aa3e CI/Documentation: livereload hash missmatch due to new wheel package upload. 2023-01-02 14:56:51 +08:00
Alan Carvalho de Assis
7660ece921 Doc: Add documentation about using BLE on ESP32-C3 2022-12-30 18:11:51 +02:00
田昕
96a45e2c75 sched/misc:add linux-like reboot notifier list
Signed-off-by: 田昕 <tianxin7@xiaomi.com>
2022-12-29 19:18:42 +08:00
Lee Lup Yuen
f9bd04ff19 arm64/pinephone: Add driver for Frame Buffer
This PR adds the Frame Buffer Driver for PINE64 PinePhone. With this driver, NuttX Apps will be able to use the standard Frame Buffer API to render graphics on PinePhone.

`boards/arm64/a64/pinephone/src/pinephone_bringup.c`: Render Test Pattern after calling `up_fbinitialize()` to start the Frame Buffer Driver

`boards/arm64/a64/pinephone/src/pinephone_display.c`: Add Frame Buffer Driver

`boards/arm64/a64/pinephone/src/pinephone_display.h`: Declare new function for rendering Test Pattern

`platforms/arm/a64/boards/pinephone/index.rst`: Add Frame Buffer as supported driver for PinePhone
2022-12-28 23:06:45 +08:00
Lee Lup Yuen
17639af0a8 arm64/pinephone: Add driver for LCD Panel (Xingbangda XBD599)
This PR adds the driver for Xingbangda XBD599 LCD Panel (based on Sitronix ST7703 LCD Controller) on PINE64 PinePhone. This PR also includes:

- The driver for X-Powers AXP803 Power Mgmt IC, which calls our driver for Allwinner A64's Reduced Serial Bus. The PMIC Driver is needed to power on the MIPI DSI Interface for the LCD Panel.

- A simple Display Driver that renders a Test Pattern on the LCD Display at startup. It calls our Allwinner A64 drivers for Display Engine, Timing Controller TCON0 and MIPI Display Serial Interface.

The NuttX Frame Buffer Driver will be implemented in the next PR.

`arch/arm64/src/a64/a64_de.c`, `a64_de.h`: Changed the Frame Buffer pointer to `const` for Allwinner A64 Display Engine

`arch/arm64/src/a64/hardware/a64_memorymap.h`: Added the Base Address for PWM, for controlling the PWM Backlight

`boards/arm64/a64/pinephone/src/pinephone_bringup.c`: Call `fb_register()` to start the Display Driver at startup

`boards/arm64/a64/pinephone/src/Makefile`: Added LCD Driver, PMIC Driver and Display Driver to Makefile

`boards/arm64/a64/pinephone/Kconfig`: Added the Kconfig option for "PINE64 PinePhone > LCD Display" (`CONFIG_PINEPHONE_LCD`) which enables the LCD Driver, PMIC Driver and Display Driver

`boards/arm64/a64/pinephone/src/pinephone_lcd.c`, `pinephone_lcd.h`: Driver for Xingbangda XBD599 LCD Panel

`boards/arm64/a64/pinephone/src/pinephone_pmic.c`, `pinephone_pmic.h`: Driver for X-Powers AXP803 Power Mgmt IC

`boards/arm64/a64/pinephone/src/pinephone_display.c`: Simple Display Driver that renders a Test Pattern in `up_fbinitialize()`

`boards/arm64/a64/pinephone/configs/lcd/defconfig`: New PinePhone Board Configuration `pinephone:lcd` that enables the LCD Driver (`CONFIG_PINEPHONE_LCD`)

`platforms/arm/a64/boards/pinephone/index.rst`: Added PinePhone Board Configuration `pinephone:lcd` that enables the LCD Driver
2022-12-27 11:44:17 +08:00
yinshengkai
dd32eccfc3 drivers/note: Move taskname related functions to note_driver.c
so all note drivers can retrieve the task name even after the task exit

Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2022-12-26 15:03:57 +08:00
zhangyuan21
45394eb6dc arch: save user context in assert common code
This is the work continue with #7875

Signed-off-by: zhangyuan21 <zhangyuan21@xiaomi.com>
2022-12-24 13:02:56 +08:00
Zhe Weng
902a6dcad2 net/nat: Support isolation between multiple WAN devices by saving external ip
Signed-off-by: Zhe Weng <wengzhe@xiaomi.com>
2022-12-24 12:05:20 +08:00
Lee Lup Yuen
c8cf27e848 arm64/a64: Add driver for Reduced Serial Bus
This PR adds the driver for Reduced Serial Bus (RSB) on Allwinner A64 SoC. The RSB Driver will be called by the upcoming Power Mgmt IC Driver for PINE64 PinePhone, to power on the LCD Display.

`arch/arm64/src/a64/Kconfig`: Added the Kconfig option for "A64 Peripheral Selection > RSB" (`CONFIG_A64_RSB`), which enables the RSB Driver

`arch/arm64/src/a64/hardware/a64_memorymap.h`: Added the Base Address for RSB

`arch/arm64/src/a64/Make.defs`: Added the RSB Driver to the Makefile

`arch/arm64/src/a64/a64_de.c`: Increase PLL Timeout for Allwinner A64 Display Engine

`boards/arm64/a64/pinephone/configs/nsh/defconfig`: Set PinePhone Board Config `CONFIG_BOARD_LOOPSPERMSEC` to the value computed by `calib_udelay`

`arch/arm64/src/a64/a64_rsb.c`, `a64_rsb.h`: RSB Driver for Allwinner A64

`platforms/arm/a64/boards/pinephone/index.rst`: Added RSB as supported peripheral for PinePhone
2022-12-24 12:01:46 +08:00
Alan Carvalho de Assis
3d016db226 Doc: Fix ping to external IP on simulator 2022-12-23 00:32:10 +08:00
Zhe Weng
45b7debe13 doc/nat: update config options
Signed-off-by: Zhe Weng <wengzhe@xiaomi.com>
2022-12-22 20:20:12 +08:00
Lee Lup Yuen
64a54d2dfd arm64/a64: Add driver for Display Engine
This PR adds the driver for Display Engine 2.0 on Allwinner A64 SoC. The Display Engine Driver will be called by the upcoming LCD Driver for PINE64 PinePhone.

`arch/arm64/src/a64/Kconfig`: Added the Kconfig option for "A64 Peripheral Selection > DE" (`CONFIG_A64_DE`), which enables the Display Engine Driver

`arch/arm64/src/a64/hardware/a64_memorymap.h`: Added the Base Address for Display Engine

`arch/arm64/src/a64/Make.defs`: Added the Display Engine Driver to the Makefile

`boards/arm64/a64/pinephone/configs/nsh/defconfig`: Removed Scheduler Debug Info (`CONFIG_DEBUG_SCHED_INFO`) from the PinePhone Board Config, because it garbles the Console Output.

`arch/arm64/src/a64/a64_de.c`, `a64_de.h`: Display Engine Driver for Allwinner A64

`platforms/arm/a64/boards/pinephone/index.rst`: Added Display Engine as supported peripheral for PinePhone
2022-12-21 13:17:34 +08:00
chao an
6e380c0978 mm/iob: add a helper function to get iob count in chain
Signed-off-by: chao an <anchao@xiaomi.com>
2022-12-21 01:40:24 +08:00
Lee Lup Yuen
377477a948 arm64/a64: Add driver for TCON0
This PR adds the driver for TCON0 (Timing Controller) on Allwinner A64 SoC. The TCON0 Driver will be used by the upcoming Display Driver for PINE64 PinePhone.

`arch/arm64/src/a64/Kconfig`: Added the Kconfig option for "A64 Peripheral Selection > TCON0" (`CONFIG_A64_TCON0`), which enables the TCON0 Driver

`arch/arm64/src/a64/hardware/a64_memorymap.h`: Added the Base Address for TCON0

`arch/arm64/src/a64/Make.defs`: Added the TCON0 Driver to the Makefile

`arch/arm64/src/a64/a64_tcon0.c`, `a64_tcon0.h`: TCON0 Driver for Allwinner A64

`platforms/arm/a64/boards/pinephone/index.rst`: Added TCON0 as supported peripheral for PinePhone
2022-12-19 20:10:54 +08:00
Alan Carvalho de Assis
9eea82a61d Doc: Explain how to rebase and squash PR's commits 2022-12-19 10:31:12 +08:00
chao an
4f239e145e Revert "mm/iob/contig: enhance iob contig to support iob chain"
This reverts commit 56a4e90dc4.
2022-12-19 01:32:05 +08:00
chao an
56a4e90dc4 mm/iob/contig: enhance iob contig to support iob chain
Signed-off-by: chao an <anchao@xiaomi.com>
2022-12-18 21:15:47 +08:00
zhangyuan21
632d87ee71 arch: remove up_release_pending function
Signed-off-by: zhangyuan21 <zhangyuan21@xiaomi.com>
2022-12-16 21:29:57 +08:00
Almir Okato
8f3c425067 xtensa/esp32s3: Enable booting from MCUboot bootloader
Add support for booting from MCUboot bootloader on ESP32-S3.

Signed-off-by: Almir Okato <almir.okato@espressif.com>
2022-12-15 00:42:13 +08:00
Lee Lup Yuen
b895207489 arm64/a64: Add driver for MIPI DSI
This PR adds the driver for Allwinner A64's MIPI Display Serial Interface (DSI) and MIPI Display Physical Layer (D-PHY).

This driver will be used by the upcoming Display Driver for PINE64 PinePhone.

- `include/nuttx/crc16.h`: Added 16-bit CRC-CCITT

- `libs/libc/misc/Make.defs`: Added 16-bit CRC-CCITT to Makefile

- `arch/arm64/src/a64/Kconfig`: Added the Kconfig option for "A64 Peripheral Selection > MIPI DSI" (`CONFIG_A64_MIPI_DSI`), which enables the MIPI DSI Driver

- `arch/arm64/src/a64/hardware/a64_memorymap.h`: Added the Base Address for MIPI DSI

- `arch/arm64/src/a64/Make.defs`: Added the MIPI DSI Driver to the Makefile

- `libs/libc/misc/lib_crc16ccitt.c`: Compute 16-bit CRC-CCITT

- `arch/arm64/src/a64/mipi_dsi.c`, `mipi_dsi.h`: Compose MIPI DSI Packets (Long, Short, Short with Parameter)

- `arch/arm64/src/a64/a64_mipi_dsi.c`, `a64_mipi_dsi.h`: MIPI DSI Driver for Allwinner A64

- `arch/arm64/src/a64/a64_mipi_dphy.c`, `a64_mipi_dphy.h`: MIPI D-PHY Driver for Allwinner A64

- `platforms/arm/a64/boards/pinephone/index.rst`: Added MIPI DSI as supported peripheral for PinePhone

Co-Authored-By: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-12-14 22:37:32 +08:00
chao an
881c9d9fac mm/iob: add support of partial bytes clone
Signed-off-by: chao an <anchao@xiaomi.com>
2022-12-14 21:37:20 +08:00
chao an
d6d56c3372 mm/iob: add support of nonblock iob_clone
Signed-off-by: chao an <anchao@xiaomi.com>
2022-12-14 21:37:20 +08:00
Xiang Xiao
a64c61f530 Remove incubat.* from the code base
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-12-13 21:21:27 +02:00
dependabot[bot]
512be93c36 build(deps): bump certifi from 2022.9.24 to 2022.12.7 in /Documentation
Bumps [certifi](https://github.com/certifi/python-certifi) from 2022.9.24 to 2022.12.7.
- [Release notes](https://github.com/certifi/python-certifi/releases)
- [Commits](https://github.com/certifi/python-certifi/compare/2022.09.24...2022.12.07)

---
updated-dependencies:
- dependency-name: certifi
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-09 14:23:54 +08:00
Lee Lup Yuen
c2d75c930b arm64/a64: Add drivers for PIO and LEDs
This PR adds the drivers for Allwinner A64 PIO (Programmable I/O) and PinePhone LEDs (Red / Green / Blue).

The PIO Driver is based on the NuttX PIO Driver for Allwinner A10: [`arch/arm/src/a1x/a1x_pio.c`](https://github.com/apache/nuttx/blob/master/arch/arm/src/a1x/a1x_pio.c)

-   `arch/arm64/src/a64/Make.defs`: Add PIO Driver to Makefile

-   `boards/Kconfig`: Add `ARCH_HAVE_LEDS` to PinePhone

-   `boards/arm64/a64/pinephone/src/pinephone.h`: Define PinePhone LEDs

-   `boards/arm64/a64/pinephone/src/pinephone_boardinit.c`: Start Auto LEDs

-   `boards/arm64/a64/pinephone/src/pinephone_bringup.c`: Start User LEDs

-   `boards/arm64/a64/pinephone/src/Makefile`: Add LED Driver to Makefile

-   `boards/arm64/a64/pinephone/configs/nsh/defconfig`: Add `CONFIG_USERLED` to `nsh` config

-   `arch/arm64/src/a64/a64_pio.c`, `a64_pio.h`: Allwinner A64 PIO Driver

-   `arch/arm64/src/a64/hardware/a64_memorymap.h`: PIO Memory Map

-   `arch/arm64/src/a64/hardware/a64_pio.h`: PIO Definitions

-   `boards/arm64/a64/pinephone/include/board.h`: Define PinePhone LEDs

-   `boards/arm64/a64/pinephone/src/pinephone_autoleds.c`: Driver for Auto LEDs

-   `boards/arm64/a64/pinephone/src/pinephone_userleds.c`: Driver for User LEDs

-   `introduction/supported_platforms.rst`: Add Allwinner A64 as Supported Platform

-   `platforms/arm/a64/boards/pinephone/index.rst`: Add PIO and LEDs to PinePhone
2022-12-06 18:14:39 +08:00
Zhe Weng
9aefd6717c net/nat: Add support for ICMP Error Message
Support DEST_UNREACHABLE, TIME_EXCEEDED and PARAMETER_PROBLEM ICMP types in NAT.

Signed-off-by: Zhe Weng <wengzhe@xiaomi.com>
2022-12-01 22:45:22 +08:00
Nathan Hartman
03802dad13 NuttX graduated the Incubator; update repository links 2022-11-26 11:58:15 -08:00
Lee Lup Yuen
b31054b1e3 arch/arm64: Add support for PINE64 PinePhone
This PR adds support for PINE64 PinePhone and the Allwinner A64 SoC (based on Arm Cortex-A53).

With this PR, PinePhone boots successfully to nsh (via microSD Card) and runs console apps.

-   `arch/arm64/Kconfig`: Added Allwinner A64 SoC

-   `boards/Kconfig`: Added PINE64 PinePhone

-   `arch/arm64/src/a64/Kconfig`: New Kconfig for Allwinner A64 SoC

-   `boards/arm64/a64/pinephone/Kconfig`: New Kconfig for PINE64 PinePhone

-   `src/a64/a64_boot.c`, `a64_boot.h`: Boot functions for Allwinner A64

-   `src/a64/a64_lowputc.S`: Low-level console output

-   `src/a64/a64_serial.c`, `a64_serial.h`: A64 Serial Driver

-   `src/a64/chip.h`: A64 SoC Definitions

-   `include/a64/chip.h`: A64 Memory Map, Generic Interrupt Controller

-   `include/a64/irq.h`: A64 Interrupts

-   `src/a64/Make.defs`: Source files for A64

-   `configs/nsh/defconfig`: Board Configuration for `pinephone:nsh`

-   `src/pinephone_appinit.c`: Init PinePhone

-   `src/pinephone_boardinit.c`: Init PinePhone

-   `src/pinephone_bringup.c`: Start PinePhone Drivers

-   `src/pinephone.h`: PinePhone Declarations

-   `include/board_memorymap.h`: PinePhone Memory Map

-   `scripts/dramboot.ld`: PinePhone Linker Script

-   `scripts/Make.defs`: Source files for PinePhone

-   `src/Makefile`: PinePhone Makefile

-   `platforms/arm/a64/boards/pinephone/index.rst`: Building and booting NuttX on PinePhone

-   `platforms/arm/a64/index.rst`: Overview of Allwinner A64

-   `introduction/supported_platforms.rst`: Added Allwinner A64

-   `introduction/detailed_support.rst`: Added Allwinner A64
2022-11-25 17:19:48 +08:00
zhangyuan21
d8051ba979 nuttx/sched: merge up_block_task and up_unblock_task 2022-11-22 22:59:08 +08:00
zhangyuan21
5c1b518314 nuttx/sched: move reprioritize process to public function 2022-11-22 15:29:00 +09:00
zhangyuan21
08f7152d9f nuttx/sched: remove nxsched_remove_readytorun from up_block_task
It takes about 10 cycles to obtain the task list according to the task
status. In most cases, we know the task status, so we can directly
add the task from the specified task list to reduce time consuming.
2022-11-22 15:29:00 +09:00
zhangyuan21
e54b602208 nuttx/sched: remove nxsched_remove_blocked from up_unblock_task
It takes about 10 cycles to obtain the task list according to the task
status. In most cases, we know the task status, so we can directly
delete the task from the specified task list to reduce time consuming.
2022-11-22 15:29:00 +09:00
Tiago Medicci Serrano
5f82e2aeac documentation: update ESP32-S2's docs about the I2S RX mode 2022-11-21 23:46:47 +08:00
Tiago Medicci Serrano
9b55168462 documentation: update ESP32's documentation about the I2S RX mode 2022-11-15 17:01:47 -03:00
Zhe Weng
b1ad547deb Documentation: add NAT description
Signed-off-by: Zhe Weng <wengzhe@xiaomi.com>
2022-11-11 14:36:55 +08:00
Lucas Saavedra Vaz
bcafc77cf8 boards/esp32-lyrat: Add support for the ES8388 codec 2022-11-08 10:03:18 -03:00
Lucas Saavedra Vaz
22ce6e8a9c boards/xtensa: Added support for the ESP32-S2-Kaluga-1 board 2022-11-07 14:23:09 -03:00
Xiang Xiao
4e43fef5cd boards: Update telnetd related config after apps/nshlib change
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-11-07 15:24:29 +09:00
Tiago Medicci Serrano
998b726c4b documentation: update esp32[-s2] documentation about I2S/audio support 2022-11-07 13:46:44 +08:00
Alan Carvalho de Assis
fd8647d3dd Doc: Add how to configure network MTU size 2022-11-02 09:14:17 +08:00
Xiang Xiao
28947517ca sched/spawn: Rename task_spawnattr_[get|set]stack[size|addr] to posix_spawnattr_[get|set]stack[size|addr]
since they can be not only used in task_spawn but also in posix_spawn

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-11-01 09:51:18 +09:00
Xiang Xiao
64e7833cbc sched/spawn: Support task_spawnattr_[set|get]stackaddr
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-10-31 12:46:58 +09:00
Lucas Saavedra Vaz
4d164bb995 doc: Add and fix Secure Boot and Flash Encryption section for ESP boards 2022-10-28 01:14:20 +08:00
Miguel Herranz
819ebe7356 libc/stdio: Add stdio file locking functions
Add flockfile(), ftrylockfile() and funlockfile() functions [1].

[1] POSIX.1-2008 / System Interfaces / flockfile
    https://pubs.opengroup.org/onlinepubs/9699919799.2008edition/functions/flockfile.html

Signed-off-by: Miguel Herranz <miguel@midokura.com>
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-10-22 23:34:45 +08:00
Tiago Medicci Serrano
b16ed003f1 documentation: add documentation for ESP32-S2/S3/C3
Add documentation for ESP32-S2 and ESP32-S2 Saola 1 board
Add links to already existing ESP32-S3 documentation
Add links to already existing ESP32-C3 documentation
2022-10-22 15:18:35 +08:00
anjiahao
1c416b1712 Documentation:add nxmutex Description
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2022-10-22 14:50:48 +08:00
TimJTi
83c76eaa93 Documentation file typo's corrected
Correct "Nuttx" to "NuttX"
2022-10-13 18:26:17 +08:00
TimJTi
538365e362 Documentation for Custom Boards and Apps 2022-10-12 14:56:31 -03:00
Brennan Ashton
c9636f0b3e docs: Update dependencies and fix lint errors 2022-10-10 09:29:53 +08:00
Alan Carvalho de Assis
40144a652d doc/esp32: Fix typo in the softap 2022-10-04 03:58:33 +08:00
Petro Karashchenko
d247e8d1d2 sched/semaphore: fix priority boost restoration for priority inheritance
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-10-03 15:14:24 -03:00
Tiago Medicci Serrano
fc9b9f70ac xtensa/esp32: add documentation of the I2S/audio support on ESP32 2022-09-30 17:23:17 -03:00
Xiang Xiao
764540267e sched/clock: Rename g_system_timer to g_system_ticks
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-09-27 17:45:44 -03:00
Lucas Saavedra Vaz
4ee22e8739 boards: initial support for the ESP32-LyraT
boards/esp32-lyrat: Fix board name in comment

boards/esp32-lyrat: Fix coding style

boards/esp32-lyrat: Removed BOOT_BUTTON support

boards/esp32-lyrat: Improved code maintainability and fixed styling

boards/esp32-lyrat: Specified board version in configuration files

boards/esp32-lyrat: Added wapi config

boards/esp32-lyrat: Added documentation

boards/esp32-lyrat: Fix typo in documentation

boards/esp32-lyrat: Added comment on BUTTON_BOOT
2022-09-23 23:38:26 +08:00
Michal Lenc
9ebd7e525c imxrt: add support for ADC triggering by an external signal
Config option IMXRT_ADCx_ETC can now be used to select an external HW
trigger to be used instead of continous trigger. Continous trigger is
used if IMXRT_ADCx_ETC = -1 (default option). Otherwise the source signal
is routed through XBAR and used as a trigger.

Hardware triggering is currently limited to maximum of 8 channels.
HW trigger is automatically disabled if there are more than 8 channels.

The external triggering was tested with PWM signal as a source.

Signed-off-by: Michal Lenc <michallenc@seznam.cz>
2022-09-22 22:13:56 +08:00
Lucas Saavedra Vaz
3aa08e4d78 documentation: Added Secure Boot and Flash Encryption section to ESP32
documentation: Fixed typos in ESP32 Secure Boot section
documentation/esp32: Improved note about the MCUboot port

documentation/esp32: Improved instructions in Secure Boot section

documentation/esp32: Fix information in Secure Boot section

documentation/esp32: Added info in Secure Boot section

documentation/esp32: Fix Secure Boot Instructions
2022-09-20 00:28:26 +08:00
Michal Lenc
7d877fbbc3 imxrt: add support for PWM synchronization
This commit allows the PWM modules to be synchronized by an external
signal (other PWM module for example). The sync source can be selected
from configuration.

PWM module can also now generate a trigger when its timer reaches the duty
cycle. This trigger is used for the synchronization of other modules. It
can also be used for triggering ADC for example in the future.

Thanks to Rastislav Pavlanin and  Jan Spurek from NXP support for
suggestion which helped to solve the inter-module PWM synchronization
task.

Signed-off-by: Michal Lenc <michallenc@seznam.cz>
2022-09-15 08:10:26 +09:00
curuvar
46103e29c0 Add "telnet" configuration to Raspberry Pi Pico W 2022-09-10 10:30:59 +08:00
Nathan Hartman
b04ae46ea6 boards/arm/tiva: Add tm4c129e-launchpad
* boards/arm/tiva/tm4c129e-launchpad: New subdirectory providing
  board support for the Texas Instruments TM4C Crypto Connected
  LaunchPad, or more correctly the EK-TM4C129EXL.

* Documentation/introduction/detailed_support.rst,
  Documentation/introduction/supported_platforms.rst,
  boards/README.txt: Document the additional board support.

* boards/Kconfig:
  (ARCH_BOARD_TM4C129E_LAUNCHPAD): New config.
  (ARCH_BOARD): Add tm4c129e-launchpad.
  (Board-Specific Options): Source the board-specific Kconfig
   boards/arm/tiva/tm4c129e-launchpad/Kconfig when selected.
2022-09-07 14:15:48 +08:00
curuvar
89d3ba44ca Fixes to RP2040 SMART flash and documentation 2022-09-06 13:13:00 +08:00
curuvar
74f1bfbfd7 Added support for Raspberry Pi Pico W 2022-08-17 19:03:19 -03:00
Tiago Medicci Serrano
daa4cf7ad2 documentation: improve frame buffer and lcd drivers documentation 2022-08-17 10:04:52 +03:00
Xiang Xiao
ba9486de4a iob: Remove iob_user_e enum and related code
since it is impossible to track producer and consumer
correctly if TCP/IP stack pass IOB directly to netdev

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-08-15 08:41:20 +03:00
Tiago Medicci Serrano
df0604a4be Added default config for lvgl configs based on both fb and lcddev.
In order to better test the lcdddev driver and framebuffer, newer
board configs (for the TTGO T-Display and for the simulator) were
added.

Adjusted references of the sim:lvgl_(fb/lcd) config.
2022-08-13 20:36:45 +08:00
Jari van Ewijk
195412fa46 S32K1 & S32K3: add basic documentation for MCU family and boards 2022-08-02 14:53:09 -04:00
curuvar
c21c7ac8dc Added Adafruit QT Py RP2040 board.
Added ability to configure indivdual UART, SPI and I2C pin location.
2022-07-23 18:25:38 +08:00
Gustavo Henrique Nihei
feca57ffa9 esp32-devkitc: Add knsh configuration to the Documentation page
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-07-14 14:57:57 +08:00
curuvar
b70fc57849 RP2040 Board Documentation 2022-07-02 11:22:52 +08:00
curuvar
0c3db448bb Added Adafruit Feather RP2040, Adafruit KB2040 and Added neopixel driver to support RP2040 2022-06-30 22:13:49 -07:00
Nathan Hartman
2032eeae6c Documentation: Fix various typos.
Documentation/components/drivers/character/serial.rst
Documentation/faq/index.rst
Documentation/guides/pysimcoder.rst
Documentation/platforms/arm/imxrt/boards/teensy-4.x/index.rst
Documentation/platforms/arm/imxrt/index.rst
Documentation/platforms/arm/stm32wl5/boards/nucleo-wl55jc/index.rst
Documentation/platforms/arm/stm32wl5/index.rst
Documentation/platforms/risc-v/bl602/index.rst
Documentation/platforms/sim/sim/index.rst
Documentation/platforms/xtensa/esp32/index.rst

Co-authored-by: Gustavo Henrique Nihei <38959758+gustavonihei@users.noreply.github.com>
2022-06-24 00:01:38 +08:00
Alan Carvalho de Assis
e87a20e648 Add documentation to ESP32-S3 boards 2022-06-17 17:14:10 -03:00
Michał Łyszczek
5490f8964f stm32wl5: add support for internal FLASH
This patch adds corrected implementation of FLASH memory to be used
with progmem driver for use with mtd filesystems like nxffs or smartfs.

Signed-off-by: Michał Łyszczek <michal.lyszczek@bofc.pl>
2022-06-15 20:29:17 +08:00
Michał Łyszczek
4e5d8aca3d nucleo-wl55jc: add buttons and gpio interrupt support
This patch adds to the nucleo-wl55jc previously implemented EXTI support.
Button support with nuttx's button driver is added.

I've written small example to show how to use GPIO EXTI. B3 button can be
used (selectable via Kconfig) to toggle Red LED.

I've added new defconfig for demo purposes. I've included there config
and enabled example programs that are meant to demonstrate functions of
the board and does not really have a place in real world project. Like
Red LED can be toggled with B3 button, or LED example that flashes LEDS,
or button example to show which button has been pressed.

Signed-off-by: Michał Łyszczek <michal.lyszczek@bofc.pl>

--
v1 -> v2:
Suggested by: Petro Karashchenko
- Change (1 << 0) to (1 << BUTTON1_BIT (and similar)

v2 -> v3:
- Fix invalid BUTTON3_BIT value

v3 -> v4:
Suggested by: Petro Karashchenko
- Change 0/1 to false/true
2022-06-13 20:21:20 +08:00
Michał Łyszczek
288b57d5ca stm32wl5: add EXTI support for GPIO
This patch implements working support for EXTI GPIO.

Signed-off-by: Michał Łyszczek <michal.lyszczek@bofc.pl>

--
v1 -> v2:
Suggested by: Petro Karashchenko
- change (1 << n) to (1 << (n)) in macro definition
- change 1 << X to (1 << X) in code
- fix alignment

v2 -> v3:
Suggested by: Petro Karashchenko
- I was supposed to change (1 << pin) to 1 << pin, not the other way around:)
2022-06-13 20:21:20 +08:00
Michał Łyszczek
114758e518 add docs for stm32wl5 chip and nucleo-wl55jc board
This patch adds documentation for both stm32wl5 chip family and
nucleo-wl55jc board. I've kept the same directory structure for
arm/stm32 as in arch/ and boards/ directories.

Signed-off-by: Michał Łyszczek <michal.lyszczek@bofc.pl>
2022-06-08 08:09:50 +09:00
Michał Łyszczek
a5bcb2dc46 Documentation: fix multiple errors and warnings
Multiple files were badly formatted, which resulted in many
warnings. This made it harder to check for errors in newly
written documentation.

What's worse, badly formatted text resulted in butchered
output in generated html.

This patch fixes most of the errors, but alas, not all of
the errors can be fixed. Anyway, this should be way easier
to spot errors in newly written docs now.

Signed-off-by: Michał Łyszczek <michal.lyszczek@bofc.pl>
2022-06-08 03:02:32 +08:00
YAMAMOTO Takashi
045f8753e2 Documentation: esp32-devkitc: Improve html rendering 2022-05-27 11:04:59 +03:00
YAMAMOTO Takashi
5d03e1a3b4 esp32-devkitc: Document wamr_wasi_debug config 2022-05-25 14:47:16 +08:00
Xiang Xiao
b30e0a26ef Move "-nostartfiles -nodefaultlibs" from Make.defs to Toolchian.defs
and replace "-nostartfiles -nodefaultlibs" with "-nostdlib"

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-18 08:26:02 -04:00
anjiahao
09c6b02017 Documentation:fix error describe on message queue
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2022-04-26 16:09:37 +08:00
Jiuzhu Dong
de1c184e6c boards/sim: support rc.sysinit
Follow: http://glennastory.net/boot/sysinit.html

This is first script that init runs is rc.sysinit. This
script does serval initialization tasks about basic service.

The boot sequence currently provided to the board level is:
board_earlyinitialize->
    board_lateinitialize(Peripherals driver, core driver, ...)->
	run rcS script(mount fs, run service) ->
	    board_appinitialize->

After this patch:
The boot sequence currently provided to the board level is:
board_earlyinitialize->
    board_lateinitialize(core driver,...)->
	run rc.sysinit script(mount fs, run core service) ->
	    board_appinitialize(Peripherals driver)->
		run rcS script(run other service)->

So, Peripheral drivers can do more with the file system and
core services.

Signed-off-by: Jiuzhu Dong <dongjiuzhu1@xiaomi.com>
2022-04-21 12:54:53 +03:00
Xiang Xiao
ef1a98dd00 Remove the unneeded void cast
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-17 23:32:05 +03:00
Michal Lenc
d5b34f9ce0 Documentation/guides/pysimcoder.rst: update pysimCoder dependencies
CONFIG_LIBM option may be required by some toolchains that do not include
standard math library. Morover CONFIG_PTHREAD_STACK_MIN was listed twice
in the list.

Signed-off-by: Michal Lenc <michallenc@seznam.cz>
2022-04-08 01:05:43 +08:00
Long Dao
8bf0750090 Update cpp_cmake.rst 2022-04-05 02:04:05 +08:00
Long Dao
e25df6706d Update cpp_cmake.rst
update CMAKE_C_FLAGS when compile C file
2022-04-05 02:04:05 +08:00
Alan C. Assis
0f49a8dec7 Fix ESP32-C3 toolchain download link 2022-04-02 05:41:18 +08:00
Janne Rosberg
841bcf84a0 docs/mpfs: mark USB and ethernet as supported 2022-03-18 17:22:27 +02:00
YAMAMOTO Takashi
26a08908cf boards/esp32-devkitc/index.rst: Mention efuse config 2022-03-17 13:40:51 +08:00
Meco Man
6ad06b0c2b [docs] eliminate potential misunderstandings 2022-03-17 02:04:05 +08:00
Xiang Xiao
ee931c137f boards: Remove -fno-builtin
it's more efficent to generate the machine code directly if possible

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-03-10 19:46:01 +02:00
simbit18
1e7e1cad0b Update install.rst
updade tip
2022-03-07 23:51:48 +08:00
Xiang Xiao
f1ed349dd9 sched/clock: Remove CLOCK_MONOTONIC option from Kconfig
here is the reason:
1.clock_systime_timespec(core function) always exist regardless the setting
2.CLOCK_MONOTONIC is a foundamental clock type required by many places

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-02-23 01:21:26 +08:00
Xiang Xiao
1d1bdd85a3 Remove the double blank line from source files
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-02-20 20:10:14 +01:00
Alan C. Assis
9739be15de Doc/sim: Add documentation about LVGL and VNC 2022-02-19 17:30:27 +08:00
Xiang Xiao
b0fa232918 boards: Remove -D__NuttX__ from the individual Make.defs
since it is defined globally in tools/Config.mk now

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-02-15 15:26:38 +01:00
Xiang Xiao
47e38eb70f binfmt: Decouple builtin from binfs file system
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-02-14 09:35:35 -03:00
Xiang Xiao
04297c3ca3 board: Remove -fno-omit-frame-pointer from Make.defs
except sim arch, since this flag is set inside Toolschain.defs now

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-01-20 16:00:48 +01:00
Alexander Lunev
ea6141e01b Documentation: added "Testing / capturing TCP network traffic" section, including packet loss emulation 2022-01-20 14:15:33 +08:00
Xiang Xiao
8bcdefafc9 board: Remove -fno-strength-reduce
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-01-19 00:14:03 +01:00
Eero Nurkkala
10d98f64d3 Documentation: risc-v/mpfs: update documentation
Update the risc-v/mpfs documentation to match the current work.

Signed-off-by: Eero Nurkkala <eero.nurkkala@offcode.fi>
2022-01-17 17:33:03 +08:00
Xiang Xiao
902d2197b0 vnc: Decouple VNC server from NX graphic stack
since VNC server is very useful even without NX:
1.Replace nxgl_coord_t with fb_coord_t
2.Replace nxgl_rect_s with fb_area_s
3.Remove nxgl_xxx function call

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-01-03 11:19:32 +08:00
ligd
75aec04330 serial: add CONFIG_TTY_LAUNCH support
this allow user start new program from tty

Signed-off-by: ligd <liguiding1@xiaomi.com>
2022-01-01 20:38:26 +08:00
Alan C. Assis
7b1135500b doc/esp32: Add documentation about BLE for ESP32 2021-12-28 07:31:02 -06:00