Skip to content

Commit

Permalink
update changelog for 0.16.0
Browse files Browse the repository at this point in the history
  • Loading branch information
hathach committed Nov 24, 2023
1 parent d343321 commit e558869
Showing 1 changed file with 142 additions and 0 deletions.
142 changes: 142 additions & 0 deletions docs/info/changelog.rst
Expand Up @@ -2,6 +2,148 @@
Changelog
*********

0.16.0
======

- New controller driver: MAX3421e (usb host shield), rusb2 (Renesas USB2.0), ChipIdea fullspeed
- New MCUs: MCXn9, nRF5340, STM32: G0, G4, L5, U575, U5A5, RA6m5, CH32F20x
- Add initial TypeC PowerDelivery support with STM32G4
- Remove submodules and use python script to manage repo dependencies #1947
- Add CMake support for most families and boards, move build file from tools/ to examples/build_system
- Add ETM trace support with JTrace for nrf52840, nrf5340, mcb1857, stm32h743eval, ra6m5
- [osal] Make it possible to override the osal_task_delay() in osal_none
- Add CDC+UAC2 composite device example
- Enhance Hardware-in-the-loop (HIL) testing with more boards: rp2040, stm32l412nucleo, stm32f746disco, lpcxpresso43s67

Controller Driver (DCD & HCD)
-----------------------------

- Add new ISO endpoint API: dcd_edpt_iso_alloc() and dcd_edpt_iso_activate()
- Remove legacy driver st/synopsys

- EHCI

- [iMXRT] Add dache clean/invalidate when memory is in cacheable memory
- Fix portsc write issue which cause problem with enumeration
- Fix an issue when doing port reset write to portsc
- Fix port change detect is not recognized when power on with attached device
- Fix xfer failed with disconnected device as stalled
- Fix error on EHCI causes xfer error in non-queued qhd which cause memory fault
- Un-roll recursive hub removal with usbh queue
- Fix issue when removing queue head
- Implement hcd_edpt_abort_xfer()
- use standard USB complete interrupt instead of custom chipidea async/period interrupt to be more compatible with other ehci implementation
- refactor usb complete & error isr processing, merge, update. Fix EHCI QHD reuses QTD on wrong endpoint
- Improve bus reset, fix send_setup() not carried out if halted previously
- Fix clear qhd halted bit if not caused by STALL protocol to allow for next transfer

- ChipIdea Highspeed

- Fix control transfer issue when previous status and new setup complete in the same isr frame
- [imxrt] Add dcache support for cache region

- ChipIdea Fullspeed

- Generalize ChipIdea Fullspeed driver for mcxn9 (port 0), kinetis

- nrf

- Fix DMA race condition with ISO OUT transfer #1946
- Add support for nRF5340 with pca10095 board

- Renesas rusb2

- Generalize rusb2 driver for ra, rx mcus
- rework both dcd and hcd for better multiple ports support
- Add support for board with HS USB port: ra6m5 port1

- rp2040

- [dcd] Make writes to SIE_CTRL aware of concurrent access
- [hcd] add hcd_frame_number(), hcd_edpt_abort_xfer() for pio-usb host

- stm32 fsdev:

- Add STM32L5 support
- Implement dcd_edpt_iso_alloc() and dcd_edpt_iso_activate()

- OHCI

- Allows configurable root hub ports, handles SMM mode (Ref OHCI spec 5.1.1.3.3) and Bios mode (Ref OHCI spec 5.1.1.3.4)
- Fix FrameIntervalToggle must be toggled after we write the FrameInterval (Ref OHCI Spec 7.3.1)
- Wait PowerOnToPowerGoodTime after we enable power of the RH ports (Ref OHCI Spec 7.4.1)
- Generate port interrupts for devices already connected during init.
- Fix issue when removing queue head
- Disable MIE during IRQ processing and clear HccaDoneHead on completion as per OCHI Spec Page 80

Device Stack
------------

- Add optional hooks tud_event_hook_cb()
- Audio (UAC2)

- Fix feedback EP buffer alignment.
- Fix encoding, update example
- Improve IN transfer

- Bluetooth

- Add historical EP compatibility for Bluetooth HCI

- CDC

- Fix line_coding alignment
- Fix typo in cdc line coding enum

- MIDI

- Fix stream_write() always writes system messages to cable 0
- Fix incorrect NOTE_ON, NOTE_OFF definitions

- USBTMC: Fix tmc488 bit order

- Vendor: fix read()/write() race condition

- Video (UVC)

- Add the capability for video class to handle a bulk endpoint in the streaming interface.

Host Stack
----------

- USBH

- Add new APIs: tuh_interface_set(), tuh_task_event_ready(), tuh_edpt_abort_xfer(), tuh_rhport_reset_bus(), tuh_rhport_is_active()
- Fix issue when device generate multiple attach/detach/attach when plugging in
- Prefer application callback over built-in driver on transfer complete event
- Correct hcd_edpt_clear_stall() API signature
- Separate bus reset delay and contact debouncing delay in enumeration
- Support usbh_app_driver_get_cb() for application drivers
- Fix usbh enumeration removal race condition
- Add optional hooks tuh_event_hook_cb()

- CDC

- Breaking: change tuh_cdc_itf_get_info() to use tuh_itf_info_t instead of tuh_cdc_info_t
- Fix cdc host enumeration issue when device does not support line request
- Add support for vendor usb2uart serial: ftdi, cp210x, ch9102f
- Improve sync control API e.g tuh_cdc_set_control_line_state(), tuh_cdc_set_line_coding()

- HID

- Add new APIs tuh_hid_send_report(), tuh_hid_itf_get_info(), tuh_hid_receive_ready(), tuh_hid_send_ready(), tuh_hid_set_default_protocol()
- Change meaning of CFG_TUH_HID to total number of HID interfaces supported. Previously CFG_TUH_HID is max number of interfaces per device which is rather limited and consume more resources than needed.

- HUB

- Fix handling of empty "status change" interrupt
- Fix issue with hub status_change is not aligned

- MSC

- Fix bug in tuh_msc_ready()
- Fix host msc get maxlun not using aligned section memory

0.15.0
======

Expand Down

0 comments on commit e558869

Please sign in to comment.