summaryrefslogtreecommitdiff
path: root/docs/source
diff options
context:
space:
mode:
authorsakumisu <[email protected]>2024-09-08 00:17:55 +0800
committersakumisu <[email protected]>2024-09-08 22:12:35 +0800
commitda391c6cf97ddf78be5bed323ce186b26b9c66c3 (patch)
tree4a33ad840c7d8a69d1d12bbfdeb51f6f1152ce82 /docs/source
parentb56b67182aff93a685aa77e9b5ea7f443a3d2c9d (diff)
docs: update rst framework
Diffstat (limited to 'docs/source')
-rw-r--r--docs/source/api/api_config.rst19
-rw-r--r--docs/source/api/api_port.rst11
-rw-r--r--docs/source/demo/index.rst1
-rw-r--r--docs/source/demo/usbd_audiov1.rst2
-rw-r--r--docs/source/demo/usbd_audiov2.rst2
-rw-r--r--docs/source/demo/usbd_cdc_acm.rst2
-rw-r--r--docs/source/demo/usbd_ecm.rst2
-rw-r--r--docs/source/demo/usbd_hid.rst2
-rw-r--r--docs/source/demo/usbd_msc.rst2
-rw-r--r--docs/source/demo/usbd_rndis.rst2
-rw-r--r--docs/source/demo/usbd_video.rst2
-rw-r--r--docs/source/demo/usbd_webusb.rst2
-rw-r--r--docs/source/demo/usbd_winusb.rst2
-rw-r--r--docs/source/demo/usbh_bluetooth.rst2
-rw-r--r--docs/source/demo/usbh_hid.rst2
-rw-r--r--docs/source/demo/usbh_msc.rst2
-rw-r--r--docs/source/demo/usbh_net.rst2
-rw-r--r--docs/source/demo/usbh_serial.rst2
-rw-r--r--docs/source/demo/usbh_wifi.rst2
-rw-r--r--docs/source/index.rst47
-rw-r--r--docs/source/porting.rst24
-rw-r--r--docs/source/quick_start/demo.rst (renamed from docs/source/quick_start/index.rst)0
-rw-r--r--docs/source/quick_start/esp.rst17
-rw-r--r--docs/source/quick_start/img/env0.png (renamed from docs/source/quick_start/rt-thread/img/env0.png)bin17041 -> 17041 bytes
-rw-r--r--docs/source/quick_start/img/env1.png (renamed from docs/source/quick_start/rt-thread/img/env1.png)bin42859 -> 42859 bytes
-rw-r--r--docs/source/quick_start/img/env2.png (renamed from docs/source/quick_start/rt-thread/img/env2.png)bin66915 -> 66915 bytes
-rw-r--r--docs/source/quick_start/img/esp1.pngbin0 -> 28939 bytes
-rw-r--r--docs/source/quick_start/img/esp2.pngbin0 -> 72318 bytes
-rw-r--r--docs/source/quick_start/img/esp3.pngbin0 -> 29745 bytes
-rw-r--r--docs/source/quick_start/img/esp4.pngbin0 -> 52878 bytes
-rw-r--r--docs/source/quick_start/img/stm32_init.png (renamed from docs/source/quick_start/rt-thread/img/stm32_init.png)bin8280 -> 8280 bytes
-rw-r--r--docs/source/quick_start/img/stm32_init2.png (renamed from docs/source/quick_start/rt-thread/img/stm32_init2.png)bin47691 -> 47691 bytes
-rw-r--r--docs/source/quick_start/img/stm32cubemx0.png (renamed from docs/source/quick_start/rt-thread/img/stm32cubemx0.png)bin22591 -> 22591 bytes
-rw-r--r--docs/source/quick_start/img/stm32cubemx1.png (renamed from docs/source/quick_start/rt-thread/img/stm32cubemx1.png)bin37705 -> 37705 bytes
-rw-r--r--docs/source/quick_start/img/stm32cubemx2.png (renamed from docs/source/quick_start/rt-thread/img/stm32cubemx2.png)bin41977 -> 41977 bytes
-rw-r--r--docs/source/quick_start/img/stm32cubemx_clk.png (renamed from docs/source/quick_start/rt-thread/img/stm32cubemx_clk.png)bin16418 -> 16418 bytes
-rw-r--r--docs/source/quick_start/rtthread.rst (renamed from docs/source/quick_start/rt-thread/rtthread.rst)2
-rw-r--r--docs/source/quick_start/transplant.rst (renamed from docs/source/quick_start/other_chip.rst)0
-rw-r--r--docs/source/support/img/dwc2_hostuac.pngbin0 -> 168135 bytes
-rw-r--r--docs/source/support/index.rst1
-rw-r--r--docs/source/usbip/cdns2.rst2
-rw-r--r--docs/source/usbip/cdns3.rst2
-rw-r--r--docs/source/usbip/chipidea.rst2
-rw-r--r--docs/source/usbip/dwc2.rst2
-rw-r--r--docs/source/usbip/dwc3.rst2
-rw-r--r--docs/source/usbip/ehci.rst2
-rw-r--r--docs/source/usbip/fotg210.rst2
-rw-r--r--docs/source/usbip/musb.rst2
-rw-r--r--docs/source/usbip/ohci.rst2
-rw-r--r--docs/source/usbip/xhci.rst2
50 files changed, 133 insertions, 41 deletions
diff --git a/docs/source/api/api_config.rst b/docs/source/api/api_config.rst
index 7a9cb35d..6b2ed8eb 100644
--- a/docs/source/api/api_config.rst
+++ b/docs/source/api/api_config.rst
@@ -1,7 +1,7 @@
-USB CONFIG 宏
+USB CONFIG 说明
=========================
-通用 CONFIG 宏
+通用 CONFIG
---------------------
CONFIG_USB_PRINTF
@@ -29,13 +29,13 @@ USB_NOCACHE_RAM_SECTION
如果芯片没有 cache 功能,此宏无效。如果有,则 USB 的输入输出 buffer 必须放在 nocache ram 中,保证数据一致性。
-设备相关 CONFIG 宏
+设备协议栈 CONFIG
---------------------
CONFIG_USBDEV_REQUEST_BUFFER_LEN
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-控制传输接收和发送的 buffer 最大长度,默认是 256。
+控制传输接收和发送的 buffer 最大长度,默认是 512。
CONFIG_USBDEV_SETUP_LOG_PRINT
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -55,7 +55,7 @@ CONFIG_USBDEV_MSC_MAX_BUFSIZE
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
msc 缓存的最大长度,缓存越大,USB 的速度越高,因为介质一般多个 block 读写速度比单个 block 高很多,比如 sd 卡。
-默认 512 ,如果是 flash 需要改成 4K, 缓存的大小需要是 介质的一个 block size 的整数倍。
+默认 512 ,如果是 flash 需要改成 4K, 缓存的大小需要是介质的一个 block size 的整数倍。
CONFIG_USBDEV_MSC_MANUFACTURER_STRING
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -66,6 +66,11 @@ CONFIG_USBDEV_MSC_PRODUCT_STRING
CONFIG_USBDEV_MSC_VERSION_STRING
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+CONFIG_USBDEV_MSC_POLLING
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+将 usbd_msc_sector_read 和 usbd_msc_sector_write 操作放在 while1 中运行,裸机下使用。
+
CONFIG_USBDEV_MSC_THREAD
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -90,7 +95,7 @@ rndis 控制传输最大接收和发送的长度,根据 RNDIS options list 决
CONFIG_USBDEV_RNDIS_ETH_MAX_FRAME_SIZE
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-rndis 以太网帧的最大长度,默认 1536
+rndis 以太网帧的最大长度,默认 1580
CONFIG_USBDEV_RNDIS_VENDOR_ID
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -103,7 +108,7 @@ CONFIG_USBDEV_RNDIS_USING_LWIP
rndis 与 lwip 接口的对接
-主机相关 CONFIG 宏
+主机协议栈 CONFIG
---------------------
以下参数决定了支持的最大外部hub数量,接口数,每个接口的端点数和 altsetting 数量,更改此值会影响 ram 的大小,建议根据实际情况更改。
diff --git a/docs/source/api/api_port.rst b/docs/source/api/api_port.rst
index a11a8b6c..7821d424 100644
--- a/docs/source/api/api_port.rst
+++ b/docs/source/api/api_port.rst
@@ -142,6 +142,17 @@ usb_hc_init
- **return** 返回 0 表示正确,其他表示错误
+usb_hc_deinit
+""""""""""""""""""""""""""""""""""""
+
+``usb_hc_deinit`` 用于反初始化 usb host controller 寄存器。 **此函数不对用户开放**。
+
+.. code-block:: C
+
+ int usb_hc_deinit(void);
+
+- **return** 返回 0 表示正确,其他表示错误
+
usbh_roothub_control
""""""""""""""""""""""""""""""""""""
diff --git a/docs/source/demo/index.rst b/docs/source/demo/index.rst
deleted file mode 100644
index 30404ce4..00000000
--- a/docs/source/demo/index.rst
+++ /dev/null
@@ -1 +0,0 @@
-TODO \ No newline at end of file
diff --git a/docs/source/demo/usbd_audiov1.rst b/docs/source/demo/usbd_audiov1.rst
new file mode 100644
index 00000000..ec8f5e63
--- /dev/null
+++ b/docs/source/demo/usbd_audiov1.rst
@@ -0,0 +1,2 @@
+usbd_audiov1
+===============
diff --git a/docs/source/demo/usbd_audiov2.rst b/docs/source/demo/usbd_audiov2.rst
new file mode 100644
index 00000000..fa496160
--- /dev/null
+++ b/docs/source/demo/usbd_audiov2.rst
@@ -0,0 +1,2 @@
+usbd_audiov2
+===============
diff --git a/docs/source/demo/usbd_cdc_acm.rst b/docs/source/demo/usbd_cdc_acm.rst
new file mode 100644
index 00000000..8a6c4baf
--- /dev/null
+++ b/docs/source/demo/usbd_cdc_acm.rst
@@ -0,0 +1,2 @@
+usbd_cdc_acm
+===============
diff --git a/docs/source/demo/usbd_ecm.rst b/docs/source/demo/usbd_ecm.rst
new file mode 100644
index 00000000..c4c64ab5
--- /dev/null
+++ b/docs/source/demo/usbd_ecm.rst
@@ -0,0 +1,2 @@
+usbd_cdc_ecm
+===============
diff --git a/docs/source/demo/usbd_hid.rst b/docs/source/demo/usbd_hid.rst
new file mode 100644
index 00000000..c51e3627
--- /dev/null
+++ b/docs/source/demo/usbd_hid.rst
@@ -0,0 +1,2 @@
+usbd_hid
+===============
diff --git a/docs/source/demo/usbd_msc.rst b/docs/source/demo/usbd_msc.rst
new file mode 100644
index 00000000..eb4dd164
--- /dev/null
+++ b/docs/source/demo/usbd_msc.rst
@@ -0,0 +1,2 @@
+usbd_msc
+===============
diff --git a/docs/source/demo/usbd_rndis.rst b/docs/source/demo/usbd_rndis.rst
new file mode 100644
index 00000000..40fba402
--- /dev/null
+++ b/docs/source/demo/usbd_rndis.rst
@@ -0,0 +1,2 @@
+usbd_rndis
+===============
diff --git a/docs/source/demo/usbd_video.rst b/docs/source/demo/usbd_video.rst
new file mode 100644
index 00000000..800ca358
--- /dev/null
+++ b/docs/source/demo/usbd_video.rst
@@ -0,0 +1,2 @@
+usbd_video
+===============
diff --git a/docs/source/demo/usbd_webusb.rst b/docs/source/demo/usbd_webusb.rst
new file mode 100644
index 00000000..51e25511
--- /dev/null
+++ b/docs/source/demo/usbd_webusb.rst
@@ -0,0 +1,2 @@
+usbd_webusb
+===============
diff --git a/docs/source/demo/usbd_winusb.rst b/docs/source/demo/usbd_winusb.rst
new file mode 100644
index 00000000..bc698ea5
--- /dev/null
+++ b/docs/source/demo/usbd_winusb.rst
@@ -0,0 +1,2 @@
+usbd_winusb
+===============
diff --git a/docs/source/demo/usbh_bluetooth.rst b/docs/source/demo/usbh_bluetooth.rst
new file mode 100644
index 00000000..a93844ea
--- /dev/null
+++ b/docs/source/demo/usbh_bluetooth.rst
@@ -0,0 +1,2 @@
+usbh_bluetooth
+===============
diff --git a/docs/source/demo/usbh_hid.rst b/docs/source/demo/usbh_hid.rst
new file mode 100644
index 00000000..508c9cae
--- /dev/null
+++ b/docs/source/demo/usbh_hid.rst
@@ -0,0 +1,2 @@
+usbh_hid
+===============
diff --git a/docs/source/demo/usbh_msc.rst b/docs/source/demo/usbh_msc.rst
new file mode 100644
index 00000000..3d4b89c7
--- /dev/null
+++ b/docs/source/demo/usbh_msc.rst
@@ -0,0 +1,2 @@
+usbh_msc
+===============
diff --git a/docs/source/demo/usbh_net.rst b/docs/source/demo/usbh_net.rst
new file mode 100644
index 00000000..be61628d
--- /dev/null
+++ b/docs/source/demo/usbh_net.rst
@@ -0,0 +1,2 @@
+usbh_net
+===============
diff --git a/docs/source/demo/usbh_serial.rst b/docs/source/demo/usbh_serial.rst
new file mode 100644
index 00000000..7b914820
--- /dev/null
+++ b/docs/source/demo/usbh_serial.rst
@@ -0,0 +1,2 @@
+usbh_serial
+===============
diff --git a/docs/source/demo/usbh_wifi.rst b/docs/source/demo/usbh_wifi.rst
new file mode 100644
index 00000000..be148c7d
--- /dev/null
+++ b/docs/source/demo/usbh_wifi.rst
@@ -0,0 +1,2 @@
+usbh_wifi
+===============
diff --git a/docs/source/index.rst b/docs/source/index.rst
index a231d01a..08458da6 100644
--- a/docs/source/index.rst
+++ b/docs/source/index.rst
@@ -53,10 +53,10 @@ CherryUSB 是一个小而美的、可移植性高的、用于嵌入式系统的
:maxdepth: 1
:caption: 快速上手
- quick_start/index
- quick_start/rt-thread/rtthread
- quick_start/other_chip
- version
+ quick_start/demo
+ quick_start/transplant
+ quick_start/rtthread
+ quick_start/esp
q&a
.. toctree::
@@ -92,16 +92,39 @@ CherryUSB 是一个小而美的、可移植性高的、用于嵌入式系统的
.. toctree::
:maxdepth: 1
- :caption: 基本例程
+ :caption: 例程说明
- demo/index
+ demo/usbd_cdc_acm
+ demo/usbd_hid
+ demo/usbd_msc
+ demo/usbd_rndis
+ demo/usbd_ecm
+ demo/usbd_audiov1
+ demo/usbd_audiov2
+ demo/usbd_video
+ demo/usbd_winusb
+ demo/usbd_webusb
+ demo/usbh_serial
+ demo/usbh_hid
+ demo/usbh_msc
+ demo/usbh_net
+ demo/usbh_bluetooth
+ demo/usbh_wifi
.. toctree::
:maxdepth: 1
- :caption: Porting 说明
+ :caption: USBIP 介绍
- porting
- porting_usbip
+ usbip/ohci
+ usbip/ehci
+ usbip/xhci
+ usbip/chipidea
+ usbip/dwc2
+ usbip/musb
+ usbip/fotg210
+ usbip/cdns2
+ usbip/cdns3
+ usbip/dwc3
.. toctree::
:maxdepth: 1
@@ -111,6 +134,12 @@ CherryUSB 是一个小而美的、可移植性高的、用于嵌入式系统的
.. toctree::
:maxdepth: 1
+ :caption: 版本说明
+
+ version
+
+.. toctree::
+ :maxdepth: 1
:caption: 商业支持
support/index \ No newline at end of file
diff --git a/docs/source/porting.rst b/docs/source/porting.rst
deleted file mode 100644
index 5962e229..00000000
--- a/docs/source/porting.rst
+++ /dev/null
@@ -1,24 +0,0 @@
-Porting 如何编写
-==============================
-
-本节主要介绍没有支持的芯片如何做 porting。
-
-从机 porting
-----------------------------
-
-- 首先复制一份从 `port/template` 复制一份 `usb_dc.c` 并参与编译,保证能编译过。
-- 实现 ``usb_dc_init`` 保证能进入中断
-- 在中断中判断 reset 中断并能够正常触发 reset 中断,在 reset 中断中调用 ``usbd_event_reset_handler``,如果可能,还需要启动读取 setup 包。
-- 在中断中判断 setup 中断并能够正常触发 setup 中断,然后将读取的数据传入 ``usbd_event_ep0_setup_complete_handler``
-- 实现 ``usbd_ep_start_write`` 并能够触发发送完成中断
-- 实现 ``usbd_ep_start_read`` 并能够触发接收完成中断
-- 分包处理
-
-主机 porting
-----------------------------
-
-- 首先复制一份从 `port/template` 复制一份 `usb_hc.c` 并参与编译,保证能编译过。
-- 实现 ``usb_hc_init`` 保证能进入中断
-- 能够进入插拔中断,比如 ``connect`` 和 ``disconnect``,并调用 ``usbh_roothub_thread_wakeup`` 能够唤醒 hub 线程
-- 实现 ``usbh_roothub_control`` 并根据第三个条件,能够完成 ``usbh_hub_events`` 中 ``usbh_enumerate`` 之前的流程
-- 实现 ``usbh_submit_urb`` \ No newline at end of file
diff --git a/docs/source/quick_start/index.rst b/docs/source/quick_start/demo.rst
index a108143f..a108143f 100644
--- a/docs/source/quick_start/index.rst
+++ b/docs/source/quick_start/demo.rst
diff --git a/docs/source/quick_start/esp.rst b/docs/source/quick_start/esp.rst
new file mode 100644
index 00000000..29639e05
--- /dev/null
+++ b/docs/source/quick_start/esp.rst
@@ -0,0 +1,17 @@
+基于 ESP-Registry 开发指南
+===========================
+
+ESP-Registry 可以参考官方文档,推荐使用 vscode + esp-idf 的开发环境。
+
+- ctrl + shift + p 选择 ESP-IDF 欢迎界面,然后选择 Component mananger
+
+.. figure:: img/esp1.png
+
+- 找到 cherryusb 并安装
+
+.. figure:: img/esp2.png
+
+- 打开 menuconfig,并打开 cherryusb 的配置,根据实际情况选择主机或者从机模式
+
+.. figure:: img/esp3.png
+.. figure:: img/esp4.png \ No newline at end of file
diff --git a/docs/source/quick_start/rt-thread/img/env0.png b/docs/source/quick_start/img/env0.png
index c0a8b03f..c0a8b03f 100644
--- a/docs/source/quick_start/rt-thread/img/env0.png
+++ b/docs/source/quick_start/img/env0.png
Binary files differ
diff --git a/docs/source/quick_start/rt-thread/img/env1.png b/docs/source/quick_start/img/env1.png
index 2a68e052..2a68e052 100644
--- a/docs/source/quick_start/rt-thread/img/env1.png
+++ b/docs/source/quick_start/img/env1.png
Binary files differ
diff --git a/docs/source/quick_start/rt-thread/img/env2.png b/docs/source/quick_start/img/env2.png
index ee37101a..ee37101a 100644
--- a/docs/source/quick_start/rt-thread/img/env2.png
+++ b/docs/source/quick_start/img/env2.png
Binary files differ
diff --git a/docs/source/quick_start/img/esp1.png b/docs/source/quick_start/img/esp1.png
new file mode 100644
index 00000000..1f059e71
--- /dev/null
+++ b/docs/source/quick_start/img/esp1.png
Binary files differ
diff --git a/docs/source/quick_start/img/esp2.png b/docs/source/quick_start/img/esp2.png
new file mode 100644
index 00000000..fd20e9ce
--- /dev/null
+++ b/docs/source/quick_start/img/esp2.png
Binary files differ
diff --git a/docs/source/quick_start/img/esp3.png b/docs/source/quick_start/img/esp3.png
new file mode 100644
index 00000000..82a7162f
--- /dev/null
+++ b/docs/source/quick_start/img/esp3.png
Binary files differ
diff --git a/docs/source/quick_start/img/esp4.png b/docs/source/quick_start/img/esp4.png
new file mode 100644
index 00000000..ffb2882a
--- /dev/null
+++ b/docs/source/quick_start/img/esp4.png
Binary files differ
diff --git a/docs/source/quick_start/rt-thread/img/stm32_init.png b/docs/source/quick_start/img/stm32_init.png
index 3ce57201..3ce57201 100644
--- a/docs/source/quick_start/rt-thread/img/stm32_init.png
+++ b/docs/source/quick_start/img/stm32_init.png
Binary files differ
diff --git a/docs/source/quick_start/rt-thread/img/stm32_init2.png b/docs/source/quick_start/img/stm32_init2.png
index eae3c026..eae3c026 100644
--- a/docs/source/quick_start/rt-thread/img/stm32_init2.png
+++ b/docs/source/quick_start/img/stm32_init2.png
Binary files differ
diff --git a/docs/source/quick_start/rt-thread/img/stm32cubemx0.png b/docs/source/quick_start/img/stm32cubemx0.png
index 1ea33e04..1ea33e04 100644
--- a/docs/source/quick_start/rt-thread/img/stm32cubemx0.png
+++ b/docs/source/quick_start/img/stm32cubemx0.png
Binary files differ
diff --git a/docs/source/quick_start/rt-thread/img/stm32cubemx1.png b/docs/source/quick_start/img/stm32cubemx1.png
index a6ca5078..a6ca5078 100644
--- a/docs/source/quick_start/rt-thread/img/stm32cubemx1.png
+++ b/docs/source/quick_start/img/stm32cubemx1.png
Binary files differ
diff --git a/docs/source/quick_start/rt-thread/img/stm32cubemx2.png b/docs/source/quick_start/img/stm32cubemx2.png
index e29254bb..e29254bb 100644
--- a/docs/source/quick_start/rt-thread/img/stm32cubemx2.png
+++ b/docs/source/quick_start/img/stm32cubemx2.png
Binary files differ
diff --git a/docs/source/quick_start/rt-thread/img/stm32cubemx_clk.png b/docs/source/quick_start/img/stm32cubemx_clk.png
index 41a7aae8..41a7aae8 100644
--- a/docs/source/quick_start/rt-thread/img/stm32cubemx_clk.png
+++ b/docs/source/quick_start/img/stm32cubemx_clk.png
Binary files differ
diff --git a/docs/source/quick_start/rt-thread/rtthread.rst b/docs/source/quick_start/rtthread.rst
index a9303715..062e6eab 100644
--- a/docs/source/quick_start/rt-thread/rtthread.rst
+++ b/docs/source/quick_start/rtthread.rst
@@ -1,6 +1,8 @@
基于 RT-Thread 软件包开发指南
===============================
+.. note:: CherryUSB 已经加入 RT-Thread 主线,可以选择使用主线版本,配置方式相同。
+
本节主要介绍使用 RT-Thread 提供的软件包管理器来配置工程,以 env 作为演示。本节操作不同芯片都一样,后续不再重复讲解。打开 env 以后使用 menuconfig 进入包管理器,并在如图所示路径中选择 CherryUSB。
.. figure:: img/env0.png
diff --git a/docs/source/quick_start/other_chip.rst b/docs/source/quick_start/transplant.rst
index 0f8e4b92..0f8e4b92 100644
--- a/docs/source/quick_start/other_chip.rst
+++ b/docs/source/quick_start/transplant.rst
diff --git a/docs/source/support/img/dwc2_hostuac.png b/docs/source/support/img/dwc2_hostuac.png
new file mode 100644
index 00000000..6050f531
--- /dev/null
+++ b/docs/source/support/img/dwc2_hostuac.png
Binary files differ
diff --git a/docs/source/support/index.rst b/docs/source/support/index.rst
index da1d94c5..bee33756 100644
--- a/docs/source/support/index.rst
+++ b/docs/source/support/index.rst
@@ -12,6 +12,7 @@
.. figure:: img/dwc2_hostuvc1.png
.. figure:: img/dwc2_hostuvc2.png
+.. figure:: img/dwc2_hostuac.png
- 主机 UVC & UAC 类 MUSB IP 中 ISO 驱动和 UAC/UVC 框架, MUSB 需要为 mentor 公司制定的标准 IP
diff --git a/docs/source/usbip/cdns2.rst b/docs/source/usbip/cdns2.rst
new file mode 100644
index 00000000..88afc8d2
--- /dev/null
+++ b/docs/source/usbip/cdns2.rst
@@ -0,0 +1,2 @@
+CDNS2
+===============
diff --git a/docs/source/usbip/cdns3.rst b/docs/source/usbip/cdns3.rst
new file mode 100644
index 00000000..c2132d1a
--- /dev/null
+++ b/docs/source/usbip/cdns3.rst
@@ -0,0 +1,2 @@
+CDNS3
+===============
diff --git a/docs/source/usbip/chipidea.rst b/docs/source/usbip/chipidea.rst
new file mode 100644
index 00000000..57c46ec0
--- /dev/null
+++ b/docs/source/usbip/chipidea.rst
@@ -0,0 +1,2 @@
+CHIPIDEA
+================= \ No newline at end of file
diff --git a/docs/source/usbip/dwc2.rst b/docs/source/usbip/dwc2.rst
new file mode 100644
index 00000000..6c5a8c08
--- /dev/null
+++ b/docs/source/usbip/dwc2.rst
@@ -0,0 +1,2 @@
+DWC2
+================= \ No newline at end of file
diff --git a/docs/source/usbip/dwc3.rst b/docs/source/usbip/dwc3.rst
new file mode 100644
index 00000000..746bbee6
--- /dev/null
+++ b/docs/source/usbip/dwc3.rst
@@ -0,0 +1,2 @@
+DWC3
+===============
diff --git a/docs/source/usbip/ehci.rst b/docs/source/usbip/ehci.rst
new file mode 100644
index 00000000..637bbe69
--- /dev/null
+++ b/docs/source/usbip/ehci.rst
@@ -0,0 +1,2 @@
+EHCI
+================= \ No newline at end of file
diff --git a/docs/source/usbip/fotg210.rst b/docs/source/usbip/fotg210.rst
new file mode 100644
index 00000000..f6e566a8
--- /dev/null
+++ b/docs/source/usbip/fotg210.rst
@@ -0,0 +1,2 @@
+FOTG210
+===============
diff --git a/docs/source/usbip/musb.rst b/docs/source/usbip/musb.rst
new file mode 100644
index 00000000..597876c0
--- /dev/null
+++ b/docs/source/usbip/musb.rst
@@ -0,0 +1,2 @@
+MUSB
+================= \ No newline at end of file
diff --git a/docs/source/usbip/ohci.rst b/docs/source/usbip/ohci.rst
new file mode 100644
index 00000000..8467233b
--- /dev/null
+++ b/docs/source/usbip/ohci.rst
@@ -0,0 +1,2 @@
+OHCI
+================= \ No newline at end of file
diff --git a/docs/source/usbip/xhci.rst b/docs/source/usbip/xhci.rst
new file mode 100644
index 00000000..0c16c2e2
--- /dev/null
+++ b/docs/source/usbip/xhci.rst
@@ -0,0 +1,2 @@
+XHCI
+================= \ No newline at end of file