Documentation: add dummy pages for missing filesystems and drivers

This commit is contained in:
raiden00pl 2023-10-27 12:57:14 +02:00 committed by Alan Carvalho de Assis
parent 870139e45f
commit d72c6802c1
70 changed files with 546 additions and 222 deletions

View File

@ -1,5 +1,5 @@
==============
Boards support
Boards Support
==============
This page discusses the board support logic for NuttX.

View File

@ -0,0 +1,97 @@
======
EEPROM
======
EEPROMs are a form of Memory
Technology Device (MTD). EEPROMs are non-volatile memory like FLASH, but
differ in underlying memory technology and differ in usage in many respects:
They may not be organized into blocks (at least from the standpoint of the
user) and it is not necessary to erase the EEPROM memory before re-writing
it. In addition, EEPROMs tend to be much smaller than FLASH parts, usually
only a few kilobytes vs megabytes for FLASH. EEPROM tends to be used to
retain a small amount of device configuration information; FLASH tends
to be used for program or massive data storage. For these reasons, it may
not be convenient to use the more complex MTD interface but instead use
the simple character interface provided by the EEPROM drivers.
EEPROM Device Support
=====================
drivers/eeprom/spi_xx25xx.c
---------------------------
This is a driver for SPI EEPROMs that use the same commands as the
25AA160::
Manufacturer Device Bytes PgSize AddrLen
Microchip
25xx010A 128 16 1
25xx020A 256 16 1
25AA02UID 256 16 1
25AA02E48 256 16 1
25AA02E64 256 16 1
25xx040 512 16 1+bit
25xx040A 512 16 1+bit
25xx080 1024 16 1
25xx080A 1024 16 2
25xx080B 1024 32 2
25xx080C 1024 16 x
25xx080D 1024 32 x
25xx160 2048 16 2
25xx160A/C 2048 16 2 TESTED
25xx160B/D 2048 32 2
25xx160C 2048 16 2
25xx160D 2048 32 2
25xx320 4096 32 2
25xx320A 4096 32 2
25xx640 8192 32 2
25xx640A 8192 32 2
25xx128 16384 64 2
25xx256 32768 64 2
25xx512 65536 128 2
25xx1024 131072 256 3
Atmel
AT25010B 128 8 1
AT25020B 256 8 1
AT25040B 512 8 1+bit
AT25080B 1024 32 2
AT25160B 2048 32 2
AT25320B 4096 32 2
AT25640B 8192 32 2
AT25128B 16384 64 2
AT25256B 32768 64 2
AT25512 65536 128 2
AT25M01 131072 256 3
drivers/mtd/at24xx.c
--------------------
This is a driver for I2C-based at24cxx EEPROM (at24c32, at24c64, at24c128,
at24c256, at24c512). This driver is currently provided as an MTD driver
but could easily be modified to support the character driver interface.
File Systems
============
Most EEPROM parts are too small to be candidates for use with a file
system. The character driver interface is optimal for these small parts
because you can open and access the EEPROM part as if it were a single,
fixed size file.
It is also possible to use these character drivers with a file system.
The character driver can converted to a block device using the NuttX loop
device. The loop device can be found the file drivers/loop.c. Interface
function prototypes can be found in include/nuttx/fs/fs.h::
int losetup(FAR const char *devname, FAR const char *filename,
uint16_t sectsize, off_t offset, bool readonly);
Given a file or character devices at 'filename', losetup will create the
block device 'devname' using a bogus sector size of sectsize. 'offset' is
normally zero but can be used to provide an offset into the EEPROM where
the block driver data starts; The EEPROM block driver can also be read-
only.
There is a corresponding function that will destroy the loop device::
int loteardown(FAR const char *devname);

View File

