|
2 | 2 | Changelog
|
3 | 3 | *********
|
4 | 4 |
|
5 |
| -0.17.0 (WIP) |
6 |
| -============ |
| 5 | +0.17.0 |
| 6 | +====== |
7 | 7 |
|
8 | 8 | General
|
9 | 9 | -------
|
10 | 10 |
|
11 |
| -- Improved continuous integration: build both cmake and make. Make use of circleci to build arm-clang |
12 |
| - |
| 11 | +- Improved CI: build both cmake and make. Make use of CircleCI for part of build process to speed up CI |
| 12 | +- Add CodeQL Workflow for Code Security Analysis |
| 13 | +- Add Clang compiler support |
| 14 | +- Add default implementation for weak callbacks functions for better Keil compatibility |
| 15 | +- Upgrade hardware-in-the-loop (HIL) testing with more boards and examples: including dual stack example |
13 | 16 |
|
14 | 17 | Controller Driver (DCD & HCD)
|
15 | 18 | -----------------------------
|
16 | 19 |
|
| 20 | +- Chipidea |
| 21 | + |
| 22 | + - Support MCXA |
| 23 | + |
| 24 | +- DWC2 |
| 25 | + |
| 26 | + - Fix tickless issue with stm32f7: disable ULPI clock during sleep when using internal phy |
| 27 | + - Fix SOF interrupt handling |
| 28 | + - Fix fifo level half/empty issue |
| 29 | + - Add DWC2 Test Mode support. |
| 30 | + - for esp32 force disconnect/connect using USB_WRAP otg pad override |
| 31 | + |
| 32 | +- FSDEV |
| 33 | + |
| 34 | + - Rewrite and Generalize driver to support non-stm32 mcu such as wch |
| 35 | + - Simplify PMA, HW FIFO access and bit manipulation for different access scheme 1x16, 2x16 and 32 bit |
| 36 | + - Add support for ch32 usbd e.g ch32v203 |
| 37 | + - Add support for STM32G4 and STM32U5 microcontrollers. |
| 38 | + - Fix h5 (32-bit) errata 2.15.1: Buffer description table update completes after CTR interrupt triggers |
| 39 | + - ISO EP buffer allocation improvements, implement dcd_edpt_close_all() |
| 40 | + |
| 41 | + - Fix ch32v203 race condition and stability issue with |
| 42 | + |
| 43 | + - fix ch32v203 seems to unconditionally accept ZLP on EP0 OUT. |
| 44 | + - fix v203 race condition between rx bufsize and RX_STAT which cause PMAOVR, occurs with WRITE10 |
| 45 | + - correctly handle setup prepare at dcd_edpt0_status_complete(), which fixes the race condition with windows where we could miss setup packet (setup bit set, but count = 0) |
| 46 | + |
| 47 | +- MAX3421E |
| 48 | + |
| 49 | + - Add support for rp2040, esp32 (c3, c6, h2, etc..) |
| 50 | + - Add hcd_deinit() for max3421 |
| 51 | + - Retry NAK handling next frame to reduce CPU and SPI bus usage |
| 52 | + - add cpuctl and pinctl to tuh_configure() option for max3421 |
| 53 | + - Implement hcd abort transfer for Max3421 |
| 54 | + - Properly Handle NAK Response in MAX3421E driver: correctly switch and skip writing to 2 FIFOs when NAK received. Otherwise, the driver may hang in certain conditions. |
| 55 | + |
| 56 | +- MSP430: support non-bus-powered |
| 57 | + |
| 58 | +- MUSB |
| 59 | + |
| 60 | + - Add support for Analoog devices: max32650, max32666, max32690, max3278002 |
| 61 | + |
| 62 | +- nRF |
| 63 | + |
| 64 | + - Fix dcd_edpt_open for iso endpoint |
| 65 | + - Handle ISOOUT CRC errors |
| 66 | + - Add compile support with old nordic sdk |
| 67 | + - Fix a few race conditions |
| 68 | + |
| 69 | +- OHCI |
| 70 | + |
| 71 | + - Allow more than 16 devices |
| 72 | + |
| 73 | +- RP2040 |
| 74 | + |
| 75 | + - Correctly abort control transfer when new setup arrived. Due to RP2040-E2 only able to fix B2 or later |
| 76 | + - Implement hcd abort transfer for rp2040 |
| 77 | + - Add support for rp2350 |
| 78 | + |
| 79 | +- RUSB2 |
| 80 | + |
| 81 | + - Support ra2a1 pipe number scheme |
| 82 | + |
17 | 83 | - WCH CH32
|
18 | 84 |
|
19 | 85 | - Added support for USB OTG/FS and FSDev Driver. Update CH32V307 to allow manual select FS or HS driver.
|
20 | 86 | - Fixed various bugs in CH32v307 usbhs driver: endpoint handling and data transfer management.
|
21 | 87 |
|
22 |
| -- Fixed race conditions and other bugs in dcd_nrf5x and other drivers. |
23 |
| -- Implemented hcd abort transfer for Max3421 and rp2040 |
24 |
| -- Added DWC2 Test Mode support. |
25 |
| -- stm32 fsdev: ISO EP buffer allocation improvements, implement dcd_edpt_close_all() |
26 |
| -- Added support for STM32G4 and STM32U5 microcontrollers. |
27 |
| - |
28 | 88 | Device Stack
|
29 | 89 | ------------
|
30 | 90 |
|
31 |
| -- Added tud_deinit() to deinitialize TinyUSB device stack. |
32 |
| -- Added support for generic SOF callback. |
| 91 | +- Add tud_deinit() and class driver deinit() to deinitialize TinyUSB device stack. |
| 92 | +- Add support for generic SOF callback. |
| 93 | +- Add set address recovery time 2ms per USB spec. |
33 | 94 |
|
34 | 95 | - Audio
|
35 | 96 |
|
36 | 97 | - Add audio_test_freertos & audio_4_channel_mic_freertos
|
37 | 98 | - Improved support for Audio Class 2.0 (UAC2) with various bug fixes.
|
| 99 | + - Add feedback by fifo counting. |
| 100 | + |
| 101 | +- Bluetooth HCI |
| 102 | + |
| 103 | + - Issue ZLP on ACL IN ep when transfer is multiple of endpoint max packet size |
| 104 | + |
| 105 | +- CDC |
| 106 | + |
| 107 | + - Add tud_cdc_configure_fifo() to make RX/TX buffer persistent (not clear when disconnected) |
| 108 | + - Add missing capability bit for CDC ACM serial break support |
| 109 | + - Enhanced CDC class with better handling of large data transmissions. |
| 110 | + - Add missing capability bit for CDC ACM serial break support |
38 | 111 |
|
39 | 112 | - HID
|
40 | 113 |
|
41 | 114 | - Added missing key codes for keypad
|
42 | 115 | - Added HID Lighting and Illumination functionality
|
| 116 | + - Fixed issues in the HID class for more reliable device enumeration. |
| 117 | + - Support HID Mouse with absolute positioning |
| 118 | + - Use separate buffer for control SET_REPORT, fix conflict with interrupt endpoint out |
43 | 119 |
|
44 |
| -- Vendor: Added empty transfers for tud_vendor_n_write() |
45 | 120 | - MSC: Added support for SCSI_CMD_PREVENT_ALLOW_MEDIUM_REMOVAL
|
46 | 121 |
|
47 |
| -- CDC |
48 |
| - |
49 |
| - - Add option to make CDC TX buffer persistent |
50 |
| - - Add missing capability bit for CDC ACM serial break support |
51 |
| - |
52 | 122 | - Net
|
53 | 123 |
|
54 |
| - - Rewrite of NCM device driver |
| 124 | + - Rewrite of NCM device driver to improve throughput |
55 | 125 | - removed obsolete tud_network_link_state_cb()
|
56 | 126 |
|
57 |
| -- Enhanced CDC class with better handling of large data transmissions. |
58 |
| -- Fixed issues in the HID class for more reliable device enumeration. |
59 |
| -- Video Added support for USB Video Class (UVC) with MJPEG. |
60 | 127 | - USBTMC Added notification support
|
61 | 128 |
|
| 129 | +- Vendor |
| 130 | + |
| 131 | + - Migrate to new endpoint stream API, support non-buffered TX/RX |
| 132 | + - Add ZLP for write() when needed |
| 133 | + |
| 134 | +- Video |
| 135 | + |
| 136 | + - Enhance UVC descriptors and example |
| 137 | + - Video Added support for USB Video Class (UVC) with MJPEG. |
| 138 | + - Fix multiple interfaces, add an example of 2ch video capture. |
| 139 | + - Fix race for tud_video_n_streaming check |
| 140 | + |
62 | 141 | Host Stack
|
63 | 142 | ----------
|
64 | 143 |
|
65 |
| -- Added tuh_deinit() to deinitialize TinyUSB host stack. |
| 144 | +- Added tuh_deinit() to de-initialize TinyUSB host stack. |
66 | 145 | - Added support for new USB mass storage class APIs.
|
67 |
| -- Enhanced stability of CDC-ACM devices during enumeration. |
68 | 146 | - Improved error handling and retry mechanisms for unstable devices.
|
69 |
| -- Added support for multiple interfaces in UVC. |
| 147 | + |
| 148 | +- CDC Serial |
| 149 | + |
| 150 | + - Add support for ch34x |
| 151 | + - Allow to overwrite CFG_TUH_CDC_FTDI/CP210X/CH32X_VID_PID_LIST |
| 152 | + - Enhanced stability of CDC-ACM devices during enumeration. |
| 153 | + |
| 154 | +- HID |
| 155 | + |
| 156 | + - Add tuh_hid_receive_abort() |
| 157 | + - Add tuh_hid_get_report() |
| 158 | + |
| 159 | +- Hub |
| 160 | + |
| 161 | + - Prevent status request to invalid ep_num |
| 162 | + - Fix double status xfer |
| 163 | + - unroll hub removal |
70 | 164 |
|
71 | 165 | 0.16.0
|
72 | 166 | ======
|
|
0 commit comments