summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/conf.py1
-rw-r--r--docs/info/changelog.rst97
-rw-r--r--docs/reference/getting_started.rst16
-rw-r--r--docs/reference/index.rst4
-rw-r--r--docs/reference/supported.rst256
-rw-r--r--docs/requirements.txt2
6 files changed, 249 insertions, 127 deletions
diff --git a/docs/conf.py b/docs/conf.py
index c7a17478f..878b29645 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -21,7 +21,6 @@ extensions = [
'sphinx.ext.intersphinx',
'sphinx.ext.todo',
'sphinx_autodoc_typehints',
- 'sphinxemoji.sphinxemoji',
]
templates_path = ['_templates']
diff --git a/docs/info/changelog.rst b/docs/info/changelog.rst
index 8eec729d6..da29e04fb 100644
--- a/docs/info/changelog.rst
+++ b/docs/info/changelog.rst
@@ -2,6 +2,103 @@
Changelog
*********
+0.14.0
+======
+
+- Improve compiler support for CCRX and IAR
+- Add timeout to osal_queue_receive()
+- Add tud_task_ext(timeout, in_isr) as generic version of tud_task(). Same as tuh_task_ext(), tuh_task()
+- Enable more warnings -Wnull-dereference -Wuninitialized -Wunused -Wredundant-decls -Wconversion
+- Add new examples
+ - host/bare_api to demonstrate generic (app-level) enumeration and endpoint transfer
+ - dual/host_hid_to_device_cdc to run both device and host stack concurrently, get HID report from host and print out to device CDC. This example only work with multiple-controller MCUs and rp2040 with the help of pio-usb as added controller.
+
+Controller Driver (DCD & HCD)
+-----------------------------
+
+- Enhance rhports management to better support dual roles
+ - CFG_TUD_ENABLED/CFG_TUH_ENABLED, CFG_TUD_MAX_SPEED/CFG_TUH_MAX_SPEED can be used to replace CFG_TUSB_RHPORT0_MODE/CFG_TUSB_RHPORT1_MODE
+ - tud_init(rphort), tuh_init(rhport) can be used to init stack on specified roothub port (controller) instead of tusb_init(void)
+- Add dcd/hcd port specific defines TUP_ (stand for tinyusb port-specific)
+- [dwc2]
+ - Update to support stm32 h72x, h73x with only 1 otg controller
+ - Fix overwrite with grstctl when disable endpoint
+- [EHCI] Fix an issue with EHCI driver
+- [msp430] Fix for possible bug in msp430-elf-gcc 9.3.0
+- [nrf5x] Fix DMA access race condition using atomic function
+- [pic32] Fix PIC32 santiy
+- [rp2040]
+ - Add PICO-PIO-USB as controller (device/host) support for rp2040
+ - Use shared IRQ handlers, so user can also hook the USB IRQ
+ - Fix resumed signal not reported to device stack
+- [stm32fsdev] Add support for stm32wb55
+
+Device Stack
+------------
+
+- [Audio] Add support for feedback endpoint computation
+ - New API tud_audio_feedback_params_cb(), tud_audio_feedback_interval_isr().
+ - Supported computation method are: frequency with fixed/float or power of 2. Feedback with fifo count is not yet supported.
+ - Fix nitfs (should be 3) in TUD_AUDIO_HEADSET_STEREO_DESCRIPTOR
+ - Fix typo in audiod_rx_done_cb()
+- [DFU] Fix coexistence with other interfaces BTH, RNDIS
+- [MSC] Fix inquiry response additional length field
+- [Venndor] Improve write performance
+
+Host Stack
+----------
+
+- Add new API tuh_configure(rhport, cfg_id, cfg_param) for dynamnic port specific behavior configuration
+- [HID] Open OUT endpoint if available
+- [Hub] hub clear port and device interrupts
+- [USBH] Major improvement
+ - Rework usbh control transfer with complete callback. New API tuh_control_xfer() though still only carry 1 usbh (no queueing) at a time.
+ - Add generic endpoint transfer with tuh_edpt_open(), tuh_edpt_xfer(). Require `CFG_TUH_API_EDPT_XFER=1`
+ - Support app-level enumeration with new APIs
+ - tuh_descriptor_get(), tuh_descriptor_get_device(), tuh_descriptor_get_configuration(), tuh_descriptor_get_hid_report()
+ - tuh_descriptor_get_string(), tuh_descriptor_get_manufacturer_string(), tuh_descriptor_get_product_string(), tuh_descriptor_get_serial_string()
+ - Also add _sync() as sync/blocking version for above APIs
+
+0.13.0
+======
+
+- [tu_fifo] Fix locked mutex when full, and return type in peek_n()
+
+Controller Driver (DCD & HCD)
+-----------------------------
+
+- [DWC2] Generalize synopsys dwc2 with synopsys/dwc2 which support both FS and HS phy (UTMI and ULPI) for various MCUs.
+ - Broadcom 28/27xx on raspberrypi SBC
+ - Silicon Labs EFM32
+ - Espressif ESP32 Sx
+ - GigaDevice GD32
+ - ST STM32
+ - Infineon XMC
+- [KL25] Add new HCD for NXP KL25
+- [MUSB] Add new DCD and HCD for Mentor musb with TI MSP432E4
+- [F1C100s] Add new DCD for Allwinner F1C100s family
+- [PIC32MZ] Add new DCD for PIC32MZ
+- [nRF] Fix/Enhance varous race condtion with: EASY DMA, request HFXO, EPOUT
+- [ChipIdea] rename Transdimension to more popular ChipIdea Highspeed,
+- [RP2040] various update/fix for hcd/dcd
+- [FT9XX] new DCD port for Bridgetek FT90x and FT93x devices
+- [DA1469X] Fix resume
+- [OHCI] Fix device array out of bound
+
+Note: legacy drivers such as st/synopsys, nxp/transdimension are still present in this release but won't recieve more update and could be removed in the future.
+
+Device Stack
+------------
+
+- [Audio] Support disabling feedback format correction (16.16 <-> 10.14 format)
+- [MSC] Add tud_msc_request_sense_cb() callback, change most default sense error to medium not present (0x02, 0x3A, 0x00)
+- [Video] Fix video_capture example fails enumeration when 8FPS
+
+Host Stack
+----------
+
+No notable changes
+
0.12.0
======
diff --git a/docs/reference/getting_started.rst b/docs/reference/getting_started.rst
index 875372c81..e328757ba 100644
--- a/docs/reference/getting_started.rst
+++ b/docs/reference/getting_started.rst
@@ -37,7 +37,7 @@ It is relatively simple to incorporate tinyusb to your (existing) project
Examples
--------
-For your convenience, TinyUSB contains a handful of examples for both host and device with/without RTOS to quickly test the functionality as well as demonstrate how API() should be used. Most examples will work on most of `the supported Boards <boards.md>`_. Firstly we need to ``git clone`` if not already
+For your convenience, TinyUSB contains a handful of examples for both host and device with/without RTOS to quickly test the functionality as well as demonstrate how API() should be used. Most examples will work on most of `the supported boards <supported.rst>`_. Firstly we need to ``git clone`` if not already
.. code-block::
@@ -50,9 +50,7 @@ Some TinyUSB examples also requires external submodule libraries in ``/lib`` suc
$ git submodule update --init lib
-In addition, MCU driver submodule is also needed to provide low-level MCU peripheral's driver. Luckily, it will be fetched if needed when you run the ``make`` to build your board.
-
-Note: some examples especially those that uses Vendor class (e.g webUSB) may requires udev permission on Linux (and/or macOS) to access usb device. It depends on your OS distro, typically copy ``/examples/device/99-tinyusb.rules`` file to /etc/udev/rules.d/ then run ``sudo udevadm control --reload-rules && sudo udevadm trigger`` is good enough.
+Some ports will also require a port-specific SDK (e.g. RP2040) or binary (e.g. Sony Spresense) to build examples. They are out of scope for tinyusb, you should download/install it first according to its manufacturer guide.
Build
^^^^^
@@ -63,6 +61,15 @@ To build example, first change directory to an example folder.
$ cd examples/device/cdc_msc
+Before building, we need to download MCU driver submodule to provide low-level MCU peripheral's driver first. Run the ``get-deps`` target in one of the example folder as follow. You only need to do this once per mcu
+
+.. code-block::
+
+ $ make BOARD=feather_nrf52840_express get-deps
+
+
+Some modules (e.g. RP2040 and ESP32s2) require the project makefiles to be customized using CMake. If necessary apply any setup steps for the platform's SDK.
+
Then compile with ``make BOARD=[board_name] all``\ , for example
.. code-block::
@@ -70,6 +77,7 @@ Then compile with ``make BOARD=[board_name] all``\ , for example
$ make BOARD=feather_nrf52840_express all
Note: ``BOARD`` can be found as directory name in ``hw/bsp``\ , either in its family/boards or directly under bsp (no family).
+Note: some examples especially those that uses Vendor class (e.g webUSB) may requires udev permission on Linux (and/or macOS) to access usb device. It depends on your OS distro, typically copy ``/examples/device/99-tinyusb.rules`` file to /etc/udev/rules.d/ then run ``sudo udevadm control --reload-rules && sudo udevadm trigger`` is good enough.
Port Selection
~~~~~~~~~~~~~~
diff --git a/docs/reference/index.rst b/docs/reference/index.rst
index fcff03590..292fb1a93 100644
--- a/docs/reference/index.rst
+++ b/docs/reference/index.rst
@@ -25,7 +25,7 @@ Supports multiple device configurations by dynamically changing usb descriptors.
- Vendor-specific class support with generic In & Out endpoints. Can be used with MS OS 2.0 compatible descriptor to load winUSB driver without INF file.
- `WebUSB <https://github.com/WICG/webusb>`__ with vendor-specific class
-If you have special need, `usbd_app_driver_get_cb()` can be used to write your own class driver without modifying the stack. Here is how RPi team add their reset interface [raspberrypi/pico-sdk#197](https://github.com/raspberrypi/pico-sdk/pull/197)
+If you have special need, `usbd_app_driver_get_cb()` can be used to write your own class driver without modifying the stack. Here is how RPi team add their reset interface `raspberrypi/pico-sdk#197 <https://github.com/raspberrypi/pico-sdk/pull/197>`__
Host Stack
==========
@@ -41,7 +41,7 @@ TinyUSB is completely thread-safe by pushing all ISR events into a central queue
- **No OS**
- **FreeRTOS**
-- **Mynewt** Due to the newt package build system, Mynewt examples are better to be on its [own repo](https://github.com/hathach/mynewt-tinyusb-example)
+- **Mynewt** Due to the newt package build system, Mynewt examples are better to be on its `own repo <https://github.com/hathach/mynewt-tinyusb-example>`__
License
=======
diff --git a/docs/reference/supported.rst b/docs/reference/supported.rst
index 1d2b4db51..1fb858a45 100644
--- a/docs/reference/supported.rst
+++ b/docs/reference/supported.rst
@@ -2,126 +2,120 @@
Supported Devices
*****************
-
Supported MCUs
==============
-.. admonition:: Warning
- :class: warning
-
- This table is a WIP! the data is not correct, tho if a device is listed, it likely works as a usb full speed device at the least.
++--------------+-----------------------+--------+------+-----------+-------------------+--------------+
+| Manufacturer | Family | Device | Host | Highspeed | Driver | Note |
++==============+=======================+========+======+===========+===================+==============+
+| Broadcom | BCM2711, BCM2837 | ✔ | | ✔ | dwc2 | |
++--------------+-----------------------+--------+------+-----------+-------------------+--------------+
+| Dialog | DA1469x | ✔ | ✖ | ✖ | da146xx | |
++--------------+-----------------------+--------+------+-----------+-------------------+--------------+
+| Espressif | ESP32 S2, S3 | ✔ | | ✖ | dwc2 or esp32sx | |
++--------------+-----------------------+--------+------+-----------+-------------------+--------------+
+| GigaDevice | GD32VF103 | ✔ | | ✖ | dwc2 | |
++--------------+-----------------------+--------+------+-----------+-------------------+--------------+
+| Infineon | XMC4500 | ✔ | | ✖ | dwc2 | |
++--------------+-----------------------+--------+------+-----------+-------------------+--------------+
+| MicroChip | SAM D11, D21 | ✔ | | ✖ | samd | |
+| +-----------------------+--------+------+-----------+-------------------+--------------+
+| | SAM D51, E5x | ✔ | | ✖ | samd | |
+| +-----------------------+--------+------+-----------+-------------------+--------------+
+| | SAM G55 | ✔ | | ✖ | samg | |
+| +-----------------------+--------+------+-----------+-------------------+--------------+
+| | SAM L21, L22 | ✔ | | ✖ | samd | |
+| +-----------------------+--------+------+-----------+-------------------+--------------+
+| | SAM E70,S70,V70,V71 | ✔ | | ✔ | samx7x | |
++--------------+-----------------------+--------+------+-----------+-------------------+--------------+
+| NordicSemi | nRF52833, nRF52840 | ✔ | ✖ | ✖ | nrf5x | |
+| +-----------------------+--------+------+-----------+-------------------+--------------+
+| | nRF5340 | ✔ | ✖ | ✖ | nrf5x | |
++--------------+-----------------------+--------+------+-----------+-------------------+--------------+
+| Nuvoton | NUC120 | ✔ | ✖ | ✖ | | |
+| +-----------------------+--------+------+-----------+-------------------+--------------+
+| | NUC121/NUC125 | ✔ | ✖ | ✖ | | |
+| +-----------------------+--------+------+-----------+-------------------+--------------+
+| | NUC126 | ✔ | ✖ | ✖ | | |
+| +-----------------------+--------+------+-----------+-------------------+--------------+
+| | NUC505 | ✔ | | ✔ | | |
++--------------+---------+-------------+--------+------+-----------+-------------------+--------------+
+| NXP | iMXRT | RT10xx | ✔ | ✔ | ✔ | ci_hs | |
+| | +-------------+--------+------+-----------+-------------------+--------------+
+| | | RT11xx | ✔ | ✔ | ✔ | ci_hs | |
+| +---------+-------------+--------+------+-----------+-------------------+--------------+
+| | Kinetis | KL25 | ✔ | ⚠ | ✖ | | |
+| | +-------------+--------+------+-----------+-------------------+--------------+
+| | | K32L2 | ✔ | | ✖ | | |
+| +---------+-------------+--------+------+-----------+-------------------+--------------+
+| | LPC | 11u, 13, 15 | ✔ | ✖ | ✖ | lpc_ip3511 | |
+| | +-------------+--------+------+-----------+-------------------+--------------+
+| | | 17, 40 | ✔ | ⚠ | ✖ | lpc17_40 | |
+| | +-------------+--------+------+-----------+-------------------+--------------+
+| | | 18, 43 | ✔ | ✔ | ✔ | ci_hs | |
+| | +-------------+--------+------+-----------+-------------------+--------------+
+| | | 51u | ✔ | ✖ | ✖ | lpc_ip3511 | |
+| | +-------------+--------+------+-----------+-------------------+--------------+
+| | | 54 | ✔ | | ✔ | lpc_ip3511 | |
+| | +-------------+--------+------+-----------+-------------------+--------------+
+| | | 55 | ✔ | | ✔ | lpc_ip3511 | |
++--------------+---------+-------------+--------+------+-----------+-------------------+--------------+
+| Raspberry Pi | RP2040 | ✔ | ✔ | ✖ | rp2040, pio_usb | |
++--------------+-----------------------+--------+------+-----------+-------------------+--------------+
+| Renesas | RX 63N, 65N, 72N | ✔ | ✔ | ✖ | usba | |
++--------------+-----------------------+--------+------+-----------+-------------------+--------------+
+| Silabs | EFM32GG12 | ✔ | | ✖ | dwc2 | |
++--------------+-----------------------+--------+------+-----------+-------------------+--------------+
+| Sony | CXD56 | ✔ | ✖ | ✔ | cxd56 | |
++--------------+-----------------------+--------+------+-----------+-------------------+--------------+
+| ST STM32 | F0 | ✔ | ✖ | ✖ | stm32_fsdev | |
+| +----+------------------+--------+------+-----------+-------------------+--------------+
+| | F1 | 102, 103 | ✔ | ✖ | ✖ | stm32_fsdev | |
+| | +------------------+--------+------+-----------+-------------------+--------------+
+| | | 105, 107 | ✔ | | ✖ | dwc2 | |
+| +----+------------------+--------+------+-----------+-------------------+--------------+
+| | F2 | ✔ | | ✔ | dwc2 | |
+| +-----------------------+--------+------+-----------+-------------------+--------------+
+| | F3 | ✔ | ✖ | ✖ | stm32_fsdev | |
+| +-----------------------+--------+------+-----------+-------------------+--------------+
+| | F4 | ✔ | | ✔ | dwc2 | |
+| +-----------------------+--------+------+-----------+-------------------+--------------+
+| | F7 | ✔ | | ✔ | dwc2 | |
+| +-----------------------+--------+------+-----------+-------------------+--------------+
+| | H7 | ✔ | | ✔ | dwc2 | |
+| +-----------------------+--------+------+-----------+-------------------+--------------+
+| | G4 | ✔ | ✖ | ✖ | stm32_fsdev | |
+| +-----------------------+--------+------+-----------+-------------------+--------------+
+| | L0, L1 | ✔ | ✖ | ✖ | stm32_fsdev | |
+| +----+------------------+--------+------+-----------+-------------------+--------------+
+| | L4 | 4x2, 4x3 | ✔ | ✖ | ✖ | stm32_fsdev | |
+| | +------------------+--------+------+-----------+-------------------+--------------+
+| | | 4x5, 4x6 | ✔ | | | dwc2 | |
+| +----+------------------+--------+------+-----------+-------------------+--------------+
+| | L4+ | ✔ | | | dwc2 | |
+| +-----------------------+--------+------+-----------+-------------------+--------------+
+| | U5 | ⚠ | | | dwc2 | |
+| +-----------------------+--------+------+-----------+-------------------+--------------+
+| | WBx5 | ✔ | | | stm32_fsdev | |
++--------------+-----------------------+--------+------+-----------+-------------------+--------------+
+| TI | MSP430 | ✔ | ✖ | ✖ | msp430x5xx | |
+| +-----------------------+--------+------+-----------+-------------------+--------------+
+| | MSP432E4 | ✔ | | ✖ | musb | |
+| +-----------------------+--------+------+-----------+-------------------+--------------+
+| | TM4C123 | ✔ | | ✖ | musb | |
++--------------+-----------------------+--------+------+-----------+-------------------+--------------+
+| ValentyUSB | eptri | ✔ | ✖ | ✖ | eptri | |
++--------------+-----------------------+--------+------+-----------+-------------------+--------------+
-+--------------+--------------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| Manufacturer | Family | Device | Host | FS | HS | Known Issues |
-+==============+====================+===================+====================+===================+===================+==============+
-| Dialog | DA1469x | |:green_square:| | |:x:| | |:green_square:| | |:x:| | |
-+--------------+--------------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| Espressif | ESP32-S2 | |:green_square:| | |:x:| | |:green_square:| | |:x:| | |
-| +--------------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | ESP32-S3 | |:green_square:| | |:x:| | |:green_square:| | |:x:| | |
-+--------------+--------------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| MicroChip | SAMD11 | |:green_square:| | |:x:| | |:green_square:| | |:x:| | |
-| +--------------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | SAMD21 | |:green_square:| | |:x:| | |:green_square:| | |:x:| | |
-| +--------------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | SAMD51 | |:green_square:| | |:x:| | |:green_square:| | |:x:| | |
-| +--------------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | SAME5x | |:green_square:| | |:x:| | |:green_square:| | |:x:| | |
-| +--------------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | SAMG55 | |:green_square:| | |:x:| | |:green_square:| | |:x:| | |
-| +--------------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | SAML21 | |:green_square:| | |:x:| | |:green_square:| | |:x:| | |
-| +--------------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | SAML22 | |:green_square:| | |:x:| | |:green_square:| | |:x:| | |
-| +--------------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | SAME70,S70,V70,V71 | |:green_square:| | |:red_square:| | |:green_square:| | |:green_square:| | |
-+--------------+--------------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| NordicSemi | nRF52833 | |:green_square:| | |:x:| | |:green_square:| | |:x:| | |
-| +--------------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | nRF52840 | |:green_square:| | |:x:| | |:green_square:| | |:x:| | |
-+--------------+--------------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| Nuvoton | NUC120 | |:green_square:| | |:x:| | |:green_square:| | |:x:| | |
-| +--------------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | NUC121/NUC125 | |:green_square:| | |:x:| | |:green_square:| | |:x:| | |
-| +--------------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | NUC126 | |:green_square:| | |:x:| | |:green_square:| | |:x:| | |
-| +--------------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | NUC505 | |:green_square:| | |:x:| | |:green_square:| | |:x:| | |
-+--------------+-------+------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| NXP | iMX | RT1011 | |:green_square:| | |:yellow_square:| | |:green_square:| | |:x:| | |
-| | +------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | | RT1015 | |:green_square:| | |:yellow_square:| | |:green_square:| | |:x:| | |
-| | +------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | | RT1021 | |:green_square:| | |:yellow_square:| | |:green_square:| | |:x:| | |
-| | +------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | | RT1052 | |:green_square:| | |:yellow_square:| | |:green_square:| | |:x:| | |
-| | +------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | | RT1062 | |:green_square:| | |:yellow_square:| | |:green_square:| | |:x:| | |
-| | +------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | | RT1064 | |:green_square:| | |:yellow_square:| | |:green_square:| | |:x:| | |
-| +-------+------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | Kinetis KL25 | |:green_square:| | |:x:| | |:green_square:| | |:x:| | |
-| +-------+------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | LPC | 11u | |:green_square:| | |:x:| | |:green_square:| | |:x:| | |
-| | +------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | | 13 | |:green_square:| | |:x:| | |:green_square:| | |:x:| | |
-| | +------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | | 15 | |:green_square:| | |:x:| | |:green_square:| | |:x:| | |
-| | +------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | | 17 | |:green_square:| | |:x:| | |:green_square:| | |:x:| | |
-| | +------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | | 18 | | |:yellow_square:| | |:green_square:| | |:x:| | |
-| | +------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | | 40 | | |:x:| | |:green_square:| | |:x:| | |
-| | +------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | | 43 | |:green_square:| | |:yellow_square:| | |:green_square:| | |:x:| | |
-| | +------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | | 51u | |:green_square:| | |:x:| | |:green_square:| | |:x:| | |
-| | +------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | | 54 | |:green_square:| | |:x:| | |:green_square:| | |:x:| | |
-| | +------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | | 55 | |:green_square:| | |:x:| | |:green_square:| | | |
-+--------------+-------+------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| Raspberry Pi | RP2040 | |:green_square:| | |:x:| | |:green_square:| | | |
-+--------------+--------------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| Renesas | RX63N | |:green_square:| | | |:green_square:| | |:x:| | |
-| +--------------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | RX65N | |:green_square:| | | |:green_square:| | |:x:| | |
-+--------------+--------------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| Silabs | EFM32GG12 | |:green_square:| | |:x:| | |:green_square:| | |:x:| | |
-+--------------+--------------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| Sony | CXD56 | |:green_square:| | |:x:| | |:green_square:| | |:x:| | |
-+--------------+-------+------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| ST | STM32 | L0 | |:green_square:| | | |:green_square:| | | |
-| | +------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | | F0 | |:green_square:| | | |:green_square:| | | |
-| | +------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | | F1 | |:green_square:| | | |:green_square:| | | |
-| | +------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | | F2 | |:green_square:| | | |:green_square:| | | |
-| | +------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | | F3 | |:green_square:| | | |:green_square:| | | |
-| | +------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | | F4 | |:green_square:| | | |:green_square:| | | |
-| | +------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | | F7 | |:green_square:| | | |:green_square:| | | |
-| | +------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| | | H7 | |:green_square:| | | |:green_square:| | |:green_square:| | |
-+--------------+-------+------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| TI | MSP430 | |:green_square:| | | |:green_square:| | | |
-+--------------+--------------------+-------------------+--------------------+-------------------+-------------------+--------------+
-| ValentyUSB | eptri | |:green_square:| | | |:green_square:| | | |
-+--------------+--------------------+-------------------+--------------------+-------------------+-------------------+--------------+
Table Legend
------------
-================= ===================
-|:x:| Not available
-|:red_square:| Not supported
-|:yellow_square:| WIP/partial support
-|:green_square:| Supported
-================= ===================
+= ===================
+✔ Supported
+⚠ WIP/partial support
+✖ Not supported
+= ===================
Supported Boards
================
@@ -134,6 +128,11 @@ The board support code is only used for self-contained examples and testing. It
The following boards are supported (sorted alphabetically):
+Broadcom
+--------
+
+- `Raspberry Pi CM4 <https://www.raspberrypi.com/products/compute-module-4>`__
+
Dialog DA146xx
--------------
@@ -143,12 +142,17 @@ Dialog DA146xx
Espressif ESP32-S2
------------------
-- Adafruit Feather ESP32-S2
+- `Adafruit Feather ESP32-S2 <https://www.adafruit.com/product/5000>`__
- `Adafruit Magtag 2.9" E-Ink WiFi Display <https://www.adafruit.com/product/4800>`__
- `Adafruit Metro ESP32-S2 <https://www.adafruit.com/product/4775>`__
- `ESP32-S2-Kaluga-1 <https://docs.espressif.com/projects/esp-idf/en/latest/esp32s2/hw-reference/esp32s2/user-guide-esp32-s2-kaluga-1-kit.html>`__
- `ESP32-S2-Saola-1 <https://docs.espressif.com/projects/esp-idf/en/latest/esp32s2/hw-reference/esp32s2/user-guide-saola-1-v1.2.html>`__
+GigaDevice
+----------
+
+- `Sipeed Longan Nano <https://longan.sipeed.com/en/>`__
+
Infineon
---------
@@ -239,11 +243,14 @@ iMX RT
- `MIMX RT1060 Evaluation Kit <https://www.nxp.com/design/development-boards/i.mx-evaluation-and-development-boards/mimxrt1060-evk-i.mx-rt1060-evaluation-kit:MIMXRT1060-EVK>`__
- `MIMX RT1064 Evaluation Kit <https://www.nxp.com/design/development-boards/i.mx-evaluation-and-development-boards/mimxrt1064-evk-i.mx-rt1064-evaluation-kit:MIMXRT1064-EVK>`__
- `Teensy 4.0 Development Board <https://www.pjrc.com/store/teensy40.html>`__
+- `Teensy 4.1 Development Board <https://www.pjrc.com/store/teensy41.html>`__
Kinetis
^^^^^^^
-- `FRDM-KL25Z <https://www.nxp.com/design/development-boards/freedom-development-boards/mcu-boards/freedom-development-platform-for-kinetis-kl14-kl15-kl24-kl25-mcus:FRDM-KL25Z>`__
+- `Freedom FRDM-KL25Z <https://www.nxp.com/design/development-boards/freedom-development-boards/mcu-boards/freedom-development-platform-for-kinetis-kl14-kl15-kl24-kl25-mcus:FRDM-KL25Z>`__
+- `Freedom FRDM-K32L2B3 <https://www.nxp.com/design/development-boards/freedom-development-boards/mcu-boards/nxp-freedom-development-platform-for-k32-l2b-mcus:FRDM-K32L2B3>`__
+- `KUIIC <https://github.com/nxf58843/kuiic>`__
LPC 11-13-15
^^^^^^^^^^^^
@@ -342,6 +349,7 @@ F4
- `STM32 F411ve Discovery <https://www.st.com/en/evaluation-tools/32f411ediscovery.html>`__
- `STM32 F412zg Discovery <https://www.st.com/en/evaluation-tools/32f412gdiscovery.html>`__
- `STM32 F412zg Nucleo <https://www.st.com/en/evaluation-tools/nucleo-f412zg.html>`__
+- `STM32 F439zi Nucleo <https://www.st.com/en/evaluation-tools/nucleo-f439zi.html>`__
F7
^^
@@ -353,6 +361,17 @@ F7
- `STM32 F767zi Nucleo <https://www.st.com/en/evaluation-tools/nucleo-f767zi.html>`__
- `STM32 F769i Discovery <https://www.st.com/en/evaluation-tools/32f769idiscovery.html>`__
+H7
+^^
+- `STM32 H743zi Nucleo <https://www.st.com/en/evaluation-tools/nucleo-h743zi.html>`__
+- `STM32 H743i Evaluation <https://www.st.com/en/evaluation-tools/stm32h743i-eval.html>`__
+- `STM32 H745i Discovery <https://www.st.com/en/evaluation-tools/stm32h745i-disco.html>`__
+- `Waveshare OpenH743I-C <https://www.waveshare.com/openh743i-c-standard.htm>`__
+
+G4
+^^
+- `STM32 G474RE Nucleo <https://www.st.com/en/evaluation-tools/nucleo-g474re.html>`__
+
L0
^^
- `STM32 L035c8 Discovery <https://www.st.com/en/evaluation-tools/32l0538discovery.html>`__
@@ -363,17 +382,16 @@ L4
- `STM32 L4P5zg Nucleo <https://www.st.com/en/evaluation-tools/nucleo-l4p5zg.html>`__
- `STM32 L4R5zi Nucleo <https://www.st.com/en/evaluation-tools/nucleo-l4r5zi.html>`__
-H7
+WB
^^
-- `STM32 H743zi Nucleo <https://www.st.com/en/evaluation-tools/nucleo-h743zi.html>`__
-- `STM32 H743i Evaluation <https://www.st.com/en/evaluation-tools/stm32h743i-eval.html>`__
-- `STM32 H745i Discovery <https://www.st.com/en/evaluation-tools/stm32h745i-disco.html>`__
-- `Waveshare OpenH743I-C <https://www.waveshare.com/openh743i-c-standard.htm>`__
+- `STM32 WB55 Nucleo <https://www.st.com/en/evaluation-tools/p-nucleo-wb55.html>`__
TI
--
- `MSP430F5529 USB LaunchPad Evaluation Kit <http://www.ti.com/tool/MSP-EXP430F5529LP>`__
+- `MSP-EXP432E401Y LaunchPad Evaluation Kit <https://www.ti.com/tool/MSP-EXP432E401Y>`__
+- `TM4C123GXL LaunchPad Evaluation Kit <https://www.ti.com/tool/EK-TM4C123GXL>`__
Tomu
----
diff --git a/docs/requirements.txt b/docs/requirements.txt
index e415ae03e..15022e147 100644
--- a/docs/requirements.txt
+++ b/docs/requirements.txt
@@ -1,4 +1,4 @@
sphinx~=3.0
furo>=2020.12.30.b24
-sphinxemoji>=0.1.8
sphinx-autodoc-typehints>=1.10
+jinja2==3.0.3