Deploying to gh-pages from @ cherry-embedded/CherryUSB@56ea832f57 🚀

This commit is contained in:
sakumisu
2025-05-12 13:33:07 +00:00
parent d2c1d0841c
commit 813b46235d
3 changed files with 86 additions and 48 deletions

View File

@@ -1,7 +1,7 @@
版本说明
==============================
如果没有特别情况,请使用最新版本.详细版本更新说明请参考 https://github.com/cherry-embedded/CherryUSB/releases。
如果没有特别情况,请使用最新版本。下面只列举比较重要的更新,详细更新说明请参考 https://github.com/cherry-embedded/CherryUSB/releases。
<= v0.10.2 初代版本
----------------------
@@ -19,27 +19,27 @@ v1.1.0 过度版本
----------------------
- **主从机支持多 USB IP 且要相同 IP**
- host 增加 bluetooth, ch340, ftdi, cp210x, asix 驱动
- **host 增加 bluetooth, ch340, ftdi, cp210x, asix 驱动**
- device msc 支持多 lun并且 CONFIG_USBDEV_MSC_BLOCK_SIZE 修改为 CONFIG_USBDEV_MSC_MAX_BUFSIZE
v1.2.0
----------------------
- host 增加 rtl8152cdc ncm 驱动
- **host 增加 rtl8152cdc ncm 驱动**
- host 增加 timer 去控制中断传输hub修改为 timer 控制)
- porting 增加 espaic 主机驱动
- 优化 DWC2 优化代码方便阅读,并增加一些 FIFO 配置宏给用户(因为 dwc2 fifo 大小有限,以及配置方式很多,所以导出给用户配置,方便合理控制性能)
- **优化 DWC2 优化代码方便阅读,并增加一些 FIFO 配置宏给用户(因为 dwc2 fifo 大小有限,以及配置方式很多,所以导出给用户配置,方便合理控制性能)**
- 优化 ehci 驱动qtd不再使用动态申请绑定 qh方便代码运行的更快
v1.3.0
----------------------
- device 支持多种速度描述符自动选择功能(开启 CONFIG_USBDEV_ADVANCE_DESC
- **device 支持多种速度描述符自动选择功能(开启 CONFIG_USBDEV_ADVANCE_DESC**
- device core 代码统一 ep0 buffer 的使用,用于美化代码
- host 增加 pl2303 驱动;采用 id table 来支持多个 vidpid增加 user_data 给用户使用
- host 网络 class 驱动增加 tx、rx buffer 的宏,增加 LWIP_TCPIP_CORE_LOCKING_INPUT 的使用,以便实现数据的零拷贝
- porting 导入 bouffaloaicstm32f723 device驱动
- porting 中主机部分 urb->timeout 清0 的处理有点问题(大数据量传输时会出现 no pipe alloc 异常,主要原因是刚启动传输就完成了,还没判断 timeout就被修改为0了没有进入 take sem 流程),此版本已修复
- **porting 中主机部分 urb->timeout 清0 的处理有点问题(大数据量传输时会出现 no pipe alloc 异常,主要原因是刚启动传输就完成了,还没判断 timeout就被修改为0了没有进入 take sem 流程),此版本已修复**
- ehci enable iaad in usbh_kill_urbread ehci hcor offset from hccr caplengthenable ohci for ehci
- 适配 nuttx os
@@ -47,30 +47,30 @@ v1.3.1
----------------------
- bugfixaudiovideocdc ecm 相关宏结构体api
- host hub 枚举线程删除,使用 psc 线程,枚举方式更改为队列模式,取消同时枚举多个设备的功能
- **host hub 枚举线程删除,使用 psc 线程,枚举方式更改为队列模式,取消同时枚举多个设备的功能**
- host 扫描驱动信息和 instance 采用递归模式,删除链表扫描
- host 网络 class 驱动优化,支持接收 16K 以上的数据cdc ecm 不支持),采用高级 memcpy api
- device 协议栈中打印删除(中断中不再做打印)
- **device 协议栈中打印删除(中断中不再做打印)**
- porting 中 musb fifo配置修改为从 fifo table 获取(此代码参考 linux适配 es32sunxibeken
v1.4.0
----------------------
- device 开始支持 remote wakeup 功能, hid request(0x21),完善 GET STATUS 请求(此版本开始可以通过 USB3CV 测试)
- **device 开始支持 remote wakeup 功能, hid request(0x21),完善 GET STATUS 请求(此版本开始可以通过 USB3CV 测试)**
- device 增加 UF2, ADB, WEBUSB 功能; msc 增加裸机的读写 polling 功能,将读写放在 while1中执行 usbd_cdc 改名为 usbd_cdc_acm
- host 增加 usbwifi(bl616), xbox驱动重构 USB3.0 枚举逻辑
- host 中 cdc_acm,hid,msc,serial 传输共享 buffer如果存在多个相同的设备会有问题修改为单独的 buffer
- porting 重构 XHCI/PUSB2 驱动不开源ehci 和 ohci 文件改名;增加 remote wakeup api
- host 增加 usbwifi(bl616), xbox驱动 **重构 USB3.0 枚举逻辑**
- **host 中 cdc_acm,hid,msc,serial 传输共享 buffer如果存在多个相同的设备会有问题修改为单独的 buffer**
- **porting 重构 XHCI/PUSB2 驱动,不开源**ehci 和 ohci 文件改名;增加 remote wakeup api
- esp 组件库支持
- chipidea 从机驱动支持nxp mcx 系列主从支持
- **chipidea 从机驱动支持nxp mcx 系列主从支持**
- threadx os 支持
v1.4.1
----------------------
- 修复device 模式下使用多个 altsetting 时重复关闭端点问题,改成 altsetting 为0时关闭
- 重构主机 audio 解析描述符
- 增加 kinetis usbip
- **修复device 模式下使用多个 altsetting 时重复关闭端点问题,改成 altsetting 为0时关闭**
- **重构主机 audio 解析描述符**
- **增加 kinetis usbip**
- 主机下 usbh_msc_get_maxlun 请求部分 U 盘不支持,不做错误返回
- 主机下 usbh_hid_get_report_descriptor 导出给用户调用
- 静态代码检查
@@ -80,23 +80,41 @@ v1.4.2
----------------------
- device 实现 USB_REQUEST_GET_INTERFACE 请求
- device video 传输重构,增加双缓冲功能
- device ecm 重构
- **device video 传输重构,增加双缓冲功能**
- device ecm 重构,保持和 rndis 类似 API
- device 和 host audio 音量配置功能重构
- host 增加 AOA 驱动
- 兼容 C++ 相关修改
- fsdev 不支持 ISO 和 DWC2 高速 hub 不支持全速低速检查
- 通用 OHCI 代码更新
- **通用 OHCI 代码更新**
v1.4.3
----------------------
- device ep0 处理增加线程模式
- **device ep0 处理增加线程模式**
- device audio feedback 宏和demo
- device rndis 增加透传功能无LWIP
- host msc 将 scsi 初始化从枚举线程中移出在mount阶段调用并增加了testunity 多次尝试,兼容一部分 U 盘
- **host msc 将 scsi 初始化从枚举线程中移出在mount阶段调用并增加了testunity 多次尝试,兼容一部分 U 盘**
- rp2040 主从支持
- nuttx fsserialnet 组件支持
- **nuttx fsserialnet 组件支持**
- dwc2、ehci、ohci 主机 dcache功能支持
- t113、MCXA156、CH585 、stm32h7r 支持
- 修复 v1.4.1 中 altsetting 为0时应该关闭所有端点的问题
- t113、MCXA156、CH585 、 **stm32h7r 支持**
- 修复 v1.4.1 中 altsetting 为0时应该关闭所有端点的问题
v1.5.0
----------------------
- **协议栈内部全局 buffer 需要使用 USB_ALIGN_UP 对齐, 用于开启 dcache 并且不使能 nocache 时使用**
- **平台代码更新,平台相关转移到 platform增加 lvgl 键鼠支持blackmagic 支持, filex 支持**
- liteos-m, zephyr os 支持
- device msc 裸机读写采用变量模式而不是ringbuffer
- **完善 ehci/ohci dcache 模式下的处理** add CONFIG_USB_EHCI_DESC_DCACHE_ENABLE for qh&qtd&itd, add CONFIG_USB_OHCI_DESC_DCACHE_ENABLE for ed&td
- ehci qtd 使用 qtd alloc & free节省内存目前是 qh 携带 qtd
- **device sof callback 支持**
- **dwc2 、fsdev st 下实现底层 API 和中断,直接调用 HAL_PCD_MSP 和 HAL_HCD_MSP不需要用户复制粘贴**
- **DWC2 实现 SPLIT 功能,高速模式下支持外部高速 hub 对接 FS/LS 设备**
- rndis/ECM device msc demo 更新,支持 rt-thread 下免修改
- **memcpy 全部使用 usb_memcpy 替换arm 库存在非对其访问问题**
- ch32 device iso 更新
- cmakekconfig 更新
- 使用 USB_ASSERT_MSG 对部分代码检查

File diff suppressed because one or more lines are too long

View File

@@ -132,6 +132,7 @@
<li class="toctree-l2"><a class="reference internal" href="#v1-4-1">v1.4.1</a></li>
<li class="toctree-l2"><a class="reference internal" href="#v1-4-2">v1.4.2</a></li>
<li class="toctree-l2"><a class="reference internal" href="#v1-4-3">v1.4.3</a></li>
<li class="toctree-l2"><a class="reference internal" href="#v1-5-0">v1.5.0</a></li>
</ul>
</li>
</ul>
@@ -170,7 +171,7 @@
<section id="id1">
<h1>版本说明<a class="headerlink" href="#id1" title="Link to this heading"></a></h1>
<p>如果没有特别情况,请使用最新版本.详细版本更新说明请参考 <a class="reference external" href="https://github.com/cherry-embedded/CherryUSB/releases">https://github.com/cherry-embedded/CherryUSB/releases</a></p>
<p>如果没有特别情况,请使用最新版本。下面只列举比较重要的更新,详细更新说明请参考 <a class="reference external" href="https://github.com/cherry-embedded/CherryUSB/releases">https://github.com/cherry-embedded/CherryUSB/releases</a></p>
<section id="v0-10-2">
<h2>&lt;= v0.10.2 初代版本<a class="headerlink" href="#v0-10-2" title="Link to this heading"></a></h2>
<ul class="simple">
@@ -189,29 +190,29 @@
<h2>v1.1.0 过度版本<a class="headerlink" href="#v1-1-0" title="Link to this heading"></a></h2>
<ul class="simple">
<li><p><strong>主从机支持多 USB IP 且要相同 IP</strong></p></li>
<li><p>host 增加 bluetooth, ch340, ftdi, cp210x, asix 驱动</p></li>
<li><p><strong>host 增加 bluetooth, ch340, ftdi, cp210x, asix 驱动</strong></p></li>
<li><p>device msc 支持多 lun并且 CONFIG_USBDEV_MSC_BLOCK_SIZE 修改为 CONFIG_USBDEV_MSC_MAX_BUFSIZE</p></li>
</ul>
</section>
<section id="v1-2-0">
<h2>v1.2.0<a class="headerlink" href="#v1-2-0" title="Link to this heading"></a></h2>
<ul class="simple">
<li><p>host 增加 rtl8152cdc ncm 驱动</p></li>
<li><p><strong>host 增加 rtl8152cdc ncm 驱动</strong></p></li>
<li><p>host 增加 timer 去控制中断传输hub修改为 timer 控制)</p></li>
<li><p>porting 增加 espaic 主机驱动</p></li>
<li><p>优化 DWC2 优化代码方便阅读,并增加一些 FIFO 配置宏给用户(因为 dwc2 fifo 大小有限,以及配置方式很多,所以导出给用户配置,方便合理控制性能)</p></li>
<li><p><strong>优化 DWC2 优化代码方便阅读,并增加一些 FIFO 配置宏给用户(因为 dwc2 fifo 大小有限,以及配置方式很多,所以导出给用户配置,方便合理控制性能)</strong></p></li>
<li><p>优化 ehci 驱动qtd不再使用动态申请绑定 qh方便代码运行的更快</p></li>
</ul>
</section>
<section id="v1-3-0">
<h2>v1.3.0<a class="headerlink" href="#v1-3-0" title="Link to this heading"></a></h2>
<ul class="simple">
<li><p>device 支持多种速度描述符自动选择功能(开启 CONFIG_USBDEV_ADVANCE_DESC</p></li>
<li><p><strong>device 支持多种速度描述符自动选择功能(开启 CONFIG_USBDEV_ADVANCE_DESC</strong></p></li>
<li><p>device core 代码统一 ep0 buffer 的使用,用于美化代码</p></li>
<li><p>host 增加 pl2303 驱动;采用 id table 来支持多个 vidpid增加 user_data 给用户使用</p></li>
<li><p>host 网络 class 驱动增加 tx、rx buffer 的宏,增加 LWIP_TCPIP_CORE_LOCKING_INPUT 的使用,以便实现数据的零拷贝</p></li>
<li><p>porting 导入 bouffaloaicstm32f723 device驱动</p></li>
<li><p>porting 中主机部分 urb-&gt;timeout 清0 的处理有点问题(大数据量传输时会出现 no pipe alloc 异常,主要原因是刚启动传输就完成了,还没判断 timeout就被修改为0了没有进入 take sem 流程),此版本已修复</p></li>
<li><p><strong>porting 中主机部分 urb-&gt;timeout 清0 的处理有点问题(大数据量传输时会出现 no pipe alloc 异常,主要原因是刚启动传输就完成了,还没判断 timeout就被修改为0了没有进入 take sem 流程),此版本已修复</strong></p></li>
<li><p>ehci enable iaad in usbh_kill_urbread ehci hcor offset from hccr caplengthenable ohci for ehci</p></li>
<li><p>适配 nuttx os</p></li>
</ul>
@@ -220,32 +221,32 @@
<h2>v1.3.1<a class="headerlink" href="#v1-3-1" title="Link to this heading"></a></h2>
<ul class="simple">
<li><p>bugfixaudiovideocdc ecm 相关宏结构体api</p></li>
<li><p>host hub 枚举线程删除,使用 psc 线程,枚举方式更改为队列模式,取消同时枚举多个设备的功能</p></li>
<li><p><strong>host hub 枚举线程删除,使用 psc 线程,枚举方式更改为队列模式,取消同时枚举多个设备的功能</strong></p></li>
<li><p>host 扫描驱动信息和 instance 采用递归模式,删除链表扫描</p></li>
<li><p>host 网络 class 驱动优化,支持接收 16K 以上的数据cdc ecm 不支持),采用高级 memcpy api</p></li>
<li><p>device 协议栈中打印删除(中断中不再做打印)</p></li>
<li><p><strong>device 协议栈中打印删除(中断中不再做打印)</strong></p></li>
<li><p>porting 中 musb fifo配置修改为从 fifo table 获取(此代码参考 linux适配 es32sunxibeken</p></li>
</ul>
</section>
<section id="v1-4-0">
<h2>v1.4.0<a class="headerlink" href="#v1-4-0" title="Link to this heading"></a></h2>
<ul class="simple">
<li><p>device 开始支持 remote wakeup 功能, hid request(0x21),完善 GET STATUS 请求(此版本开始可以通过 USB3CV 测试)</p></li>
<li><p><strong>device 开始支持 remote wakeup 功能, hid request(0x21),完善 GET STATUS 请求(此版本开始可以通过 USB3CV 测试)</strong></p></li>
<li><p>device 增加 UF2, ADB, WEBUSB 功能; msc 增加裸机的读写 polling 功能,将读写放在 while1中执行 usbd_cdc 改名为 usbd_cdc_acm</p></li>
<li><p>host 增加 usbwifi(bl616), xbox驱动重构 USB3.0 枚举逻辑</p></li>
<li><p>host 中 cdc_acm,hid,msc,serial 传输共享 buffer如果存在多个相同的设备会有问题修改为单独的 buffer</p></li>
<li><p>porting 重构 XHCI/PUSB2 驱动不开源ehci 和 ohci 文件改名;增加 remote wakeup api</p></li>
<li><p>host 增加 usbwifi(bl616), xbox驱动 <strong>重构 USB3.0 枚举逻辑</strong></p></li>
<li><p><strong>host 中 cdc_acm,hid,msc,serial 传输共享 buffer如果存在多个相同的设备会有问题修改为单独的 buffer</strong></p></li>
<li><p><strong>porting 重构 XHCI/PUSB2 驱动,不开源</strong>ehci 和 ohci 文件改名;增加 remote wakeup api</p></li>
<li><p>esp 组件库支持</p></li>
<li><p>chipidea 从机驱动支持nxp mcx 系列主从支持</p></li>
<li><p><strong>chipidea 从机驱动支持nxp mcx 系列主从支持</strong></p></li>
<li><p>threadx os 支持</p></li>
</ul>
</section>
<section id="v1-4-1">
<h2>v1.4.1<a class="headerlink" href="#v1-4-1" title="Link to this heading"></a></h2>
<ul class="simple">
<li><p>修复device 模式下使用多个 altsetting 时重复关闭端点问题,改成 altsetting 为0时关闭</p></li>
<li><p>重构主机 audio 解析描述符</p></li>
<li><p>增加 kinetis usbip</p></li>
<li><p><strong>修复device 模式下使用多个 altsetting 时重复关闭端点问题,改成 altsetting 为0时关闭</strong></p></li>
<li><p><strong>重构主机 audio 解析描述符</strong></p></li>
<li><p><strong>增加 kinetis usbip</strong></p></li>
<li><p>主机下 usbh_msc_get_maxlun 请求部分 U 盘不支持,不做错误返回</p></li>
<li><p>主机下 usbh_hid_get_report_descriptor 导出给用户调用</p></li>
<li><p>静态代码检查</p></li>
@@ -256,29 +257,48 @@
<h2>v1.4.2<a class="headerlink" href="#v1-4-2" title="Link to this heading"></a></h2>
<ul class="simple">
<li><p>device 实现 USB_REQUEST_GET_INTERFACE 请求</p></li>
<li><p>device video 传输重构,增加双缓冲功能</p></li>
<li><p>device ecm 重构</p></li>
<li><p><strong>device video 传输重构,增加双缓冲功能</strong></p></li>
<li><p>device ecm 重构,保持和 rndis 类似 API</p></li>
<li><p>device 和 host audio 音量配置功能重构</p></li>
<li><p>host 增加 AOA 驱动</p></li>
<li><p>兼容 C++ 相关修改</p></li>
<li><p>fsdev 不支持 ISO 和 DWC2 高速 hub 不支持全速低速检查</p></li>
<li><p>通用 OHCI 代码更新</p></li>
<li><p><strong>通用 OHCI 代码更新</strong></p></li>
</ul>
</section>
<section id="v1-4-3">
<h2>v1.4.3<a class="headerlink" href="#v1-4-3" title="Link to this heading"></a></h2>
<ul class="simple">
<li><p>device ep0 处理增加线程模式</p></li>
<li><p><strong>device ep0 处理增加线程模式</strong></p></li>
<li><p>device audio feedback 宏和demo</p></li>
<li><p>device rndis 增加透传功能无LWIP</p></li>
<li><p>host msc 将 scsi 初始化从枚举线程中移出在mount阶段调用并增加了testunity 多次尝试,兼容一部分 U 盘</p></li>
<li><p><strong>host msc 将 scsi 初始化从枚举线程中移出在mount阶段调用并增加了testunity 多次尝试,兼容一部分 U 盘</strong></p></li>
<li><p>rp2040 主从支持</p></li>
<li><p>nuttx fsserialnet 组件支持</p></li>
<li><p><strong>nuttx fsserialnet 组件支持</strong></p></li>
<li><p>dwc2、ehci、ohci 主机 dcache功能支持</p></li>
<li><p>t113、MCXA156、CH585 、stm32h7r 支持</p></li>
<li><p>t113、MCXA156、CH585 、 <strong>stm32h7r 支持</strong></p></li>
<li><p>修复 v1.4.1 中 altsetting 为0时应该关闭所有端点的问题</p></li>
</ul>
</section>
<section id="v1-5-0">
<h2>v1.5.0<a class="headerlink" href="#v1-5-0" title="Link to this heading"></a></h2>
<ul class="simple">
<li><p><strong>协议栈内部全局 buffer 需要使用 USB_ALIGN_UP 对齐, 用于开启 dcache 并且不使能 nocache 时使用</strong></p></li>
<li><p><strong>平台代码更新,平台相关转移到 platform增加 lvgl 键鼠支持blackmagic 支持, filex 支持</strong></p></li>
<li><p>liteos-m, zephyr os 支持</p></li>
<li><p>device msc 裸机读写采用变量模式而不是ringbuffer</p></li>
<li><p><strong>完善 ehci/ohci dcache 模式下的处理</strong> add CONFIG_USB_EHCI_DESC_DCACHE_ENABLE for qh&amp;qtd&amp;itd, add CONFIG_USB_OHCI_DESC_DCACHE_ENABLE for ed&amp;td</p></li>
<li><p>ehci qtd 使用 qtd alloc &amp; free节省内存目前是 qh 携带 qtd</p></li>
<li><p><strong>device sof callback 支持</strong></p></li>
<li><p><strong>dwc2 、fsdev st 下实现底层 API 和中断,直接调用 HAL_PCD_MSP 和 HAL_HCD_MSP不需要用户复制粘贴</strong></p></li>
<li><p><strong>DWC2 实现 SPLIT 功能,高速模式下支持外部高速 hub 对接 FS/LS 设备</strong></p></li>
<li><p>rndis/ECM device msc demo 更新,支持 rt-thread 下免修改</p></li>
<li><p><strong>memcpy 全部使用 usb_memcpy 替换arm 库存在非对其访问问题</strong></p></li>
<li><p>ch32 device iso 更新</p></li>
<li><p>cmakekconfig 更新</p></li>
<li><p>使用 USB_ASSERT_MSG 对部分代码检查</p></li>
</ul>
</section>
</section>