Merge pull request #2767 from hathach/minor-update

Minor update
This commit is contained in:
Ha Thach 2024-08-19 21:42:14 +07:00 committed by GitHub
commit 5f519819ba
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
25 changed files with 208 additions and 173 deletions

View File

@ -66,7 +66,7 @@ jobs:
build-system: 'cmake' build-system: 'cmake'
toolchain: ${{ matrix.toolchain }} toolchain: ${{ matrix.toolchain }}
build-args: ${{ toJSON(fromJSON(needs.set-matrix.outputs.json)[matrix.toolchain].family) }} build-args: ${{ toJSON(fromJSON(needs.set-matrix.outputs.json)[matrix.toolchain].family) }}
one-per-family: ${{ github.event_name != 'pull_request' }} one-per-family: ${{ github.event_name == 'push' }}
# --------------------------------------- # ---------------------------------------
# Build CMake arm-gcc # Build CMake arm-gcc
@ -103,12 +103,13 @@ jobs:
build-system: 'make' build-system: 'make'
toolchain: ${{ matrix.toolchain }} toolchain: ${{ matrix.toolchain }}
build-args: ${{ toJSON(fromJSON(needs.set-matrix.outputs.json)[matrix.toolchain].family) }} build-args: ${{ toJSON(fromJSON(needs.set-matrix.outputs.json)[matrix.toolchain].family) }}
one-per-family: ${{ github.event_name != 'pull_request' }} one-per-family: ${{ github.event_name == 'push' }}
# --------------------------------------- # ---------------------------------------
# Build Make on Windows/MacOS # Build Make on Windows/MacOS
# --------------------------------------- # ---------------------------------------
make-os: make-os:
if: github.event_name == 'pull_request'
uses: ./.github/workflows/build_util.yml uses: ./.github/workflows/build_util.yml
strategy: strategy:
fail-fast: false fail-fast: false

View File

@ -109,7 +109,9 @@ Following CPUs are supported, check out `Supported Devices`_ for comprehensive l
+==============+============================================================+ +==============+============================================================+
| Allwinner | F1C100s/F1C200s | | Allwinner | F1C100s/F1C200s |
+--------------+------------------------------------------------------------+ +--------------+------------------------------------------------------------+
| Analog | MAX3421E (usb host shield) | | Analog | max32: 650, 666, 690. max78002 |
| | |
| | max3421e (host) |
+--------------+------------------------------------------------------------+ +--------------+------------------------------------------------------------+
| Brigetek | FT90x | | Brigetek | FT90x |
+--------------+------------------------------------------------------------+ +--------------+------------------------------------------------------------+

View File