@ -2,6 +2,13 @@
Block Device Drivers
====================
.. toctree::
:maxdepth: 1
eeprom.rst
ramdisk.rst
Block device drivers have these properties:
- ``include/nuttx/fs/fs.h``. All structures and APIs needed
@ -37,107 +44,3 @@ Block device drivers have these properties:
- **Examples**. ``drivers/loop.c``,
``drivers/mmcsd/mmcsd_spi.c``, ``drivers/ramdisk.c``, etc.
``ramdisk.c``
=============
Can be used to set up a block of memory or (read-only) FLASH as
a block driver that can be mounted as a file system. See
include/nuttx/drivers/ramdisk.h.
EEPROM
======
EEPROMs are a form of Memory
Technology Device (MTD). EEPROMs are non-volatile memory like FLASH, but
differ in underlying memory technology and differ in usage in many respects:
They may not be organized into blocks (at least from the standpoint of the
user) and it is not necessary to erase the EEPROM memory before re-writing
it. In addition, EEPROMs tend to be much smaller than FLASH parts, usually
only a few kilobytes vs megabytes for FLASH. EEPROM tends to be used to
retain a small amount of device configuration information; FLASH tends
to be used for program or massive data storage. For these reasons, it may
not be convenient to use the more complex MTD interface but instead use
the simple character interface provided by the EEPROM drivers.
EEPROM Device Support
---------------------
drivers/eeprom/spi_xx25xx.c
~~~~~~~~~~~~~~~~~~~~~~~~~~~
This is a driver for SPI EEPROMs that use the same commands as the
25AA160::
Manufacturer Device Bytes PgSize AddrLen
Microchip
25xx010A 128 16 1
25xx020A 256 16 1
25AA02UID 256 16 1
25AA02E48 256 16 1
25AA02E64 256 16 1
25xx040 512 16 1+bit
25xx040A 512 16 1+bit
25xx080 1024 16 1
25xx080A 1024 16 2
25xx080B 1024 32 2
25xx080C 1024 16 x
25xx080D 1024 32 x
25xx160 2048 16 2
25xx160A/C 2048 16 2 TESTED
25xx160B/D 2048 32 2
25xx160C 2048 16 2
25xx160D 2048 32 2
25xx320 4096 32 2
25xx320A 4096 32 2
25xx640 8192 32 2
25xx640A 8192 32 2
25xx128 16384 64 2
25xx256 32768 64 2
25xx512 65536 128 2
25xx1024 131072 256 3
Atmel
AT25010B 128 8 1
AT25020B 256 8 1
AT25040B 512 8 1+bit
AT25080B 1024 32 2
AT25160B 2048 32 2
AT25320B 4096 32 2
AT25640B 8192 32 2
AT25128B 16384 64 2
AT25256B 32768 64 2
AT25512 65536 128 2
AT25M01 131072 256 3
drivers/mtd/at24xx.c
~~~~~~~~~~~~~~~~~~~~
This is a driver for I2C-based at24cxx EEPROM (at24c32, at24c64, at24c128,
at24c256, at24c512). This driver is currently provided as an MTD driver
but could easily be modified to support the character driver interface.
File Systems
------------
Most EEPROM parts are too small to be candidates for use with a file
system. The character driver interface is optimal for these small parts
because you can open and access the EEPROM part as if it were a single,
fixed size file.
It is also possible to use these character drivers with a file system.
The character driver can converted to a block device using the NuttX loop
device. The loop device can be found the file drivers/loop.c. Interface
function prototypes can be found in include/nuttx/fs/fs.h::
int losetup(FAR const char *devname, FAR const char *filename,
uint16_t sectsize, off_t offset, bool readonly);
Given a file or character devices at 'filename', losetup will create the
block device 'devname' using a bogus sector size of sectsize. 'offset' is
normally zero but can be used to provide an offset into the EEPROM where
the block driver data starts; The EEPROM block driver can also be read-
only.
There is a corresponding function that will destroy the loop device::
int loteardown(FAR const char *devname);

View File

@ -0,0 +1,7 @@
=============
``ramdisk.c``
=============
Can be used to set up a block of memory or (read-only) FLASH as
a block driver that can be mounted as a file system. See
include/nuttx/drivers/ramdisk.h.

View File

@ -0,0 +1,3 @@
================
One Wire Drivers
================

View File

@ -0,0 +1,3 @@
================================
Block Driver to Character Driver
================================

View File

@ -0,0 +1,3 @@
====================
Constactless Devices
====================

View File

@ -0,0 +1,8 @@
==============
Crypto Drivers
==============
.. toctree::
:caption: Supported Drivers
se05x.rst

View File

@ -0,0 +1,3 @@
=============
EFUSE Drivers
=============

View File

@ -0,0 +1,5 @@
===========
I2S Drivers
===========
See ``include/nuttx/audio/i2s.h``.

