summaryrefslogtreecommitdiff
path: root/src/portable
AgeCommit message (Collapse)Author
2022-06-18Merge pull request #1518 from mingpepe/masterHa Thach
Fix typo for log format
2022-06-17Allow more endpoint packet sizes for SAMDmaddyaby
Tested on SAMD51 - we can allow more packet sizes by checking that the set size value is greater than the requested packet size instead of exactly the same.
2022-06-17rp2040: use shared IRQ handlers, so user can also hook the USB IRQgraham sanderson
2022-06-17Fix typo for log formatmingpepe
2022-06-16Stub out dcd_edpt_close for samdmaddyaby
Not having this prevents the device from finishing the mounting process. Tested on a SAMD51 and didn't seem to need to actually do anything in the close function.
2022-06-16rp2040: make moving 1K of code into RAM optional - and off by defaultgraham sanderson
2022-06-13hcd_rp2040 improvements:Liam Fraser
- Stall now has priority over other interrupt responses - Delete eunused hcd_edpt_busy - Assert !ep->active when trying to start a new xfer - Assert !ep->active when handling buff_status bits - Set ep->xferred_len to 8 once a setup packet is finished so the data structure is accurate
2022-06-08make all hcd/dcd function used in isr into ram with ↵hathach
__no_inline_not_in_flash_func() for faster irq handling result is 1KB of code moved from rom -> ram
2022-06-08add tuh_configure() for port/dynamic host behavior confighathach
2022-06-07Merge pull request #1495 from hathach/enhance-tusb-configHa Thach
Better support multiple controllers configuration
2022-06-06Merge pull request #1481 from cr1901/msp430-misopt-fixHa Thach
msp430x5xx: Add fix for possible bug in msp430-elf-gcc 9.3.0.
2022-06-06more ci fixhathach
2022-06-06fix ci, remove use of CFG_TUSB_RHPORT0_MODE in bsphathach
2022-06-04update all dwc2 ports to support new dynamic controller supporthathach
2022-06-03make dwc2 stm32 rhport support dynamichathach
2022-06-02nrf5x: Fix DMA accessJerzy Kasenberg
There were two problems: - dma_running flag could be checked in USB interrupt (not set yet) then higher priority interrupt could start transfer, check dma_running (not set yet) set it to true start DMA; then when USB interrupt continues it starts another DMA that is not allowed - when DMA is started some registers can't be safely accessed, read can yield invalid values (SIZE.EPOUT, SIZE.EPISO) current implementation could start DMA for one OUT endpoint then check that another endpoint also has data and while DMA was not started right away, SIZE.EPOUT was copied already to MAXCNT register. Later on when DMA was started not all data was read from endpoint due to incorrect DMA size previously set. To prevent both cases dma_running is changed in atomic way. Only code that actually set this value to true starts DMA, code that tried and had dma_running flag already set simply defers DMA start to USB task. This eliminates also need to have mutex that was there to limit access to dma_running flag to one task only. transfer also now has started flag that is set only after dcd_edpt_xfer() sets up total_len and actua_len. Previously USB interrupt was disabled when total_len and actual_len were setup to prevent race condition when data arrived to ednpoint before transfer was setup was finished.
2022-06-02add __evenaccess keyword for CCRX compiler compatibilityRafael Silva
Signed-off-by: Rafael Silva <[email protected]>
2022-06-02fix iso int register typo Rafael Silva
druing the renaming int and iso endpoint configurations were swapped Co-authored-by: Koji KITAYAMA <[email protected]>
2022-06-02fix host preprocessor flag typoRafael Silva
Co-authored-by: Koji KITAYAMA <[email protected]>
2022-06-02style code for consistency with existing codebaseRafael Silva
2022-06-02remove duplicate link register bit macrosRafael Silva
Signed-off-by: Rafael Silva <[email protected]>
2022-06-02add support for renesas ra family of mcusRafael Silva
Signed-off-by: Rafael Silva <[email protected]>
2022-06-02generalize renesas LINK core driverRafael Silva
create local register access struct and move mcu specific code in preparation of support for other mcu families that use the LINK usb core Signed-off-by: Rafael Silva <[email protected]>
2022-06-02rename renesas driver to linkRafael Silva
link was chosen according to the name for the usb core on datasheets, LINK core Signed-off-by: Rafael Silva <[email protected]>
2022-06-01rename board specific macro for examplehathach
- BOARD_DEVICE/HOST_RHPORT_NUM to BOARD_TUD/H_RHPORT - BOARD_DEVICE/HOST_RHPORT_SPEED to BOARD_TUD/H_MAX_SPEED
2022-06-01Merge pull request #1454 from Iktek/bugfix_1453Ha Thach
overwrite grstctl on edpt_disable
2022-06-01grstctl set fifo + flush in one assignhathach
2022-06-01Merge pull request #1438 from Nikitarc/masterHa Thach
Update dwc2_stm32.h
2022-05-31Merge pull request #1381 from hathach/add-sof-isrHa Thach
Add SOF IRQ Handler
2022-05-30msp430x5xx: Add fix for possible bug in msp430-elf-gcc 9.3.0.William D. Jones
2022-05-26Merge pull request #1467 from kilograham/rp2040_cleanupHa Thach
Minor cleanup of RP2040 code post addition of Pico-PIO-USB
2022-05-24Merge pull request #1451 from kasjer/kasjer/pic32-sanity-fixesHa Thach
pic32 sanity fixes
2022-05-21Merge branch 'master' into ch32v307Ha Thach
2022-05-20Minor cleanup of RP2040 code post addition of Pico-PIO_USBgraham sanderson
* Removed some compiler warnings, and cleaned out unnecessary warning suppression from CMake suppress_tinyusb_warnings() * Made explicit family_configure_dual_usb_example() for DUAL mode examples as family_configure_target() may not generally be called multiple times for the same target * Renamed library pico_pio_usb to tinyusb_picio_pio_usb to be clearer and avoid conflict if someone already has a pico_pio_usb in their project * Added family_add_pico_pio_usb() method for adding Pico-PIO_SUB support to an existing example * Allowed tinyusb_pico_pio_usb to be added to regular apps using the Pico SDK
2022-05-10clean uphathach
2022-05-03overwrite grstctl on edpt_disablePascal Speck
2022-05-01dcd_pic32: Fix memory overwrite in incoming dataJerzy Kasenberg
When transfer was finished rx_fifo_read() read all that was to read RXPKTRDY was cleared allowing next packet to be received. Then xfer_complete was called. Interrupt for OUT endpoint was left enable, that would not be a problem if data was handled fast and new transfer was scheduled. For MSC when host sends a lot of data this interrupt that was enabled could cause epn_handle_rx_int() to be called after transfer was completed and next was not scheduled yet. Without TU_ASSERT that was added to detect this, incoming data was written past buffer provided by user code resulting in random memory corruption. This just blocks RX interrupt when transfer is finished, and also only unmasked rx interrupts are handled.
2022-05-01dcd_pic32: Add asserts transfer sanity checkJerzy Kasenberg
TU_ASSERTS added to detect transfer inconsistency.
2022-04-28more clean uphathach
2022-04-27clean uphathach
2022-04-26minor clean uphathach
2022-04-26improve pio usb endpoint handlerhathach
2022-04-26follow pio usb changeshathach
2022-04-22more with pio usbhathach
2022-04-22keep up with pio usbhathach
2022-04-21Merge branch 'master' into pio-hosthathach
2022-04-20Update dwc2_stm32.hNikitarc
Add missing #endif
2022-04-20add msec timeout to osal_queue_receive(), tud_task() and tuh_task() both ↵hathach
pending for event queue with timeout of 1 ms
2022-04-19Update dwc2_stm32.hNikitarc
Support STM32H7 with only 1 USB port: H72x / H73x / H7Ax / H7Bx
2022-04-18clean up pio driverhathach