From a52aff81a8493e6fde727a24d7f0528e8dfcdf0d Mon Sep 17 00:00:00 2001 From: Darian Leung Date: Wed, 21 Dec 2022 04:27:04 +0800 Subject: [PATCH] usb_host: Add maintainer's notes (Introduction and DWC_OTG Controller) This commit adds some parts of the USB Host Stack's maintainers notes (specifically "Introduction" and "DWC_OTG Controller" chapters). --- docs/_static/usb_host/dwc-otg-operation.png | Bin 0 -> 62017 bytes .../usb_host/dwc-otg-scatter-gather.png | Bin 0 -> 42495 bytes docs/_static/usb_host/stack-overview.png | Bin 0 -> 23571 bytes docs/conf_common.py | 2 + .../en/api-reference/peripherals/usb_host.rst | 17 +- .../usb_host/usb_host_notes_dwc_otg.rst | 197 ++++++++++++++++++ .../usb_host/usb_host_notes_index.rst | 54 +++++ .../usb_host/usb_host_notes_dwc_otg.rst | 1 + .../usb_host/usb_host_notes_index.rst | 1 + 9 files changed, 270 insertions(+), 2 deletions(-) create mode 100644 docs/_static/usb_host/dwc-otg-operation.png create mode 100644 docs/_static/usb_host/dwc-otg-scatter-gather.png create mode 100644 docs/_static/usb_host/stack-overview.png create mode 100644 docs/en/api-reference/peripherals/usb_host/usb_host_notes_dwc_otg.rst create mode 100644 docs/en/api-reference/peripherals/usb_host/usb_host_notes_index.rst create mode 100644 docs/zh_CN/api-reference/peripherals/usb_host/usb_host_notes_dwc_otg.rst create mode 100644 docs/zh_CN/api-reference/peripherals/usb_host/usb_host_notes_index.rst diff --git a/docs/_static/usb_host/dwc-otg-operation.png b/docs/_static/usb_host/dwc-otg-operation.png new file mode 100644 index 0000000000000000000000000000000000000000..505335745bdf2795bb963c007c81a7a4f73cd5ad GIT binary patch literal 62017 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 literal 0 HcmV?d00001 diff --git a/docs/_static/usb_host/dwc-otg-scatter-gather.png b/docs/_static/usb_host/dwc-otg-scatter-gather.png new file mode 100644 index 0000000000000000000000000000000000000000..85c1fa5ea04f7469f4fad7bc62e20765f600e2f0 GIT binary patch literal 42495 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 z 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 w7)>S=H@3%9@Z!Y)Ls!=geM+MW&7&WikB41` (i.e., breaking changes are permitted). + +.. figure:: ../../../../_static/usb_host/stack-overview.png + :align: center + :alt: Diagram of Host Stack Layers + :figclass: align-center + +This document is split into the following sections: + +.. toctree:: + :maxdepth: 1 + + usb_host_notes_dwc_otg + +Todo: + +- USB Host Maintainers Notes (Design) +- USB Host Maintainers Notes (Architecture) +- USB Host Maintainers Notes (HAL & LL) +- USB Host Maintainers Notes (HCD) +- USB Host Maintainers Notes (USBH) +- USB Host Maintainers Notes (Hub) +- USB Host Maintainers Notes (USB Host Library) + +.. -------------------------------------------------- Introduction ----------------------------------------------------- + +Introduction +------------ + +The ESP-IDF USB Host Stack allows the {IDF_TARGET_NAME} to operate as a USB Host. Operating as a USB Host allows the {IDF_TARGET_NAME} to communicate with a wide range of USB devices. However, most USB Host Stack implementations do not run on embedded hardware (i.e., runs on PCs and smartphones), thus have comparatively more resources (i.e., memory and CPU speed). + +The implementation of the ESP-IDF USB Host Stack (henceforth referred to as the Host Stack) takes into account the embedded nature of the {IDF_TARGET_NAME} which is reflected in various aspects of the Host Stack's design. + +Features & Limitations +^^^^^^^^^^^^^^^^^^^^^^ + +**The Host Stack currently supports the following notable features:** + +- Support FS (Full Speed) and LS (Low Speed) devices +- Support all transfer types (Control, Bulk, Isochronous, and Interrupt) +- Automatically enumerates connected devices +- Allows multiple class drivers (i.e., Clients of the USB Host Library) to run simultaneously and share the same device (i.e., composite devices). + +**The Host Stack currently has the following notable limitations:** + +- No HS (High Speed) support +- No Hub support (currently only supports a single device) + diff --git a/docs/zh_CN/api-reference/peripherals/usb_host/usb_host_notes_dwc_otg.rst b/docs/zh_CN/api-reference/peripherals/usb_host/usb_host_notes_dwc_otg.rst new file mode 100644 index 0000000000..82e4134653 --- /dev/null +++ b/docs/zh_CN/api-reference/peripherals/usb_host/usb_host_notes_dwc_otg.rst @@ -0,0 +1 @@ +.. include:: ../../../../en/api-reference/peripherals/usb_host/usb_host_notes_dwc_otg.rst \ No newline at end of file diff --git a/docs/zh_CN/api-reference/peripherals/usb_host/usb_host_notes_index.rst b/docs/zh_CN/api-reference/peripherals/usb_host/usb_host_notes_index.rst new file mode 100644 index 0000000000..4423f1fe2d --- /dev/null +++ b/docs/zh_CN/api-reference/peripherals/usb_host/usb_host_notes_index.rst @@ -0,0 +1 @@ +.. include:: ../../../../en/api-reference/peripherals/usb_host/usb_host_notes_index.rst \ No newline at end of file