@ -5,147 +5,142 @@ Supported Devices
Supported MCUs Supported MCUs
============== ==============
+--------------+-----------------------+--------+------+-----------+-------------------+--------------+ +--------------+-----------------------------+--------+------+-----------+-------------------+-------------------+
| Manufacturer | Family | Device | Host | Highspeed | Driver | Note | | Manufacturer | Family | Device | Host | Highspeed | Driver | Note |
+==============+=======================+========+======+===========+===================+==============+ +==============+=============================+========+======+===========+===================+===================+
| Allwinner | F1C100s/F1C200s | ✔ | | ✔ | sunxi | musb variant | | Allwinner | F1C100s/F1C200s | ✔ | | ✔ | sunxi | musb variant |
+--------------+-----------------------+--------+------+-----------+-------------------+--------------+ +--------------+-----------------------------+--------+------+-----------+-------------------+-------------------+
| Analog | MAX3421E | | ✔ | ✖ | max3421 | via SPI | | Analog | MAX3421E | | ✔ | ✖ | max3421 | via SPI |
+--------------+-----------------------+--------+------+-----------+-------------------+--------------+ | +-----------------------------+--------+------+-----------+-------------------+-------------------+
| Brigetek | FT90x | ✔ | | ✔ | ft9xx | | | | MAX32 650, 666, 690, | ✔ | | ✔ | musb | 1-dir ep |
+--------------+-----------------------+--------+------+-----------+-------------------+--------------+ | | MAX78002 | | | | | |
| Broadcom | BCM2711, BCM2837 | ✔ | | ✔ | dwc2 | | +--------------+-----------------------------+--------+------+-----------+-------------------+-------------------+
+--------------+-----------------------+--------+------+-----------+-------------------+--------------+ | Brigetek | FT90x | ✔ | | ✔ | ft9xx | 1-dir ep |
| Dialog | DA1469x | ✔ | ✖ | ✖ | da146xx | | +--------------+-----------------------------+--------+------+-----------+-------------------+-------------------+
+--------------+-----------------------+--------+------+-----------+-------------------+--------------+ | Broadcom | BCM2711, BCM2837 | ✔ | | ✔ | dwc2 | |
| Espressif | ESP32 S2, S3 | ✔ | | ✖ | dwc2 or esp32sx | | +--------------+-----------------------------+--------+------+-----------+-------------------+-------------------+
+--------------+-----------------------+--------+------+-----------+-------------------+--------------+ | Dialog | DA1469x | ✔ | ✖ | ✖ | da146xx | |
| GigaDevice | GD32VF103 | ✔ | | ✖ | dwc2 | | +--------------+-----------------------------+--------+------+-----------+-------------------+-------------------+
+--------------+-----------------------+--------+------+-----------+-------------------+--------------+ | Espressif | ESP32 S2, S3 | ✔ | | ✖ | dwc2 or esp32sx | |
| Infineon | XMC4500 | ✔ | | ✖ | dwc2 | | +--------------+-----------------------------+--------+------+-----------+-------------------+-------------------+
+--------------+-----+-----------------+--------+------+-----------+-------------------+--------------+ | GigaDevice | GD32VF103 | ✔ | | ✖ | dwc2 | |
| MicroChip | SAM | D11, D21 | ✔ | | ✖ | samd | | +--------------+-----------------------------+--------+------+-----------+-------------------+-------------------+
| | +-----------------+--------+------+-----------+-------------------+--------------+ | Infineon | XMC4500 | ✔ | | ✖ | dwc2 | |
| | | D51, E5x | ✔ | | ✖ | samd | | +--------------+-----+-----------------------+--------+------+-----------+-------------------+-------------------+
| | +-----------------+--------+------+-----------+-------------------+--------------+ | MicroChip | SAM | D11, D21, L21, L22 | ✔ | | ✖ | samd | |
| | | G55 | ✔ | | ✖ | samg | | | | +-----------------------+--------+------+-----------+-------------------+-------------------+
| | +-----------------+--------+------+-----------+-------------------+--------------+ | | | D51, E5x | ✔ | | ✖ | samd | |
| | | L21, L22 | ✔ | | ✖ | samd | | | | +-----------------------+--------+------+-----------+-------------------+-------------------+
| | +-----------------+--------+------+-----------+-------------------+--------------+ | | | G55 | ✔ | | ✖ | samg | 1-dir ep |
| | | E70,S70,V70,V71 | ✔ | | ✔ | samx7x | | | | +-----------------------+--------+------+-----------+-------------------+-------------------+
| +-----+-----------------+--------+------+-----------+-------------------+--------------+ | | | E70,S70,V70,V71 | ✔ | | ✔ | samx7x | 1-dir ep |
| | PIC | 24 | ✔ | | | pic | ci_fs variant| | +-----+-----------------------+--------+------+-----------+-------------------+-------------------+
| | +-----------------+--------+------+-----------+-------------------+--------------+ | | PIC | 24 | ✔ | | | pic | ci_fs variant |
| | | 32 mm, mk, mx | ✔ | | | pic | ci_fs variant| | | +-----------------------+--------+------+-----------+-------------------+-------------------+
| | +-----------------+--------+------+-----------+-------------------+--------------+ | | | 32 mm, mk, mx | ✔ | | | pic | ci_fs variant |
| | | dsPIC33 | ✔ | | | pic | ci_fs variant| | | +-----------------------+--------+------+-----------+-------------------+-------------------+
| | +-----------------+--------+------+-----------+-------------------+--------------+ | | | dsPIC33 | ✔ | | | pic | ci_fs variant |
| | | 32mz | ✔ | | | pic32mz | musb variant | | | +-----------------------+--------+------+-----------+-------------------+-------------------+
+--------------+-----+-----------------+--------+------+-----------+-------------------+--------------+ | | | 32mz | ✔ | | | pic32mz | musb variant |
| Mind Montion | mm32 | ✔ | | ✖ | mm32f327x_otg | ci_fs variant| +--------------+-----+-----------------------+--------+------+-----------+-------------------+-------------------+
+--------------+-----+-----------------+--------+------+-----------+-------------------+--------------+ | Mind Montion | mm32 | ✔ | | ✖ | mm32f327x_otg | ci_fs variant |
| NordicSemi | nRF52833, nRF52840 | ✔ | ✖ | ✖ | nrf5x | | +--------------+-----+-----------------------+--------+------+-----------+-------------------+-------------------+
| +-----------------------+--------+------+-----------+-------------------+--------------+ | NordicSemi | nRF 52833, 52840, 5340 | ✔ | ✖ | ✖ | nrf5x | only ep8 is ISO |
| | nRF5340 | ✔ | ✖ | ✖ | nrf5x | | +--------------+-----------------------------+--------+------+-----------+-------------------+-------------------+
+--------------+-----------------------+--------+------+-----------+-------------------+--------------+ | Nuvoton | NUC120 | ✔ | ✖ | ✖ | nuc120 | |
| Nuvoton | NUC120 | ✔ | ✖ | ✖ | nuc120 | | | +-----------------------------+--------+------+-----------+-------------------+-------------------+
| +-----------------------+--------+------+-----------+-------------------+--------------+ | | NUC121/NUC125 | ✔ | ✖ | ✖ | nuc121 | |
| | NUC121/NUC125 | ✔ | ✖ | ✖ | nuc121 | | | +-----------------------------+--------+------+-----------+-------------------+-------------------+
| +-----------------------+--------+------+-----------+-------------------+--------------+ | | NUC126 | ✔ | ✖ | ✖ | nuc121 | |
| | NUC126 | ✔ | ✖ | ✖ | nuc121 | | | +-----------------------------+--------+------+-----------+-------------------+-------------------+
| +-----------------------+--------+------+-----------+-------------------+--------------+ | | NUC505 | ✔ | | ✔ | nuc505 | |
| | NUC505 | ✔ | | ✔ | nuc505 | | +--------------+---------+-------------------+--------+------+-----------+-------------------+-------------------+
+--------------+---------+-------------+--------+------+-----------+-------------------+--------------+ | NXP | iMXRT | RT 10xx, 11xx | ✔ | ✔ | ✔ | ci_hs | |
| NXP | iMXRT | RT10xx | ✔ | ✔ | ✔ | ci_hs | | | +---------+-------------------+--------+------+-----------+-------------------+-------------------+
| | +-------------+--------+------+-----------+-------------------+--------------+ | | Kinetis | KL | ✔ | ⚠ | ✖ | ci_fs, khci | |
| | | RT11xx | ✔ | ✔ | ✔ | ci_hs | | | | +-------------------+--------+------+-----------+-------------------+-------------------+
| +---------+-------------+--------+------+-----------+-------------------+--------------+ | | | K32L2 | ✔ | | ✖ | khci | ci_fs variant |
| | Kinetis | KL | ✔ | ⚠ | ✖ | ci_fs, khci | | | +---------+-------------------+--------+------+-----------+-------------------+-------------------+
| | +-------------+--------+------+-----------+-------------------+--------------+ | | LPC | 11u, 13, 15 | ✔ | ✖ | ✖ | lpc_ip3511 | |
| | | K32L2 | ✔ | | ✖ | khci | ci_fs variant| | | +-------------------+--------+------+-----------+-------------------+-------------------+
| +---------+-------------+--------+------+-----------+-------------------+--------------+ | | | 17, 40 | ✔ | ⚠ | ✖ | lpc17_40 | |
| | LPC | 11u, 13, 15 | ✔ | ✖ | ✖ | lpc_ip3511 | | | | +-------------------+--------+------+-----------+-------------------+-------------------+
| | +-------------+--------+------+-----------+-------------------+--------------+ | | | 18, 43 | ✔ | ✔ | ✔ | ci_hs | |
| | | 17, 40 | ✔ | ⚠ | ✖ | lpc17_40 | | | | +-------------------+--------+------+-----------+-------------------+-------------------+
| | +-------------+--------+------+-----------+-------------------+--------------+ | | | 51u | ✔ | ✖ | ✖ | lpc_ip3511 | |
| | | 18, 43 | ✔ | ✔ | ✔ | ci_hs | | | | +-------------------+--------+------+-----------+-------------------+-------------------+
| | +-------------+--------+------+-----------+-------------------+--------------+ | | | 54, 55 | ✔ | | ✔ | lpc_ip3511 | |
| | | 51u | ✔ | ✖ | ✖ | lpc_ip3511 | | | +---------+-------------------+--------+------+-----------+-------------------+-------------------+
| | +-------------+--------+------+-----------+-------------------+--------------+ | | MCX | N9 | ✔ | | ✔ | ci_fs, ci_hs | |
| | | 54 | ✔ | | ✔ | lpc_ip3511 | | +--------------+---------+-------------------+--------+------+-----------+-------------------+-------------------+
| | +-------------+--------+------+-----------+-------------------+--------------+ | Raspberry Pi | RP2040, RP2350 | ✔ | ✔ | ✖ | rp2040, pio_usb | |
| | | 55 | ✔ | | ✔ | lpc_ip3511 | | +--------------+-----+-----------------------+--------+------+-----------+-------------------+-------------------+
| +---------+-------------+--------+------+-----------+-------------------+--------------+ | Renesas | RX | 63N, 65N, 72N | ✔ | ✔ | ✖ | rusb2 | |
| | MCX | N9 | ✔ | | ✔ | ci_fs, ci_hs | | | +-----+-----------------------+--------+------+-----------+-------------------+-------------------+
+--------------+---------+-------------+--------+------+-----------+-------------------+--------------+ | | RA | 4M1, 4M3, 6M1 | ✔ | ✔ | ✖ | rusb2 | |
| Raspberry Pi | RP2040 | ✔ | ✔ | ✖ | rp2040, pio_usb | | | | +-----------------------+--------+------+-----------+-------------------+-------------------+
+--------------+-----+-----------------+--------+------+-----------+-------------------+--------------+ | | | 6M5 | ✔ | ✔ | ✔ | rusb2 | |
| Renesas | RX | 63N, 65N, 72N | ✔ | ✔ | ✖ | rusb2 | | +--------------+-----+-----------------------+--------+------+-----------+-------------------+-------------------+
| +-----+-----------------+--------+------+-----------+-------------------+--------------+ | Silabs | EFM32GG12 | ✔ | | ✖ | dwc2 | |
| | RA | 4M1, 4M3, 6M1 | ✔ | ✔ | ✖ | rusb2 | | +--------------+-----------------------------+--------+------+-----------+-------------------+-------------------+
| | +-----------------+--------+------+-----------+-------------------+--------------+ | Sony | CXD56 | ✔ | ✖ | ✔ | cxd56 | |
| | | 6M5 | ✔ | ✔ | ✔ | rusb2 | | +--------------+-----------------------------+--------+------+-----------+-------------------+-------------------+
+--------------+-----+-----------------+--------+------+-----------+-------------------+--------------+ | ST STM32 | F0 | ✔ | ✖ | ✖ | stm32_fsdev | |
| Silabs | EFM32GG12 | ✔ | | ✖ | dwc2 | | | +----+------------------------+--------+------+-----------+-------------------+-------------------+
+--------------+-----------------------+--------+------+-----------+-------------------+--------------+ | | F1 | 102, 103 | ✔ | ✖ | ✖ | stm32_fsdev | |
| Sony | CXD56 | ✔ | ✖ | ✔ | cxd56 | | | | +------------------------+--------+------+-----------+-------------------+-------------------+
+--------------+-----------------------+--------+------+-----------+-------------------+--------------+ | | | 105, 107 | ✔ | | ✖ | dwc2 | |
| ST STM32 | F0 | ✔ | ✖ | ✖ | stm32_fsdev | | | +----+------------------------+--------+------+-----------+-------------------+-------------------+
| +----+------------------+--------+------+-----------+-------------------+--------------+ | | F2 | ✔ | | ✔ | dwc2 | |
| | F1 | 102, 103 | ✔ | ✖ | ✖ | stm32_fsdev | | | +-----------------------------+--------+------+-----------+-------------------+-------------------+
| | +------------------+--------+------+-----------+-------------------+--------------+ | | F3 | ✔ | ✖ | ✖ | stm32_fsdev | |
| | | 105, 107 | ✔ | | ✖ | dwc2 | | | +-----------------------------+--------+------+-----------+-------------------+-------------------+
| +----+------------------+--------+------+-----------+-------------------+--------------+ | | F4 | ✔ | | ✔ | dwc2 | |
| | F2 | ✔ | | ✔ | dwc2 | | | +-----------------------------+--------+------+-----------+-------------------+-------------------+
| +-----------------------+--------+------+-----------+-------------------+--------------+ | | F7 | ✔ | | ✔ | dwc2 | |
| | F3 | ✔ | ✖ | ✖ | stm32_fsdev | | | +-----------------------------+--------+------+-----------+-------------------+-------------------+
| +-----------------------+--------+------+-----------+-------------------+--------------+ | | G0 | ✔ | | ✖ | stm32_fsdev | |
| | F4 | ✔ | | ✔ | dwc2 | | | +-----------------------------+--------+------+-----------+-------------------+-------------------+
| +-----------------------+--------+------+-----------+-------------------+--------------+ | | G4 | ✔ | ✖ | ✖ | stm32_fsdev | |
| | F7 | ✔ | | ✔ | dwc2 | | | +-----------------------------+--------+------+-----------+-------------------+-------------------+
| +-----------------------+--------+------+-----------+-------------------+--------------+ | | H5 | ✔ | | ✖ | stm32_fsdev | |
| | G0 | ✔ | | ✖ | stm32_fsdev | | | +-----------------------------+--------+------+-----------+-------------------+-------------------+
| +-----------------------+--------+------+-----------+-------------------+--------------+ | | H7 | ✔ | | ✔ | dwc2 | |
| | G4 | ✔ | ✖ | ✖ | stm32_fsdev | | | +-----------------------------+--------+------+-----------+-------------------+-------------------+
| +-----------------------+--------+------+-----------+-------------------+--------------+ | | L0 | ✔ | ✖ | ✖ | stm32_fsdev | |
| | H5 | ✔ | | ✖ | stm32_fsdev | | | +-----------------------------+--------+------+-----------+-------------------+-------------------+
| +-----------------------+--------+------+-----------+-------------------+--------------+ | | L1 | ✔ | ✖ | ✖ | stm32_fsdev | |
| | H7 | ✔ | | ✔ | dwc2 | | | +----+------------------------+--------+------+-----------+-------------------+-------------------+
| +-----------------------+--------+------+-----------+-------------------+--------------+ | | L4 | 4x2, 4x3 | ✔ | ✖ | ✖ | stm32_fsdev | |
| | L0 | ✔ | ✖ | ✖ | stm32_fsdev | | | | +------------------------+--------+------+-----------+-------------------+-------------------+
| +-----------------------+--------+------+-----------+-------------------+--------------+ | | | 4x5, 4x6 | ✔ | | ✖ | dwc2 | |
| | L1 | ✔ | ✖ | ✖ | stm32_fsdev | | | +----+------------------------+--------+------+-----------+-------------------+-------------------+
| +----+------------------+--------+------+-----------+-------------------+--------------+ | | L4+ | ✔ | | ✖ | dwc2 | |
| | L4 | 4x2, 4x3 | ✔ | ✖ | ✖ | stm32_fsdev | | | +-----------------------------+--------+------+-----------+-------------------+-------------------+
| | +------------------+--------+------+-----------+-------------------+--------------+ | | L5 | ✔ | ✖ | ✖ | stm32_fsdev | |
| | | 4x5, 4x6 | ✔ | | ✖ | dwc2 | | | +----+------------------------+--------+------+-----------+-------------------+-------------------+
| +----+------------------+--------+------+-----------+-------------------+--------------+ | | U5 | 535, 545 | ✔ | | ✖ | stm32_fsdev | |
| | L4+ | ✔ | | ✖ | dwc2 | | | | +------------------------+--------+------+-----------+-------------------+-------------------+
| +-----------------------+--------+------+-----------+-------------------+--------------+ | | | 575, 585 | ✔ | | ✖ | dwc2 | |
| | L5 | ✔ | ✖ | ✖ | stm32_fsdev | | | | +------------------------+--------+------+-----------+-------------------+-------------------+
| +----+------------------+--------+------+-----------+-------------------+--------------+ | | | 59x,5Ax,5Fx,5Gx | ✔ | | ✔ | dwc2 | |
| | U5 | 535, 545 | ✔ | | ✖ | stm32_fsdev | | | +----+------------------------+--------+------+-----------+-------------------+-------------------+
| | +------------------+--------+------+-----------+-------------------+--------------+ | | WBx5 | ✔ | ✖ | ✖ | stm32_fsdev | |
| | | 575, 585 | ✔ | | ✖ | dwc2 | | +--------------+-----------------------------+--------+------+-----------+-------------------+-------------------+
| | +------------------+--------+------+-----------+-------------------+--------------+ | TI | MSP430 | ✔ | ✖ | ✖ | msp430x5xx | |
| | | 59x,5Ax,5Fx,5Gx | ✔ | | ✔ | dwc2 | | | +-----------------------------+--------+------+-----------+-------------------+-------------------+
| +----+------------------+--------+------+-----------+-------------------+--------------+ | | MSP432E4 | ✔ | | ✖ | musb | |
| | WBx5 | ✔ | ✖ | ✖ | stm32_fsdev | | | +-----------------------------+--------+------+-----------+-------------------+-------------------+
+--------------+-----------------------+--------+------+-----------+-------------------+--------------+ | | TM4C123 | ✔ | | ✖ | musb | |
| TI | MSP430 | ✔ | ✖ | ✖ | msp430x5xx | | +--------------+-----------------------------+--------+------+-----------+-------------------+-------------------+
| +-----------------------+--------+------+-----------+-------------------+--------------+ | ValentyUSB | eptri | ✔ | ✖ | ✖ | eptri | |
| | MSP432E4 | ✔ | | ✖ | musb | | +--------------+-----------------------------+--------+------+-----------+-------------------+-------------------+
| +-----------------------+--------+------+-----------+-------------------+--------------+ | WCH | CH32F20x | ✔ | | ✔ | ch32f205 | |
| | TM4C123 | ✔ | | ✖ | musb | | | +-----------------------------+--------+------+-----------+-------------------+-------------------+
+--------------+-----------------------+--------+------+-----------+-------------------+--------------+ | | CH32V20x | ✔ | | ✖ | ch32v20x | |
| ValentyUSB | eptri | ✔ | ✖ | ✖ | eptri | | | +-----------------------------+--------+------+-----------+-------------------+-------------------+
+--------------+-----------------------+--------+------+-----------+-------------------+--------------+ | | CH32V307 | ✔ | | ✔ | ch32v307 | |
| WCH | CH32F20x | ✔ | | ✔ | ch32f205 | | +--------------+-----------------------------+--------+------+-----------+-------------------+-------------------+
| +-----------------------+--------+------+-----------+-------------------+--------------+
| | CH32V20x | ✔ | | ✖ | ch32v20x | |
| +-----------------------+--------+------+-----------+-------------------+--------------+
| | CH32V307 | ✔ | | ✔ | ch32v307 | |
+--------------+-----------------------+--------+------+-----------+-------------------+--------------+
Table Legend Table Legend

