1
1
版本说明
2
2
==============================
3
3
4
- 如果没有特别情况,请使用最新版本.详细版本更新说明请参考 https://github.com/cherry-embedded/CherryUSB/releases。
4
+ 如果没有特别情况,请使用最新版本。下面只列举比较重要的更新,详细更新说明请参考 https://github.com/cherry-embedded/CherryUSB/releases。
5
5
6
6
<= v0.10.2 初代版本
7
7
----------------------
@@ -19,58 +19,58 @@ v1.1.0 过度版本
19
19
----------------------
20
20
21
21
- **主从机支持多 USB IP 且要相同 IP **
22
- - host 增加 bluetooth, ch340, ftdi, cp210x, asix 驱动
22
+ - ** host 增加 bluetooth, ch340, ftdi, cp210x, asix 驱动 **
23
23
- device msc 支持多 lun,并且 CONFIG_USBDEV_MSC_BLOCK_SIZE 修改为 CONFIG_USBDEV_MSC_MAX_BUFSIZE
24
24
25
25
v1.2.0
26
26
----------------------
27
27
28
- - host 增加 rtl8152,cdc ncm 驱动
28
+ - ** host 增加 rtl8152,cdc ncm 驱动 **
29
29
- host 增加 timer 去控制中断传输(hub修改为 timer 控制)
30
30
- porting 增加 esp,aic 主机驱动
31
- - 优化 DWC2 优化代码方便阅读,并增加一些 FIFO 配置宏给用户(因为 dwc2 fifo 大小有限,以及配置方式很多,所以导出给用户配置,方便合理控制性能)
31
+ - ** 优化 DWC2 优化代码方便阅读,并增加一些 FIFO 配置宏给用户(因为 dwc2 fifo 大小有限,以及配置方式很多,所以导出给用户配置,方便合理控制性能) **
32
32
- 优化 ehci 驱动(qtd不再使用动态申请,绑定 qh),方便代码运行的更快
33
33
34
34
v1.3.0
35
35
----------------------
36
36
37
- - device 支持多种速度描述符自动选择功能(开启 CONFIG_USBDEV_ADVANCE_DESC)
37
+ - ** device 支持多种速度描述符自动选择功能(开启 CONFIG_USBDEV_ADVANCE_DESC) **
38
38
- device core 代码统一 ep0 buffer 的使用,用于美化代码
39
39
- host 增加 pl2303 驱动;采用 id table 来支持多个 vid,pid;增加 user_data 给用户使用
40
40
- host 网络 class 驱动增加 tx、rx buffer 的宏,增加 LWIP_TCPIP_CORE_LOCKING_INPUT 的使用,以便实现数据的零拷贝
41
41
- porting 导入 bouffalo,aic,stm32f723 device驱动
42
- - porting 中主机部分 urb->timeout 清0 的处理有点问题(大数据量传输时会出现 no pipe alloc 异常,主要原因是刚启动传输就完成了,还没判断 timeout就被修改为0了,没有进入 take sem 流程),此版本已修复
42
+ - ** porting 中主机部分 urb->timeout 清0 的处理有点问题(大数据量传输时会出现 no pipe alloc 异常,主要原因是刚启动传输就完成了,还没判断 timeout就被修改为0了,没有进入 take sem 流程),此版本已修复 **
43
43
- ehci enable iaad in usbh_kill_urb,read ehci hcor offset from hccr caplength,enable ohci for ehci
44
44
- 适配 nuttx os
45
45
46
46
v1.3.1
47
47
----------------------
48
48
49
49
- bugfix(audio,video,cdc ecm 相关宏,结构体,api)
50
- - host hub 枚举线程删除,使用 psc 线程,枚举方式更改为队列模式,取消同时枚举多个设备的功能
50
+ - ** host hub 枚举线程删除,使用 psc 线程,枚举方式更改为队列模式,取消同时枚举多个设备的功能 **
51
51
- host 扫描驱动信息和 instance 采用递归模式,删除链表扫描
52
52
- host 网络 class 驱动优化,支持接收 16K 以上的数据(cdc ecm 不支持),采用高级 memcpy api
53
- - device 协议栈中打印删除(中断中不再做打印)
53
+ - ** device 协议栈中打印删除(中断中不再做打印) **
54
54
- porting 中 musb fifo配置修改为从 fifo table 获取(此代码参考 linux),适配 es32,sunxi,beken
55
55
56
56
v1.4.0
57
57
----------------------
58
58
59
- - device 开始支持 remote wakeup 功能, hid request(0x21),完善 GET STATUS 请求(此版本开始可以通过 USB3CV 测试)
59
+ - ** device 开始支持 remote wakeup 功能, hid request(0x21),完善 GET STATUS 请求(此版本开始可以通过 USB3CV 测试) **
60
60
- device 增加 UF2, ADB, WEBUSB 功能; msc 增加裸机的读写 polling 功能,将读写放在 while1中执行; usbd_cdc 改名为 usbd_cdc_acm
61
- - host 增加 usbwifi(bl616), xbox驱动;重构 USB3.0 枚举逻辑
62
- - host 中 cdc_acm,hid,msc,serial 传输共享 buffer,如果存在多个相同的设备会有问题,修改为单独的 buffer
63
- - porting 重构 XHCI/PUSB2 驱动,不开源;ehci 和 ohci 文件改名;增加 remote wakeup api
61
+ - host 增加 usbwifi(bl616), xbox驱动; ** 重构 USB3.0 枚举逻辑 **
62
+ - ** host 中 cdc_acm,hid,msc,serial 传输共享 buffer,如果存在多个相同的设备会有问题,修改为单独的 buffer **
63
+ - ** porting 重构 XHCI/PUSB2 驱动,不开源 ** ;ehci 和 ohci 文件改名;增加 remote wakeup api
64
64
- esp 组件库支持
65
- - chipidea 从机驱动支持,nxp mcx 系列主从支持
65
+ - ** chipidea 从机驱动支持,nxp mcx 系列主从支持 **
66
66
- threadx os 支持
67
67
68
68
v1.4.1
69
69
----------------------
70
70
71
- - 修复device 模式下使用多个 altsetting 时重复关闭端点问题,改成 altsetting 为0时关闭
72
- - 重构主机 audio 解析描述符
73
- - 增加 kinetis usbip
71
+ - ** 修复device 模式下使用多个 altsetting 时重复关闭端点问题,改成 altsetting 为0时关闭 **
72
+ - ** 重构主机 audio 解析描述符 **
73
+ - ** 增加 kinetis usbip **
74
74
- 主机下 usbh_msc_get_maxlun 请求部分 U 盘不支持,不做错误返回
75
75
- 主机下 usbh_hid_get_report_descriptor 导出给用户调用
76
76
- 静态代码检查
@@ -80,23 +80,41 @@ v1.4.2
80
80
----------------------
81
81
82
82
- device 实现 USB_REQUEST_GET_INTERFACE 请求
83
- - device video 传输重构,增加双缓冲功能
84
- - device ecm 重构
83
+ - ** device video 传输重构,增加双缓冲功能 **
84
+ - device ecm 重构,保持和 rndis 类似 API
85
85
- device 和 host audio 音量配置功能重构
86
86
- host 增加 AOA 驱动
87
87
- 兼容 C++ 相关修改
88
88
- fsdev 不支持 ISO 和 DWC2 高速 hub 不支持全速低速检查
89
- - 通用 OHCI 代码更新
89
+ - ** 通用 OHCI 代码更新 **
90
90
91
91
v1.4.3
92
92
----------------------
93
93
94
- - device ep0 处理增加线程模式
94
+ - ** device ep0 处理增加线程模式 **
95
95
- device audio feedback 宏和demo
96
96
- device rndis 增加透传功能(无LWIP)
97
- - host msc 将 scsi 初始化从枚举线程中移出,在mount阶段调用,并增加了testunity 多次尝试,兼容一部分 U 盘
97
+ - ** host msc 将 scsi 初始化从枚举线程中移出,在mount阶段调用,并增加了testunity 多次尝试,兼容一部分 U 盘 **
98
98
- rp2040 主从支持
99
- - nuttx fs,serial,net 组件支持
99
+ - ** nuttx fs,serial,net 组件支持 **
100
100
- dwc2、ehci、ohci 主机 dcache功能支持
101
- - t113、MCXA156、CH585 、stm32h7r 支持
102
- - 修复 v1.4.1 中 altsetting 为0时应该关闭所有端点的问题
101
+ - t113、MCXA156、CH585 、 **stm32h7r 支持 **
102
+ - 修复 v1.4.1 中 altsetting 为0时应该关闭所有端点的问题
103
+
104
+ v1.5.0
105
+ ----------------------
106
+
107
+ - **协议栈内部全局 buffer 需要使用 USB_ALIGN_UP 对齐, 用于开启 dcache 并且不使能 nocache 时使用 **
108
+ - **平台代码更新,平台相关转移到 platform,增加 lvgl 键鼠支持,blackmagic 支持, filex 支持 **
109
+ - liteos-m, zephyr os 支持
110
+ - device msc 裸机读写采用变量模式,而不是ringbuffer
111
+ - **完善 ehci/ohci dcache 模式下的处理 **, add CONFIG_USB_EHCI_DESC_DCACHE_ENABLE for qh&qtd&itd, add CONFIG_USB_OHCI_DESC_DCACHE_ENABLE for ed&td
112
+ - ehci qtd 使用 qtd alloc & free,节省内存,目前是 qh 携带 qtd
113
+ - **device sof callback 支持 **
114
+ - **dwc2 、fsdev st 下实现底层 API 和中断,直接调用 HAL_PCD_MSP 和 HAL_HCD_MSP,不需要用户复制粘贴 **
115
+ - **DWC2 实现 SPLIT 功能,高速模式下支持外部高速 hub 对接 FS/LS 设备 **
116
+ - rndis/ECM device, msc demo 更新,支持 rt-thread 下免修改
117
+ - **memcpy 全部使用 usb_memcpy 替换,arm 库存在非对其访问问题 **
118
+ - ch32 device iso 更新
119
+ - cmake,kconfig 更新
120
+ - 使用 USB_ASSERT_MSG 对部分代码检查
0 commit comments