[PATCH v6 5/8] docs/zh_CN: Add dwc3.rst translation
#UpdatedFrom:Kefan Bai <baikefan@leap-io-kernel.com>
Date:
Message-ID:<3c577322de70e143a6e57d60be7199f3b50d8a78.1778415392.git.baikefan@leap-io-kernel.com>
Patch:v6 · 5/8
Language:zh_CN
Patch-ID:696084bea16204cd0f861ad88dbb8adfd63ad6e5
Files:
Documentation/translations/zh_CN/usb/dwc3.rstDocumentation/translations/zh_CN/usb/index.rstLinks:lore message ↗ · raw mail ↗
Patch content 2 changed files
Translate .../usb/dwc3.rst into Chinese Update the translation through commit ecefae6db042("docs: usb: rename files to .rst and add them to drivers-api") Reviewed-by: Yanteng Si <siyanteng@cqsoftware.com.cn>Signed-off-by: Kefan Bai <baikefan@leap-io-kernel.com>--- Documentation/translations/zh_CN/usb/dwc3.rst | 60 +++++++++++++++++++ .../translations/zh_CN/usb/index.rst | 2 +- 2 files changed, 61 insertions(+), 1 deletion(-) create mode 100644 Documentation/translations/zh_CN/usb/dwc3.rst diff --git a/Documentation/translations/zh_CN/usb/dwc3.rst b/Documentation/translations/zh_CN/usb/dwc3.rstnew file mode 100644index 000000000000..92108ff8cc80--- /dev/null+++ b/Documentation/translations/zh_CN/usb/dwc3.rst@@ -0,0 +1,60 @@+.. SPDX-License-Identifier: GPL-2.0+.. include:: ../disclaimer-zh_CN.rst++:Original: Documentation/usb/dwc3.rst+:翻译:++ 白钶凡 Kefan Bai <baikefan@leap-io-kernel.com>++:校译:++++===========+DWC3 驱动+===========+++待办+~~~~~~++阅读时如果想顺手认领点任务,可以从下面挑一项 :)++- 将中断处理程序改为每个端点各自使用线程化 IRQ++ 事实证明,有些 DWC3 命令大约需要 ``~1 ms`` 才能完成。+ 当前代码会一直自旋等待命令完成,这种设计并不好。++ 实现思路:++ - DWC 核心实现了一个按端点对中断进行解复用的 IRQ 控制器。中断号在+ 探测(``probe``)阶段分配,并归属于该设备。如果硬件通过 ``MSI`` 为每个端点+ 提供独立中断,那么这个“虚拟”IRQ 控制器就可以被真实的端点中断取代。++ - 在调用 ``usb_ep_enable()`` 时请求并分配中断资源,+ 在调用 ``usb_ep_disable()`` 时释放中断资源。+ 最坏情况下需要 32 个中断,最少是 ``ep0/1`` 的两个中断。+ - ``dwc3_send_gadget_ep_cmd()`` 将在 ``wait_for_completion_timeout()``+ 中休眠,直到命令完成。+ - 中断处理程序分为以下几个部分:++ - 设备级主中断处理程序+ 遍历每个事件,并对其调用 ``generic_handle_irq()``。+ 从 ``generic_handle_irq()`` 返回后,确认事件计数器,使中断最终消失。++ - 设备级线程化处理程序+ 无。++ - 端点中断的主处理程序+ 读取事件并尽量处理它。凡是需要睡眠的操作都交给线程处理。+ 事件保存在每个端点的数据结构中。+ 还要注意,一旦把某项工作交给线程处理,就不要再在主处理程序里处理它,+ 以免出现优先级反转之类的问题。++ - 端点中断的线程化处理程序+ 处理剩余的端点工作,这些工作可能会睡眠,例如等待命令完成。++ 延迟:++ 不应增加延迟,因为中断线程具有较高优先级,会在普通用户态任务之前运行+ (除非用户更改了调度优先级)。diff --git a/Documentation/translations/zh_CN/usb/index.rst b/Documentation/translations/zh_CN/usb/index.rstindex 70fe33fc37d9..6d669c41d1cd 100644--- a/Documentation/translations/zh_CN/usb/index.rst+++ b/Documentation/translations/zh_CN/usb/index.rst@@ -20,10 +20,10 @@ USB 支持 acm authorization chipidea+ dwc3 Todolist: -* dwc3 * ehci * usbmon * functionfs--2.54.0