1/*!
2@page middleware_log Middleware Change Log
3
4@section USB USB stack for MCUXpresso SDK
5  The current version of USB stack is 2.10.0.
6  - 2.10.0
7    - New features and demos:
8      - Implement the USB Host ECM.
9        - Add new USB host example: usb_host_cdc_ecm
10      - Add one new USB host audio example: usb_host_audio_unified.
11      - eUSB support on EHCI.
12      - Add L1 LPM low power feature on EHCI for device and host.
13    - Improvement:
14      - Enable cache maintenance in the usb_host_msd_fatfs, usb_device_msc_disk and usb_device_msc_ramdisk examples on the RT1040-EVK, RT1050-EVKB, RT1060-EVKC and RT1170-EVKB platforms.
15      - Improve Host VNIC to be more compatible with other USB devices.
16      - Add USB_DEVICE_CONFIG_SOF_NOTIFICATION for device stack.
17      - Clear the pending FR_Swap during initialization to prevent the FR_Swap from affecting the later PD negotiation.
18    - Bug fixes:
19      - Fix on IP3511 driver that SETUP bit is cleared by mistake.
20      - Fix on IP3516 driver that cannot do multiple ISO endpoints transfers at the same time.
21      - Fix on IP3516 driver that the Token Done interrupt is cleared but the last completed transfer is not processed.
22      - Fix on IP3516 driver that the transfer will continue when receiving a short packet.
23      - Fix on host audio class driver that entities cannot be distinguished between recorder and speaker.
24  - 2.9.1
25    - Improvement:
26      - Update EHCI controller driver for basic support of eUSB.
27      - Replace the hard code in audio cases with macro.
28      - Uniform the Chapter9 for device lite cases.
29  - 2.9.0
30    - Improvement:
31      - Change ROOT2 as enabled by default in device stack.
32      - Implement independent frequency adjustment for speaker and recorder of composite audio unified demos.
33      - Fix vulnerability for host stack. CVE number: CVE-2023-38749
34      - Delete deprecated enet driver function for enet adapter.
35  - 2.8.4
36    - Improvement:
37      - Add the new netc adatper for the new netc driver.
38      - Fix issues for USB device dfu and usb device msc when enable the macro USB_DEVICE_CONFIG_RETURN_VALUE_CHECK.
39      - Change the header file including order for usb.h header.
40      - Update the USB host audio class driver to fix the wrong output log.
41      - Add the workaround on dev_hid_mouse_bm case for the errata TN00071.
42      - Enable ROOT2 macro in USB device stack.
43      - Use an unified definiton for the base address of RTxxxx platforms.
44  - 2.8.3
45    - Improvement:
46      - Update the EHCI controller driver to support the address convert for TCM.
47      - Update the USB host EHCI controller driver to make sure the mutual exclusion access under multiple tasks' environment.
48  - 2.8.2
49    - Improvement:
50      - Fix noise issue of UAC 3.1, UAC 5.1, UAC 7.1 on usb audio speaker demo.
51      - Fix the issue that incorrect PC behavior when ejecting USB MSC devices.
52      - Update the EHCI controller driver to support RW610 that does not reply on PHY driver, especially for low power feature.
53      - Update the USB_HostHelperParseAlternateSetting to fix the wrong interface parse.
54      - Update dev_composite_hid_audio_unified_bm demo to suppport independent mute/unmute and volume control.
55  - 2.8.1
56    - Improvement:
57      - update USB audio demos to use audio component (components/audio).
58      - Add the checking of function call return value.
59      - Add audio multiple channels demo (usb_device_composite_audio_multi_ch_unified) on RT600 audio board.
60      - Fix audio noise on sync mode and improve overflow/underflow checking method.
61      - Support UAC 3.1, 5.1 and 7.1 on audio speaker demo.
62      - Set USB device CDC demo not to depend on DTR setting from host.
63      - Support MCUX toolchain on some RTxxxx platforms.
64  - 2.8.0
65    - Improvement:
66      - Fix the USB device stack vulnerability issues.
67      - Update the audio PLL and FRO adjustment codes for audio examples in RTxxx, LPC54xxx and LPC55xxx.
68      - Improve the USB PD AMS collision avoidance.
69      - Improve IP3511 controller driver's dedicated ram allocation.
70      - Change the USB_DATA_ALIGN_SIZE to 4 because the controller driver uses the dedicated RAM to do memcpy.
71    - New features:
72      - Enable USB host audio recorder demo for mutilple boards.
73  - 2.7.0
74    - Improvement:
75      - Use new feeback solution and low latency playback for usb device speaker demo and unified demos. Add underflow and overflow protection.
76      - Optimize hard code for usb audio demos.
77      - Update Unconstrained Power field in the Sink Capabilities Message according to the external power state.
78      - Fix CVE-2021-38258 and CVE-2021-38260
79    - New features:
80      - Enable USB host video demo for mutilple boards.
81      - Enable USB device MTP demo for mutilple boards.
82      - Add PPS message to usb pd stack.
83  - 2.6.1
84    - Improvement:
85      - rename sdcard as disk for all of sdcard demos. For ramdisk demos, they are not changed.
86      - add wrapper for all of disk demos to support emmc.
87  - 2.6.0
88    - Improvement:
89      - Added more ufi event to support dynamic sdcard capacity.
90      - Passed MISRA-2012 mandatory and required rules.
91        - Except rule 17.2 in host hub and otg stack.
92        - Except rule 5.1, rule 5.4, rule 21.1 and rule 21.2.
93      - Re-implemented USB components and supported NPW.
94      - Improved IP3511 controller driver's cancelling transfer function.
95      - Enabled the audio2.0 defaultly for device audio demos.
96      - Enabled the host audio2.0 function in host audio class driver and host audio speaker demo.
97    - New features:
98      - enable two USB controllers in one USB host mouse demo which named as host_hid_mouse_dual.
99      - enable UAC 5.1 for usb device audio speaker demo.
100  - 2.5.0
101    - Improvement:
102      - Integrated sdk components (OSA, Timer, GPIO and serial_manager) to USB stack and demos.
103      - Improved the ip3511 driver throughput.
104      - Improved audio initialization codes after SDK audio drivers update.
105      - Improved auido to support the audio2.0 in win10.
106      - Add one "enumeration fail" callback event to host stack.
107  - 2.4.2
108    - Improvement:
109      - Put the USB controller data and transfer buffer to noncache section, removed the setting that sets the whole ocram and sdram as noncached.
110      - Separated composite audio examples' channel,sample rate,format parameters from commom macro to in dedicated macro and out dedicated macro.
111      - replaced USB_PrepareData with USB_AudioRecorderGetBuffer.
112  - 2.4.1
113    - New features:
114      - Added enumeration fail callback to host stack when the attached device's enumeration failed.
115  - 2.4.0
116    - Improvement:
117      - Device Charger Detection (DCD) software architecture was refactored.
118    - New features:
119      - Enabled Device Charger Detection (DCD) on RT1060.
120      - Enabled Device Charger Detection on RT600.
121      - Enabled host battery charger function on RT600.
122  - 2.3.0
123    - New features:
124      - Added host video camera support.
125        example: usb_host_video_camera
126      - Added a new device example.
127        example: usb_device_composite_cdc_hid_audio_unified
128  - 2.2.0
129    - New features:
130      - Added device DFU support.
131      - Supported OM13790DOCK on LPCXpresso54018.
132      - Added multiple logical unit support in msc class driver, updated usb_device_lba_information_struct_t to support this.
133      - Supported multiple transfers for host ISO on IP3516HS.
134    - Bug fixes:
135      - Fixed device ip3511 prime data length than maxpacket size issue.
136      - Initialized interval attribute in usb_device_endpoint_struct_t/usb_device_endpoint_init_struct_t.
137      - Removed unnecessary header file in device CDC class driver, removed unnecessary usb_echo, and added DEBUG macro for necessary usb_echo in device CDC class driver.
138      - Fixed device IP3511HS unfinished interrupt transfer missing issue.
139  - 2.1.0
140    - New features:
141      - Added host RNDIS support.
142        example: lwip_dhcp_usb
143      - Enabled USB 3.0 support on device stack.
144      - Power Delivery feature:
145        Added OM13790HOST support;
146        Added auto policy feature;
147        Printed e-marked cable information;
148  - 2.0.1
149    - Bug fixes:
150      - Fixed some USB issues:
151        Fixed MSC CV test failed in MSC examples.
152      - Changed audio codec interfaces.
153
154  - 2.0.0
155    - New features:
156      - PTN5110N support.
157    - Bug fix:
158      - Added some comments, fixed some minor USB issues.
159
160  - 1.9.0
161    - New features:
162      - Examples:
163        - usb_pd_alt_mode_dp_host
164
165  - 1.8.2
166    - Updated license.
167
168  - 1.8.1
169    - Bug fix:
170      - Verified some hardware issues, support aruba_flashless.
171
172  - 1.8.0
173    - New features:
174      - Examples:
175        - usb_device_composite_cdc_vcom_cdc_vcom
176        - usb_device_composite_hid_audio_unified
177        - usb_pd_sink_battery
178        - Changed usb_pd_battery to usb_pd_charger_battery.
179    - Bug fix:
180      - Code clean up, removed some irrelevant code.
181
182  - 1.7.0
183    - New features:
184      - USB PD stack support.
185
186    - Examples:
187      - usb_pd
188      - usb_pd_battery
189      - usb_pd_source_charger
190
191  - 1.6.3
192    - Bug fix:
193      -IP3511_HS driver control transfer sequence issue, enabled 3511 ip cv test.
194
195  - 1.6.2
196    - New features:
197      - Multi instance support.
198
199  - 1.6.1
200    - New features:
201    - Changed the struct variable address method for device_video_virtual_camera and host_phdc_manager.
202
203  - 1.6.0
204    - New features:
205      - Supported Device Charger Detect feature on usb_device_hid_mouse.
206
207  - 1.5.0
208    - New features:
209      - Supported controllers
210        - OHCI (Full Speed, Host mode)
211        - IP3516 (High Speed, Host mode)
212        - IP3511 (High Speed, Device mode)
213
214      - Examples:
215        - usb_lpm_device_hid_mouse
216        - usb_lpm_device_hid_mouse_lite
217        - usb_lpm_host_hid_mouse
218
219  - 1.4.0
220    - New features:
221      - Examples:
222        - usb_device_hid_mouse/freertos_static
223        - usb_suspend_resume_device_hid_mouse_lite
224
225  - 1.3.0
226    - New features:
227      - Supported roles
228        - OTG
229
230      - Supported classes
231        - CDC RNDIS
232
233      - Examples
234        - usb_otg_hid_mouse
235        - usb_device_cdc_vnic
236        - usb_suspend_resume_device_hid_mouse
237        - usb_suspend_resume_host_hid_mouse
238
239  - 1.2.0
240    - New features:
241      - Supported controllers
242        - LPC IP3511 (Full Speed, Device mode)
243
244  - 1.1.0
245    - Bug fix:
246      - Fixed some issues in USB certification.
247      - Changed VID and Manufacturer string to NXP.
248
249    - New features:
250      - Supported classes
251        - Pinter
252
253      - Examples:
254        - usb_device_composite_cdc_msc_sdcard
255        - usb_device_printer_virtual_plain_text
256        - usb_host_printer_plain_text
257
258  - 1.0.1
259    - Bug fix:
260      - Improved the efficiency of device audio speaker by changing the transfer mode from interrupt to DMA, thus providing the ability to eliminate the periodic noise.
261
262  - 1.0.0
263    - New features:
264      - Supported roles
265        - Device
266        - Host
267
268      - Supported controllers:
269        - KHCI (Full Speed)
270        - EHCI (High Speed)
271
272      - Supported classes:
273        - AUDIO
274        - CCID
275        - CDC
276        - HID
277        - MSC
278        - PHDC
279        - VIDEO
280
281      - Examples:
282        - usb_device_audio_generator
283        - usb_device_audio_speaker
284        - usb_device_ccid_smart_card
285        - usb_device_cdc_vcom
286        - usb_device_cdc_vnic
287        - usb_device_composite_cdc_msc
288        - usb_device_composite_hid_audio
289        - usb_device_composite_hid_mouse_hid_keyboard
290        - usb_device_hid_generic
291        - usb_device_hid_mouse
292        - usb_device_msc_ramdisk
293        - usb_device_msc_sdcard
294        - usb_device_phdc_weighscale
295        - usb_device_video_flexio_ov7670
296        - usb_device_video_virtual_camera
297        - usb_host_audio_speaker
298        - usb_host_cdc
299        - usb_host_hid_generic
300        - usb_host_hid_mouse
301        - usb_host_hid_mouse_keyboard
302        - usb_host_msd_command
303        - usb_host_msd_fatfs
304        - usb_host_phdc_manager
305        - usb_keyboard2mouse
306        - usb_pin_detect_hid_mouse
307*/
308