View File

@ -109,7 +109,7 @@ enum
#define EPNUM_CDC_1_OUT 0x05 #define EPNUM_CDC_1_OUT 0x05
#define EPNUM_CDC_1_IN 0x84 #define EPNUM_CDC_1_IN 0x84
#elif defined(TUD_ENDPOINT_EXCLUSIVE_NUMBER) #elif defined(TUD_ENDPOINT_ONE_DIRECTION_ONLY)
// MCUs that don't support a same endpoint number with different direction IN and OUT defined in tusb_mcu.h // MCUs that don't support a same endpoint number with different direction IN and OUT defined in tusb_mcu.h
// e.g EP1 OUT & EP1 IN cannot exist together // e.g EP1 OUT & EP1 IN cannot exist together
#define EPNUM_CDC_0_NOTIF 0x81 #define EPNUM_CDC_0_NOTIF 0x81

View File

@ -103,7 +103,7 @@ enum {
#define EPNUM_MSC_OUT 0x05 #define EPNUM_MSC_OUT 0x05
#define EPNUM_MSC_IN 0x84 #define EPNUM_MSC_IN 0x84
#elif defined(TUD_ENDPOINT_EXCLUSIVE_NUMBER) #elif defined(TUD_ENDPOINT_ONE_DIRECTION_ONLY)
// MCUs that don't support a same endpoint number with different direction IN and OUT defined in tusb_mcu.h // MCUs that don't support a same endpoint number with different direction IN and OUT defined in tusb_mcu.h
// e.g EP1 OUT & EP1 IN cannot exist together // e.g EP1 OUT & EP1 IN cannot exist together
#define EPNUM_CDC_NOTIF 0x81 #define EPNUM_CDC_NOTIF 0x81

View File

@ -103,7 +103,7 @@ enum {
#define EPNUM_MSC_OUT 0x05 #define EPNUM_MSC_OUT 0x05
#define EPNUM_MSC_IN 0x84 #define EPNUM_MSC_IN 0x84
#elif defined(TUD_ENDPOINT_EXCLUSIVE_NUMBER) #elif defined(TUD_ENDPOINT_ONE_DIRECTION_ONLY)
// MCUs that don't support a same endpoint number with different direction IN and OUT defined in tusb_mcu.h // MCUs that don't support a same endpoint number with different direction IN and OUT defined in tusb_mcu.h
// e.g EP1 OUT & EP1 IN cannot exist together // e.g EP1 OUT & EP1 IN cannot exist together
#define EPNUM_CDC_NOTIF 0x81 #define EPNUM_CDC_NOTIF 0x81

View File

@ -97,7 +97,7 @@ uint8_t const * tud_descriptor_device_cb(void)
#define EPNUM_CDC_OUT 0x02 #define EPNUM_CDC_OUT 0x02
#define EPNUM_CDC_IN 0x82 #define EPNUM_CDC_IN 0x82
#elif defined(TUD_ENDPOINT_EXCLUSIVE_NUMBER) #elif defined(TUD_ENDPOINT_ONE_DIRECTION_ONLY)
// MCUs that don't support a same endpoint number with different direction IN and OUT defined in tusb_mcu.h // MCUs that don't support a same endpoint number with different direction IN and OUT defined in tusb_mcu.h
// e.g EP1 OUT & EP1 IN cannot exist together // e.g EP1 OUT & EP1 IN cannot exist together
#define EPNUM_AUDIO_IN 0x01 #define EPNUM_AUDIO_IN 0x01

View File

@ -132,7 +132,7 @@ enum
#define EPNUM_1_MSC_OUT 0x02 #define EPNUM_1_MSC_OUT 0x02
#define EPNUM_1_MSC_IN 0x82 #define EPNUM_1_MSC_IN 0x82
#elif defined(TUD_ENDPOINT_EXCLUSIVE_NUMBER) #elif defined(TUD_ENDPOINT_ONE_DIRECTION_ONLY)
// MCUs that don't support a same endpoint number with different direction IN and OUT defined in tusb_mcu.h // MCUs that don't support a same endpoint number with different direction IN and OUT defined in tusb_mcu.h
// e.g EP1 OUT & EP1 IN cannot exist together // e.g EP1 OUT & EP1 IN cannot exist together
#define EPNUM_0_CDC_NOTIF 0x81 #define EPNUM_0_CDC_NOTIF 0x81

View File

@ -93,7 +93,7 @@ enum
#define EPNUM_MIDI_OUT 0x02 #define EPNUM_MIDI_OUT 0x02
#define EPNUM_MIDI_IN 0x81 #define EPNUM_MIDI_IN 0x81
#elif defined(TUD_ENDPOINT_EXCLUSIVE_NUMBER) #elif defined(TUD_ENDPOINT_ONE_DIRECTION_ONLY)
// MCUs that don't support a same endpoint number with different direction IN and OUT defined in tusb_mcu.h // MCUs that don't support a same endpoint number with different direction IN and OUT defined in tusb_mcu.h
// e.g EP1 OUT & EP1 IN cannot exist together // e.g EP1 OUT & EP1 IN cannot exist together
#define EPNUM_MIDI_OUT 0x01 #define EPNUM_MIDI_OUT 0x01

View File

@ -91,7 +91,7 @@ enum
#define EPNUM_MSC_OUT 0x02 #define EPNUM_MSC_OUT 0x02
#define EPNUM_MSC_IN 0x81 #define EPNUM_MSC_IN 0x81
#elif defined(TUD_ENDPOINT_EXCLUSIVE_NUMBER) #elif defined(TUD_ENDPOINT_ONE_DIRECTION_ONLY)
// MCUs that don't support a same endpoint number with different direction IN and OUT defined in tusb_mcu.h // MCUs that don't support a same endpoint number with different direction IN and OUT defined in tusb_mcu.h
// e.g EP1 OUT & EP1 IN cannot exist together // e.g EP1 OUT & EP1 IN cannot exist together
#define EPNUM_MSC_OUT 0x01 #define EPNUM_MSC_OUT 0x01

View File

@ -120,7 +120,7 @@ uint8_t const * tud_descriptor_device_cb(void)
#define EPNUM_NET_OUT 0x02 #define EPNUM_NET_OUT 0x02
#define EPNUM_NET_IN 0x81 #define EPNUM_NET_IN 0x81
#elif defined(TUD_ENDPOINT_EXCLUSIVE_NUMBER) #elif defined(TUD_ENDPOINT_ONE_DIRECTION_ONLY)
// MCUs that don't support a same endpoint number with different direction IN and OUT defined in tusb_mcu.h // MCUs that don't support a same endpoint number with different direction IN and OUT defined in tusb_mcu.h
// e.g EP1 OUT & EP1 IN cannot exist together // e.g EP1 OUT & EP1 IN cannot exist together
#define EPNUM_NET_NOTIF 0x81 #define EPNUM_NET_NOTIF 0x81

View File

@ -97,7 +97,7 @@ uint8_t const * tud_descriptor_device_cb(void)
#define EPNUM_AUDIO_OUT 0x08 #define EPNUM_AUDIO_OUT 0x08
#define EPNUM_AUDIO_INT 0x01 #define EPNUM_AUDIO_INT 0x01
#elif defined(TUD_ENDPOINT_EXCLUSIVE_NUMBER) #elif defined(TUD_ENDPOINT_ONE_DIRECTION_ONLY)
// MCUs that don't support a same endpoint number with different direction IN and OUT defined in tusb_mcu.h // MCUs that don't support a same endpoint number with different direction IN and OUT defined in tusb_mcu.h
// e.g EP1 OUT & EP1 IN cannot exist together // e.g EP1 OUT & EP1 IN cannot exist together
#define EPNUM_AUDIO_IN 0x01 #define EPNUM_AUDIO_IN 0x01

View File

@ -131,7 +131,7 @@ uint8_t const * tud_hid_descriptor_report_cb(uint8_t itf)
#define EPNUM_AUDIO_OUT 0x08 #define EPNUM_AUDIO_OUT 0x08
#define EPNUM_DEBUG 0x01 #define EPNUM_DEBUG 0x01
#elif defined(TUD_ENDPOINT_EXCLUSIVE_NUMBER) #elif defined(TUD_ENDPOINT_ONE_DIRECTION_ONLY)
// MCUs that don't support a same endpoint number with different direction IN and OUT defined in tusb_mcu.h // MCUs that don't support a same endpoint number with different direction IN and OUT defined in tusb_mcu.h
// e.g EP1 OUT & EP1 IN cannot exist together // e.g EP1 OUT & EP1 IN cannot exist together
#define EPNUM_AUDIO_FB 0x01 #define EPNUM_AUDIO_FB 0x01

View File

@ -106,7 +106,7 @@
#define CFG_TUD_VIDEO_STREAMING_EP_BUFSIZE 256 #define CFG_TUD_VIDEO_STREAMING_EP_BUFSIZE 256
// use bulk endpoint for streaming interface // use bulk endpoint for streaming interface
#define CFG_TUD_VIDEO_STREAMING_BULK 1 #define CFG_TUD_VIDEO_STREAMING_BULK 0
//#define CFG_EXAMPLE_VIDEO_READONLY //#define CFG_EXAMPLE_VIDEO_READONLY
//#define CFG_EXAMPLE_VIDEO_DISABLE_MJPEG //#define CFG_EXAMPLE_VIDEO_DISABLE_MJPEG

View File

@ -118,6 +118,8 @@ enum {
#elif TU_CHECK_MCU(OPT_MCU_NRF5X) #elif TU_CHECK_MCU(OPT_MCU_NRF5X)
// nRF5x ISO can only be endpoint 8 // nRF5x ISO can only be endpoint 8
#define EPNUM_VIDEO_IN (CFG_TUD_VIDEO_STREAMING_BULK ? 0x81 : 0x88) #define EPNUM_VIDEO_IN (CFG_TUD_VIDEO_STREAMING_BULK ? 0x81 : 0x88)
#elif TU_CHECK_MCU(OPT_MCU_MAX32650, OPT_MCU_MAX32666, OPT_MCU_MAX32690, OPT_MCU_MAX78002)
#define EPNUM_VIDEO_IN 0x81
#else #else
#define EPNUM_VIDEO_IN 0x81 #define EPNUM_VIDEO_IN 0x81
#endif #endif

View File

@ -104,7 +104,7 @@ enum
#define EPNUM_VENDOR_OUT 0x05 #define EPNUM_VENDOR_OUT 0x05
#define EPNUM_VENDOR_IN 0x84 #define EPNUM_VENDOR_IN 0x84
#elif defined(TUD_ENDPOINT_EXCLUSIVE_NUMBER) #elif defined(TUD_ENDPOINT_ONE_DIRECTION_ONLY)
// MCUs that don't support a same endpoint number with different direction IN and OUT defined in tusb_mcu.h // MCUs that don't support a same endpoint number with different direction IN and OUT defined in tusb_mcu.h
// e.g EP1 OUT & EP1 IN cannot exist together // e.g EP1 OUT & EP1 IN cannot exist together
#define EPNUM_CDC_NOTIF 0x81 #define EPNUM_CDC_NOTIF 0x81

View File

@ -138,21 +138,21 @@
#elif TU_CHECK_MCU(OPT_MCU_SAMG) #elif TU_CHECK_MCU(OPT_MCU_SAMG)
#define TUP_DCD_ENDPOINT_MAX 6 #define TUP_DCD_ENDPOINT_MAX 6
#define TUD_ENDPOINT_EXCLUSIVE_NUMBER #define TUD_ENDPOINT_ONE_DIRECTION_ONLY
#elif TU_CHECK_MCU(OPT_MCU_SAMX7X) #elif TU_CHECK_MCU(OPT_MCU_SAMX7X)
#define TUP_DCD_ENDPOINT_MAX 10 #define TUP_DCD_ENDPOINT_MAX 10
#define TUP_RHPORT_HIGHSPEED 1 #define TUP_RHPORT_HIGHSPEED 1
#define TUD_ENDPOINT_EXCLUSIVE_NUMBER #define TUD_ENDPOINT_ONE_DIRECTION_ONLY
#elif TU_CHECK_MCU(OPT_MCU_PIC32MZ) #elif TU_CHECK_MCU(OPT_MCU_PIC32MZ)
#define TUP_DCD_ENDPOINT_MAX 8 #define TUP_DCD_ENDPOINT_MAX 8
#define TUD_ENDPOINT_EXCLUSIVE_NUMBER #define TUD_ENDPOINT_ONE_DIRECTION_ONLY
#elif TU_CHECK_MCU(OPT_MCU_PIC32MX, OPT_MCU_PIC32MM, OPT_MCU_PIC32MK) || \ #elif TU_CHECK_MCU(OPT_MCU_PIC32MX, OPT_MCU_PIC32MM, OPT_MCU_PIC32MK) || \
TU_CHECK_MCU(OPT_MCU_PIC24, OPT_MCU_DSPIC33) TU_CHECK_MCU(OPT_MCU_PIC24, OPT_MCU_DSPIC33)
#define TUP_DCD_ENDPOINT_MAX 16 #define TUP_DCD_ENDPOINT_MAX 16
#define TUD_ENDPOINT_EXCLUSIVE_NUMBER #define TUD_ENDPOINT_ONE_DIRECTION_ONLY
//--------------------------------------------------------------------+ //--------------------------------------------------------------------+
// ST // ST
@ -299,7 +299,7 @@
#elif TU_CHECK_MCU(OPT_MCU_CXD56) #elif TU_CHECK_MCU(OPT_MCU_CXD56)
#define TUP_DCD_ENDPOINT_MAX 7 #define TUP_DCD_ENDPOINT_MAX 7
#define TUP_RHPORT_HIGHSPEED 1 #define TUP_RHPORT_HIGHSPEED 1
#define TUD_ENDPOINT_EXCLUSIVE_NUMBER #define TUD_ENDPOINT_ONE_DIRECTION_ONLY
//--------------------------------------------------------------------+ //--------------------------------------------------------------------+
// TI // TI
@ -400,12 +400,12 @@
#elif TU_CHECK_MCU(OPT_MCU_FT90X) #elif TU_CHECK_MCU(OPT_MCU_FT90X)
#define TUP_DCD_ENDPOINT_MAX 8 #define TUP_DCD_ENDPOINT_MAX 8
#define TUP_RHPORT_HIGHSPEED 1 #define TUP_RHPORT_HIGHSPEED 1
#define TUD_ENDPOINT_EXCLUSIVE_NUMBER #define TUD_ENDPOINT_ONE_DIRECTION_ONLY
#elif TU_CHECK_MCU(OPT_MCU_FT93X) #elif TU_CHECK_MCU(OPT_MCU_FT93X)
#define TUP_DCD_ENDPOINT_MAX 16 #define TUP_DCD_ENDPOINT_MAX 16
#define TUP_RHPORT_HIGHSPEED 1 #define TUP_RHPORT_HIGHSPEED 1
#define TUD_ENDPOINT_EXCLUSIVE_NUMBER #define TUD_ENDPOINT_ONE_DIRECTION_ONLY
//--------------------------------------------------------------------+ //--------------------------------------------------------------------+
// Allwinner // Allwinner
@ -480,7 +480,7 @@
#define TUP_USBIP_MUSB_ADI #define TUP_USBIP_MUSB_ADI
#define TUP_DCD_ENDPOINT_MAX 12 #define TUP_DCD_ENDPOINT_MAX 12
#define TUP_RHPORT_HIGHSPEED 1 #define TUP_RHPORT_HIGHSPEED 1
#define TUD_ENDPOINT_EXCLUSIVE_NUMBER #define TUD_ENDPOINT_ONE_DIRECTION_ONLY
#endif #endif

View File

@ -181,7 +181,7 @@ bool dcd_edpt_iso_activate(uint8_t rhport, tusb_desc_endpoint_t const * desc_ep)
#else #else
// Close an endpoint. // Close an endpoint.
void dcd_edpt_close (uint8_t rhport, uint8_t ep_addr) TU_ATTR_WEAK; void dcd_edpt_close(uint8_t rhport, uint8_t ep_addr);
#endif #endif

View File

@ -277,6 +277,11 @@ bool dcd_edpt_open (uint8_t rhport, tusb_desc_endpoint_t const * ep_desc)
return true; return true;
} }
void dcd_edpt_close(uint8_t rhport, uint8_t ep_addr) {
(void) rhport; (void) ep_addr;
// TODO implement dcd_edpt_close()
}
void dcd_edpt_close_all (uint8_t rhport) void dcd_edpt_close_all (uint8_t rhport)
{ {
(void) rhport; (void) rhport;

View File

@ -335,6 +335,11 @@ bool dcd_edpt_open(uint8_t rhport, tusb_desc_endpoint_t const * p_endpoint_desc)
return true; return true;
} }
void dcd_edpt_close(uint8_t rhport, uint8_t ep_addr) {
(void) rhport; (void) ep_addr;
// TODO implement dcd_edpt_close()
}
void dcd_edpt_close_all (uint8_t rhport) void dcd_edpt_close_all (uint8_t rhport)
{ {
(void) rhport; (void) rhport;

View File

@ -102,6 +102,22 @@ bool dcd_edpt_open (uint8_t rhport, tusb_desc_endpoint_t const * ep_desc)
return false; return false;
} }
// Allocate packet buffer used by ISO endpoints
// Some MCU need manual packet buffer allocation, we allocate the largest size to avoid clustering
bool dcd_edpt_iso_alloc(uint8_t rhport, uint8_t ep_addr, uint16_t largest_packet_size) {
(void) rhport;
(void) ep_addr;
(void) largest_packet_size;
return false;
}
// Configure and enable an ISO endpoint according to descriptor
bool dcd_edpt_iso_activate(uint8_t rhport, tusb_desc_endpoint_t const * desc_ep) {
(void) rhport;
(void) desc_ep;
return false;
}
void dcd_edpt_close_all (uint8_t rhport) void dcd_edpt_close_all (uint8_t rhport)
{ {
(void) rhport; (void) rhport;

View File

@ -332,6 +332,11 @@ bool dcd_edpt_open (uint8_t rhport, tusb_desc_endpoint_t const * desc_edpt)
return true; return true;
} }
void dcd_edpt_close(uint8_t rhport, uint8_t ep_addr) {
(void) rhport; (void) ep_addr;
// TODO implement dcd_edpt_close()
}
void dcd_edpt_close_all (uint8_t rhport) void dcd_edpt_close_all (uint8_t rhport)
{ {
(void) rhport; (void) rhport;

View File

@ -436,6 +436,11 @@ bool dcd_edpt_open(uint8_t rhport, tusb_desc_endpoint_t const * p_endpoint_desc)
return true; return true;
} }
void dcd_edpt_close(uint8_t rhport, uint8_t ep_addr) {
(void) rhport; (void) ep_addr;
// TODO implement dcd_edpt_close()
}
void dcd_edpt_close_all (uint8_t rhport) void dcd_edpt_close_all (uint8_t rhport)
{ {
(void) rhport; (void) rhport;

View File

@ -436,11 +436,11 @@ def main():
else: else:
config_boards = [e for e in config['boards'] if e['name'] in boards] config_boards = [e for e in config['boards'] if e['name'] in boards]
err_count_list = 0 err_count_list = []
with Pool(processes=os.cpu_count()) as pool: with Pool(processes=os.cpu_count()) as pool:
err_count_list = pool.map(test_board, config_boards) err_count_list = pool.map(test_board, config_boards)
err_count = sum(err_count_list)
sys.exit(sum(err_count_list)) sys.exit(err_count)
if __name__ == '__main__': if __name__ == '__main__':

View File

@ -61,12 +61,11 @@
], ],
"boards-skip": [ "boards-skip": [
{ {
"name": "metro_m7_1011", "name": "mimxrt1015_evk",
"uid": "9CE8715DD71137363E00005002004200", "uid": "DC28F865D2111D228D00B0543A70463C",
"flasher": "jlink", "flasher": "jlink",
"flasher_sn": "000611000000", "flasher_sn": "000726284213",
"flasher_args": "-device MIMXRT1011xxx5A", "flasher_args": "-device MIMXRT1015DAF5A"
"comment": "not running reliably in bulk with other boards, probably power, flashing etc .."
}, },
{ {
"name": "nanoch32v203", "name": "nanoch32v203",