From 5cd50410e67fdc612c3217994bf39d5dc3f9c7c9 Mon Sep 17 00:00:00 2001 From: sakumisu <1203593632@qq.com> Date: Wed, 27 Mar 2024 19:34:24 +0800 Subject: [PATCH] update readme --- CherryUSB.svg | 3 +-- README.md | 26 ++++++++++++++++++++++---- README_zh.md | 27 +++++++++++++++++++++++---- 3 files changed, 46 insertions(+), 10 deletions(-) diff --git a/CherryUSB.svg b/CherryUSB.svg index 63bef8a8..c1ed4782 100644 --- a/CherryUSB.svg +++ b/CherryUSB.svg @@ -1,4 +1,3 @@ - -
CherryUSB
CherryUSB
Hardware
Hardware
WCH
WCH
DWC2
DWC2
EHCI
EHCI
XHCI
XHCI
MUSB
MUSB
FSDEV
FSDEV
Bouffalo
Bouffalo
HPM
HPM
Device Controller Driver (DCD)
Device Controller Driver (DCD)
Host Controller Driver (HCD)
Host Controller Driver (HCD)
OS Abstraction Layer (OSAL)
OS Abstraction Layer (OSAL)
USB Host
USB Host
USB Host Core
USB Host Core
HID
HID
MSC
MSC
CDC
CDC
UAC
UAC
UVC
UVC
RNDIS
RNDIS
VENDOR
VENDOR
HUB
HUB
USB Device
USB Device
USB Device Core
USB Device Core
HID
HID
MSC
MSC
CDC
CDC
UAC
UAC
UVC
UVC
RNDIS
RNDIS
VENDOR
VENDOR
DFU
DFU
optional
optional
required
required
Text is not SVG - cannot display
\ No newline at end of file +
CherryUSB
CherryUSB
Hardware
Hardware
BL
BL
DWC2
DWC2
OHCI
OHCI
EHCI
EHCI
XHCI
XHCI
MUSB
MUSB
FSDEV
FSDEV
HPM
HPM
Device Controller Driver (DCD)
Device Controller Driver (DCD)
Host Controller Driver (HCD)
Host Controller Driver (HCD)
OS Abstraction Layer (OSAL)
OS Abstraction Layer (OSAL)
USB Host
USB Host
USB Host Core
USB Host Core
HID
HID
MSC
MSC
CDC
CDC
UAC
UAC
UVC
UVC
RNDIS
RNDIS
VENDOR
VENDOR
HUB
HUB
USB Device
USB Device
USB Device Core
USB Device Core
HID
HID
MSC
MSC
CDC
CDC
UAC
UAC
UVC
UVC
RNDIS
RNDIS
VENDOR
VENDOR
DFU
DFU
optional
optional
required
required
Text is not SVG - cannot display
\ No newline at end of file diff --git a/README.md b/README.md index 42c07133..d61b4a29 100644 --- a/README.md +++ b/README.md @@ -103,7 +103,7 @@ CherryUSB Host Stack has the following functions: - Automatic loading of supported Class drivers - Support blocking transfers and asynchronous transfers - Support Composite Device -- Multi-level HUB support, expandable up to 7 levels +- Multi-level HUB support, expandable up to 7 levels(Testing hub with 10 ports works well) - Support Communication Device Class (CDC_ACM, CDC_ECM) - Support Human Interface Device (HID) - Support Mass Storage Class (MSC) @@ -152,6 +152,23 @@ x is affected by the following macros: #define CONFIG_USBHOST_MAX_VIDEO_CLASS 1 ``` +## USB IP Support + +Only standard and commercial USB IP are listed. + +| IP | device | host | Support status | +|:----------------:|:----------:|:--------:|:--------------:| +| OHCI(intel) | none | OHCI | × | +| EHCI(intel) | none | EHCI | √ | +| XHCI(intel) | none | XHCI | √ | +| UHCI(intel) | none | UHCI | × | +| DWC2(synopsys) | DWC2 | DWC2 | √ | +| MUSB(mentor) | MUSB | MUSB | √ | +| FOTG210(faraday)| FOTG210 | EHCI | √ | +| CDNS2(cadence) | CDNS2 | CDNS2 | √ | +| CDNS3(cadence) | CDNS3 | XHCI | × | +| DWC3(synopsys) | DWC3 | XHCI | × | + ## Documentation Tutorial Quickly start, USB basic concepts, API manual, Class basic concepts and examples, see [CherryUSB Documentation Tutorial](https://cherryusb.readthedocs.io/) @@ -173,13 +190,14 @@ USB basic concepts and how the CherryUSB Device stack is implemented, see [Cherr |ST | STM32F4/STM32H7 | dwc2 |[stm32_repo](https://github.com/CherryUSB/cherryusb_stm32)|<= latest | Long-term | |HPMicro | HPM6750 | hpm/ehci |[hpm_sdk](https://github.com/CherryUSB/hpm_sdk)|<= latest | Long-term | |Essemi | ES32F36xx | musb |[es32f369_repo](https://github.com/CherryUSB/cherryusb_es32)|<= latest | Long-term | -|AllwinnerTech | F1C100S/F1C200S | musb |[cherryusb_rtt_f1c100s](https://github.com/CherryUSB/cherryusb_rtt_f1c100s)|<= latest | the same with Essemi | |Phytium | e2000 | pusb2/xhci |[phytium_repo](https://gitee.com/phytium_embedded/phytium-free-rtos-sdk)|v0.10.2 | Long-term | +|artinchip | d12x/d13x/d21x | dwc2/ehci/ohci |[luban-lite](https://gitee.com/artinchip/luban-lite)|<= latest | Long-term | +|Espressif | esp32s2/esp32s3 | dwc2 |[esp32_repo](https://github.com/CherryUSB/cherryusb_esp32)|<= latest | the same with ST | +|AllwinnerTech | F1C100S/F1C200S | musb |[cherryusb_rtt_f1c100s](https://github.com/CherryUSB/cherryusb_rtt_f1c100s)|<= latest | the same with Essemi | |WCH | CH32V307/ch58x | ch32_usbfs/ch32_usbhs/ch58x |[wch_repo](https://github.com/CherryUSB/cherryusb_wch)|<= v0.10.2 | TBD | -|Espressif | esp32s3 | dwc2 |[esp32_repo](https://github.com/CherryUSB/cherryusb_esp32)|<= latest | the same with ST | |Nordicsemi | Nrf52840 | nrf5x |[nrf5x_repo](https://github.com/CherryUSB/cherryusb_nrf5x)|<= v0.10.2 | No more updated | |Raspberry pi | rp2040 | rp2040 |[pico-examples](https://github.com/CherryUSB/pico-examples)|<= v0.10.2 | No more updated | ## Contact -QQ group: 642693751 \ No newline at end of file +CherryUSB discord: https://discord.com/invite/wFfvrSAey8. \ No newline at end of file diff --git a/README_zh.md b/README_zh.md index b160a3dd..ca0d69ef 100644 --- a/README_zh.md +++ b/README_zh.md @@ -101,7 +101,7 @@ CherryUSB Host 协议栈当前实现以下功能: - 自动加载支持的Class 驱动 - 支持阻塞式传输和异步传输 - 支持复合设备 -- 支持多级 HUB,最高可拓展到 7 级 +- 支持多级 HUB,最高可拓展到 7 级(目前测试 1拖 10 没有问题) - 支持 Communication Device Class (CDC_ACM, CDC_ECM) - 支持 Human Interface Device (HID) - 支持 Mass Storage Class (MSC) @@ -150,6 +150,23 @@ x 受以下宏影响: #define CONFIG_USBHOST_MAX_VIDEO_CLASS 1 ``` +## USB IP 支持情况 + +仅列举标准 USB IP 和商业性 USB IP + +| IP | device | host | Support status | +|:----------------:|:----------:|:--------:|:--------------:| +| OHCI(intel) | none | OHCI | × | +| EHCI(intel) | none | EHCI | √ | +| XHCI(intel) | none | XHCI | √ | +| UHCI(intel) | none | UHCI | × | +| DWC2(synopsys) | DWC2 | DWC2 | √ | +| MUSB(mentor) | MUSB | MUSB | √ | +| FOTG210(faraday)| FOTG210 | EHCI | √ | +| CDNS2(cadence) | CDNS2 | CDNS2 | √ | +| CDNS3(cadence) | CDNS3 | XHCI | × | +| DWC3(synopsys) | DWC3 | XHCI | × | + ## 文档教程 CherryUSB 快速入门、USB 基本概念,API 手册,Class 基本概念和例程,参考 [CherryUSB Documentation Tutorial](https://cherryusb.readthedocs.io/) @@ -172,13 +189,15 @@ CherryUSB 快速入门、USB 基本概念,API 手册,Class 基本概念和 |ST | STM32F4/STM32H7 | dwc2 |[stm32_repo](https://github.com/CherryUSB/cherryusb_stm32)|<= latest | Long-term | |HPMicro | HPM6750 | hpm/ehci |[hpm_sdk](https://github.com/CherryUSB/hpm_sdk)|<= latest | Long-term | |Essemi | ES32F36xx | musb |[es32f369_repo](https://github.com/CherryUSB/cherryusb_es32)|<= latest | Long-term | -|AllwinnerTech | F1C100S/F1C200S | musb |[cherryusb_rtt_f1c100s](https://github.com/CherryUSB/cherryusb_rtt_f1c100s)|<= latest | the same with Essemi | |Phytium | e2000 | pusb2/xhci |[phytium_repo](https://gitee.com/phytium_embedded/phytium-free-rtos-sdk)|v0.10.2 | Long-term | +|artinchip | d12x/d13x/d21x | dwc2/ehci/ohci |[luban-lite](https://gitee.com/artinchip/luban-lite)|<= latest | Long-term | +|Espressif | esp32s2/esp32s3 | dwc2 |[esp32_repo](https://github.com/CherryUSB/cherryusb_esp32)|<= latest | the same with ST | +|AllwinnerTech | F1C100S/F1C200S | musb |[cherryusb_rtt_f1c100s](https://github.com/CherryUSB/cherryusb_rtt_f1c100s)|<= latest | the same with Essemi | |WCH | CH32V307/ch58x | ch32_usbfs/ch32_usbhs/ch58x |[wch_repo](https://github.com/CherryUSB/cherryusb_wch)|<= v0.10.2 | TBD | -|Espressif | esp32s3 | dwc2 |[esp32_repo](https://github.com/CherryUSB/cherryusb_esp32)|<= latest | the same with ST | |Nordicsemi | Nrf52840 | nrf5x |[nrf5x_repo](https://github.com/CherryUSB/cherryusb_nrf5x)|<= v0.10.2 | No more updated | |Raspberry pi | rp2040 | rp2040 |[pico-examples](https://github.com/CherryUSB/pico-examples)|<= v0.10.2 | No more updated | ## Contact -QQ 群:642693751 \ No newline at end of file +CherryUSB QQ 群:642693751 +CherryUSB 微信群:与我联系后邀请加入 \ No newline at end of file