View File

@ -52,20 +52,28 @@ Character device drivers have these properties:
.. toctree::
:caption: Supported Drivers
:maxdepth: 2
serial.rst
touchscreen.rst
1wire.rst
analog.rst
pwm.rst
bch.rst
can.rst
quadrature.rst
timer.rst
rtc.rst
watchdog.rst
keypad.rst
contactless.rst
crypto/index.rst
efuse.rst
i2s.rst
input/index.rst
ipcc.rst
leds/index.rst
loop.rst
math.rst
modem.rst
motor/index.rst
note.rst
foc.rst
ws2812.rst
se05x.rst
nullzero.rst
quadrature.rst
rc.rst
rf.rst
serial.rst
timers/index.rst
touchscreen.rst

View File

@ -0,0 +1,10 @@
=============
Input Devices
=============
.. toctree::
:caption: Supported Drivers
keypad.rst
See ``include/nuttx/input/*.h`` for registration information.

View File

@ -0,0 +1,3 @@
======================================================
IPCC (Inter Processor Communication Controller) Driver
======================================================

View File

@ -0,0 +1,8 @@
====
LEDS
====
.. toctree::
:caption: Supported Drivers
ws2812.rst

View File

@ -0,0 +1,6 @@
===========
Loop Device
===========
Supports the standard loop device that can be used to export a
file (or character device) as a block device.

View File

@ -0,0 +1,3 @@
=========================
Math Acceleration Drivers
=========================

View File

@ -0,0 +1,3 @@
============
Modem Device
============

View File

@ -0,0 +1,8 @@
=============
Motor Drivers
=============
.. toctree::
:caption: Supported Drivers
foc.rst

View File

@ -0,0 +1,3 @@
======================
Remote Control Devices
======================

View File

@ -0,0 +1,3 @@
==========
RF Devices
==========

View File

@ -0,0 +1,12 @@
==============
Timers Drivers
==============
.. toctree::
:caption: Supported Drivers
timer.rst
pwm.rst
watchdog.rst
rtc.rst

View File

@ -30,48 +30,57 @@ Drivers in NuttX generally work in two distinct layers:
* A "lower half" which is typically hardware-specific. This is
usually implemented at the architecture or board level.
Subdirectories of `nuttx/drivers`
=================================
Subdirectories of ``nuttx/drivers``
===================================
* ``analog/``
* ``1wire/`` :doc:`character/1wire`
1wire device drivers.
* ``analog/`` :doc:`character/analog`
This directory holds implementations of analog device drivers.
This includes drivers for Analog to Digital Conversion (ADC) as
well as drivers for Digital to Analog Conversion (DAC).
See ``include/nuttx/analog/*.h`` for registration information.
* ``audio/``
* ``audio/`` :doc:`special/audio`
Audio device drivers.
See ``include/nuttx/audio/audio.h`` for interface definitions.
See also the audio subsystem at ``nuttx/audio/``.
* ``bch/``
* ``bch/`` :doc:`character/bch`
Contains logic that may be used to convert a block driver into
a character driver. This is the complementary conversion as that
performed by loop.c.
See ``include/nuttx/fs/fs.h`` for registration information.
* ``can/``
* ``can/`` :doc:`character/can`
This is the CAN drivers and logic support.
See ``include/nuttx/can/can.h`` for usage information.
* ``clk/``:doc:`special/clk`
* ``contactless/``
Clock management (CLK) device drivers.
* ``contactless/`` :doc:`character/contactless`
Contactless devices are related to wireless devices. They are not
communication devices with other similar peers, but couplers/interfaces
to contactless cards and tags.
* ``crypto/``
* ``crypto/`` :doc:`character/crypto/index`
Contains crypto drivers and support logic, including the ``/dev/urandom`` device.
Contains crypto drivers and support logic, including the
``/dev/urandom`` device.
* ``eeprom/``
* ``devicetree/`` :doc:`special/devicetree`
Device Tree support.
* ``dma/`` :doc:`special/dma`
DMA drivers support.
* ``eeprom/`` :doc:`block/eeprom`
An EEPROM is a form of Memory Technology Device (see ``drivers/mtd``).
EEPROMs are non-volatile memory like FLASH, but differ in underlying
@ -86,90 +95,123 @@ Subdirectories of `nuttx/drivers`
interface but instead use the simple character interface provided by
the EEPROM drivers.
* ``i2c/``
* ``efuse/`` :doc:`character/efuse`
EFUSE drivers support.
* ``i2c/`` :doc:`special/i2c`
I2C drivers and support logic.
See ``include/nuttx/i2c/i2c_master.h``
* ``i2s/``
* ``i2s/`` :doc:`character/i2s`
I2S drivers and support logic.
See ``include/nuttx/audio/i2s.h``
* ``input/``
* ``input/`` :doc:`character/input/index`
This directory holds implementations of human input device (HID) drivers.
This includes such things as mouse, touchscreen, joystick,
keyboard and keypad drivers.
See ``include/nuttx/input/*.h`` for registration information.
Note that USB HID devices are treated differently. These can be found under
``usbdev/`` or ``usbhost/``.
* ``lcd/``
* ``ioexpander/`` :doc:`special/ioexpander`
Drivers for parallel and serial LCD and OLED type devices. These drivers support
interfaces as defined in ``include/nuttx/lcd/lcd.h``
IO Expander drivers.
* ``leds/``
* ``ipcc/`` :doc:`character/ipcc`
IPCC (Inter Processor Communication Controller) driver.
* ``lcd/`` :doc:`special/lcd`
Drivers for parallel and serial LCD and OLED type devices.
* ``leds/`` :doc:`character/leds/index`
Various LED-related drivers including discrete as well as PWM- driven LEDs.
* ``loop/``
* ``loop/`` :doc:`character/loop`
Supports the standard loop device that can be used to export a
file (or character device) as a block device.
See ``losetup()`` and ``loteardown()`` in ``include/nuttx/fs/fs.h``.
* ``mmcsd/``
* ``math/`` :doc:`character/math`
MATH Acceleration drivers.
* ``misc/`` :doc:`character/nullzero` :doc:`special/rwbuffer` :doc:`block/ramdisk`
Various drivers that don't fit elsewhere.
* ``mmcsd/`` :doc:`special/sdio` :doc:`special/mmcsd`
Support for MMC/SD block drivers. MMC/SD block drivers based on
SPI and SDIO/MCI interfaces are supported.
See include/nuttx/mmcsd.h and include/nuttx/sdio.h for further information.
* ``modem/`` :doc:`character/modem`
* ``mtd/``
Modem Support.
* ``motor/`` :doc:`character/motor/index`
Motor control drivers.
* ``mtd/`` :doc:`special/mtd`
Memory Technology Device (MTD) drivers. Some simple drivers for
memory technologies like FLASH, EEPROM, NVRAM, etc.
See ``include/nuttx/mtd/mtd.h``
(Note: This is a simple memory interface and should not be
confused with the "real" MTD developed at infradead.org. This
logic is unrelated; I just used the name MTD because I am not
aware of any other common way to refer to this class of devices).
* ``net/``
* ``net/`` :doc:`special/net/index`
Network interface drivers.
See also ``include/nuttx/net/net.h``
* ``notes/`` :doc:`character/note`
* ``pipes/``
Note Driver Support.
FIFO and named pipe drivers. Standard interfaces are declared in ``include/unistd.h``
* ``pipes/`` :doc:`special/pipes`
* ``power/``
FIFO and named pipe drivers.
Standard interfaces are declared in ``include/unistd.h``
Power management (PM) driver interfaces. These interfaces are used
to manage power usage of a platform by monitoring driver activity
and by placing drivers into reduce power usage modes when the
drivers are not active.
* ``power/`` :doc:`special/power/index`
* ``pwm/``
Various drivers related to power managament.
Provides the "upper half" of a pulse width modulation (PWM) driver.
The "lower half" of the PWM driver is provided by device-specific logic.
* ``rc/`` :doc:`character/rc`
See ``include/nuttx/timers/pwm.h`` for usage information.
Remote Control Device Support.
* ``sensors/``
* ``regmap/`` :doc:`special/regmap`
Regmap Subsystems Support.
* ``reset/`` :doc:`special/reset`
Reset Driver Support.
* ``rf/`` :doc:`character/rf`
RF Device Support.
* ``rptun/`` :doc:`special/rptun`
Remote Proc Tunnel Driver Support.
* ``segger/`` :doc:`special/segger`
Segger RTT drivers.
* ``sensors/`` :doc:`special/sensors`
Drivers for various sensors. A sensor driver differs little from
other types of drivers other than they are use to provide measurements
@ -180,57 +222,53 @@ Subdirectories of `nuttx/drivers`
measure and convert voltage levels. DACs, however, are retained in
the ``analog/`` sub-directory.
* ``serial/``
* ``serial/``:doc:`character/serial`
Front-end character drivers for chip-specific UARTs.
This provide some TTY-like functionality and are commonly used (but
not required for) the NuttX system console.
See also ``include/nuttx/serial/serial.h``
* ``spi/``
* ``spi/`` :doc:`special/spi`
SPI drivers and support logic.
See ``include/nuttx/spi/spi.h``
* ``syslog/``
* ``syslog/`` :doc:`special/syslog`
System logging devices.
See ``include/syslog.h`` and ``include/nuttx/syslog/syslog.h``
* ``timers/`` :doc:`character/timers/index`
* ``timers/``
Includes support for various timer devices.
Includes support for various timer devices including:
- An "upper half" for a generic timer driver.
See ``include/nuttx/timers/timer.h`` for more information.
- An "upper half" for a generic watchdog driver.
See ``include/nuttx/timers/watchdog.h`` for more information.
- RTC drivers
* ``usbdev/``
* ``usbdev/`` :doc:`special/usbdev`
USB device drivers.
See also ``include/nuttx/usb/usbdev.h``
* ``usbhost/``
* ``usbhost/`` :doc:`special/usbhost`
USB host drivers.
See also ``include/nuttx/usb/usbhost.h``
* ``usbmisc/`` :doc:`special/usbmisc`
* ``video/``
USB Miscellaneous drivers.
* ``usbmonitor/`` :doc:`special/usbmonitor`
USB Monitor support.
* ``usrsock/`` :doc:`special/usrsock`
Usrsock Driver Support.
* ``video/`` :doc:`special/video`
Video-related drivers.
See ``include/nuttx/video/``
* ``virtio/`` :doc:`special/virtio`
* ``wireless/``
Virtio Device Support.
* ``wireless/`` :doc:`special/wireless`
Drivers for various wireless devices.

View File

@ -0,0 +1,6 @@
====================
Audio Device Drivers
====================
See ``include/nuttx/audio/audio.h`` for interface definitions.
See also the audio subsystem at ``nuttx/audio/``.

View File

@ -0,0 +1,3 @@
======================
Clock management (CLK)
======================

View File

@ -0,0 +1,3 @@
===================
Device Tree support
===================

View File

@ -0,0 +1,3 @@
===========
DMA Drivers
===========

View File

@ -2,8 +2,9 @@
I2C Device Drivers
==================
- ``include/nuttx/i2c/i2c.h``. All structures and APIs needed
to work with I2C drivers are provided in this header file.
- ``include/nuttx/i2c/i2c_master.h`` and ``include/nuttx/i2c/i2c_slave.h``.
All structures and APIs needed to work with I2C drivers are provided in
this header file.
- ``struct i2c_ops_s``. Each I2C device driver must implement
an instance of ``struct i2c_ops_s``. That structure defines a

View File

@ -22,17 +22,33 @@ following section.
.. toctree::
:caption: Supported Drivers
syslog.rst
spi.rst
i2c.rst
ethernet.rst
audio.rst
clk.rst
devicetree.rst
dma.rst
framebuffer.rst
i2c.rst
ioexpander.rst
lcd.rst
mtd.rst
sdio.rst
usbhost.rst
usbdev.rst
rwbuffer.rst
regmap.rst
reset.rst
rptun.rst
rwbuffer.rst
sensors.rst
segger.rst
spi.rst
syslog.rst
sdio.rst
usbdev.rst
usbhost.rst
usbmisc.rst
usbmonitor.rst
usrsock.rst
mmcsd.rst
net/index.rst
pipes.rst
power/index.rst
virtio.rst
video.rst
wireless.rst

View File

@ -0,0 +1,3 @@
==========================
IO Expander Device Drivers
==========================

View File

@ -0,0 +1,6 @@
====================
MMCSD Device Drivers
====================
- ``include/nuttx/mmcsd.h``. All structures and APIs needed to
work with MMCSD drivers are provided in this header file.

View File

@ -0,0 +1,14 @@
=========================
Network interface drivers
=========================
- ``include/nuttx/net/net.h``. All structures and APIs
needed to work with network device drivers are provided in
this header file.
.. toctree::
:caption: Supported Drivers
ethernet.rst

View File

@ -0,0 +1,3 @@
===========================
FIFO and named pipe drivers
===========================

View File

@ -0,0 +1,8 @@
=====================
Power-related Drivers
=====================
.. toctree::
:caption: Supported Drivers
pm/index.rst

View File

@ -85,8 +85,8 @@ All PM interfaces are declared in the file ``include/nuttx/power/pm.h``.
Called by a device driver in
order to register to receive power management event callbacks.
Refer to the :ref:`components/power:Callbacks` section for more
details.
Refer to the `Callbacks`_
section for more details.
:param callbacks:
An instance of :c:struct:`pm_callback_s`
@ -100,8 +100,8 @@ All PM interfaces are declared in the file ``include/nuttx/power/pm.h``.
Called by a device driver in
order to unregister previously registered power management event
callbacks. Refer to the :ref:`components/power:Callbacks` section for
more details.
callbacks. Refer to the `Callbacks`_
section for more details.
**Input Parameters:**

View File

Before

Width:  |  Height:  |  Size: 32 KiB

After

Width:  |  Height:  |  Size: 32 KiB

View File

@ -0,0 +1,3 @@
============
Reset Driver
============

View File

@ -0,0 +1,23 @@
==========================
Remote Proc Tunnel Drivers
==========================
RPTUN driver is used for multi-cores' communication.
Supported RPTUN drivers:
- RPMSG File System
- RPMSG domain (remote) sockets
- RPMSG UART Driver
- RPMSG net Driver
- RPMSG Usersock
- RPMSG Sensor Driver
- RPMSG RTC Driver
- RPMSG MTD
- RPMSG Device
- RPMSG Block Driver
- RPMSG IO expander
- RPMSG uinput
- RPMSG clk Driver
- RPMSG syslog
- RPMSG regulator

View File

@ -0,0 +1,10 @@
==================
Segger RTT drivers
==================
Supported Segger drivers:
- serial over RTT - ``CONFIG_SERIAL_RTTx``,
- console over RTT - ``CONFIG_SERIAL_RTT_CONSOLE_CHANNEL``
- Segger SystemView - ``CONFIG_SEGGER_SYSVIEW``
- Note RTT - ``CONFIG_NOTE_RTT``

View File

@ -0,0 +1,3 @@
=========================
USB Miscellaneous Drivers
=========================

View File

@ -0,0 +1,3 @@
===================
USB Monitor support
===================

View File

@ -0,0 +1,3 @@
==============
Usrsock Driver
==============

View File

@ -2,6 +2,9 @@
Video Device Drivers
====================
- ``include/nuttx/video/``. All structures and APIs
needed to work with video drivers are provided in this header
file.
max7456
-------

View File

@ -0,0 +1,3 @@
=====================
Virtio Device Drivers
=====================

View File

@ -0,0 +1,3 @@
================
Wireless Drivers
================

View File

@ -0,0 +1,5 @@
========================
Asynchronous I/O support
========================
See ``include/aio.h``.

View File

@ -1,5 +1,5 @@
======
cromfs
CROMFS
======
Overview

View File

@ -0,0 +1,5 @@
===
FAT
===
Support for FAT filesystem.

View File

@ -0,0 +1,13 @@
================
Host File System
================
The Host file system provides a mechanism to mount directories from the host OS
during simulation mode. The host directory to be "mounted" is specified during
the mount command using the ``-o`` command line switch, such as::
mount -t hostfs -o fs=/home/user/nuttx_root /host
For non-NSH operation, the option ``fs=home/user/nuttx_root`` would
be passed to the ``mount()`` routine using the optional ``void *data``
parameter.

View File

@ -45,13 +45,23 @@ scalability from the very tiny platform to the moderate platform.
.. toctree::
:maxdepth: 1
aio.rst
binfs.rst
cromfs.rst
fat.rst
hostfs.rst
littlefs.rst
mmap.rst
nfs.rst
nxffs.rst
procfs.rst
smartfs.rst
spiffs.rst
unionfs.rst
zipfs.rst
partition.rst
procfs.rst
romfs.rst
rpmsgfs.rst
smartfs.rst
shmfs.rst
spiffs.rst
tmpfs.rst
unionfs.rst
userfs.rst
zipfs.rst

View File

@ -0,0 +1,6 @@
========
LITTLEFS
========
A little fail-safe filesystem designed for microcontrollers from
https://github.com/littlefs-project/littlefs.

View File

@ -0,0 +1,5 @@
===
NFS
===
Network file system (NFS) client file system.

View File

@ -0,0 +1,3 @@
=====
ROMFS
=====

View File

@ -0,0 +1,5 @@
=================
RPMSG File System
=================
Use rpmsg file system to mount remote directories to local.

View File

@ -0,0 +1,5 @@
=========================
Shared Memory File System
=========================
Include support for shm_open() and shm_close.

View File

@ -0,0 +1,5 @@
=====
TMPFS
=====
TMPFS filesystem.

View File

@ -0,0 +1,5 @@
================
User file system
================
See ``include/nuttx/fs/userfs.h``.

View File

@ -1,3 +1,4 @@
=============
OS Components
=============
@ -10,7 +11,6 @@ case, you can head to the :doc:`reference <../reference/index>`.
:maxdepth: 2
:caption: Contents:
power.rst
binfmt.rst
drivers/index.rst
nxflat.rst

View File

@ -120,7 +120,7 @@ Key features of NuttX include:
* Graphics: framebuffer drivers, graphic- and segment-LCD drivers. VNC server.
* Audio subsystem: CODECs, audio input and output drivers. Command line and graphic media player applications.
* Cryptographic subsystem.
* :doc:`/components/power` sub-system.
* :doc:`/components/drivers/special/power/pm/index` sub-system.
* ModBus support provided by built-in `FreeModBus <https://www.embedded-experts.at/en/freemodbus/>`__ version 1.5.0.
* **C/C++ Libraries**

View File

@ -240,7 +240,7 @@ Linker Segments
ESP32 has 4 generic timers of 64 bits (2 from Group 0 and 2 from Group 1). They're
accessible as character drivers, the configuration along with a guidance on how
to run the example and the description of the application level interface
can be found :doc:`here </components/drivers/character/timer>`.
can be found :doc:`here </components/drivers/character/timers/timer>`.
Watchdog Timers
===============
@ -249,7 +249,7 @@ ESP32 has 3 WDTs. 2 MWDTS from the Timers Module and 1 RWDT from the RTC Module
(Currently not supported yet). They're accessible as character drivers,
The configuration along with a guidance on how to run the example and the description
of the application level interface can be found
:doc:`here </components/drivers/character/watchdog>`.
:doc:`here </components/drivers/character/timers/watchdog>`.
SMP
===

View File

@ -242,7 +242,7 @@ Linker Segments
ESP32-S2 has 4 generic timers of 64 bits (2 from Group 0 and 2 from Group 1).
They're accessible as character drivers, the configuration along with a
guidance on how to run the example and the description of the application level
interface can be found in the :doc:`timer documentation </components/drivers/character/timer>`.
interface can be found in the :doc:`timer documentation </components/drivers/character/timers/timer>`.
Watchdog Timers
===============
@ -251,7 +251,7 @@ ESP32-S2 has 3 WDTs. 2 MWDTs from the Timers Module and 1 RWDT from the RTC Modu
(Currently not supported yet). They're accessible as character drivers,
The configuration along with a guidance on how to run the example and the description
of the application level interface can be found in the
:doc:`watchdog documentation </components/drivers/character/watchdog>`.
:doc:`watchdog documentation </components/drivers/character/timers/watchdog>`.
I2S
===

View File

@ -88,7 +88,7 @@ Power Management
Manage power state transition and query. The supplied argument
indicates the specific PM operation to perform, which map to
corresponding internal ``pm_<operation>`` functions
(see :doc:`/components/power`).
(see :doc:`/components/drivers/special/power/pm/index`).
With this interface you can interact with PM handling arch/board logic
(typically done in IDLE loop) or you can directly manage state transitions