summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-01-20dcd_da1469x: Re-enable RX after resumeJerzy Kasenberg
Going to suspend states disable reception on non-0 RX endpoints. Now when USB resume condition is detected, all RX endpoints with pending transfers are resumed.
2022-01-20dcd_da1469x: Fix over-run/under-run maskJerzy Kasenberg
Bit mask enabling/disabling over-run/unde-run was shifted by one nibble, so interrupt was never enabled. It did not force any issue as this situation could only happen on ISO endpoints without DMA.
2022-01-19vendor: Add tx flush functionalityJerzy Kasenberg
So far tud_vendor_n_write() always flushed data. It requires to have whole vendor packed constructed before in one buffer. With this change data do get flushed when endpoint size is filled on write, when there is no enough data to fill endpoint data is not sent and subsequent calls to write functions can add more bytes. Vendor code needs to call tud_vendor_n_flush() when packet is ready to be sent.
2022-01-19Merge pull request #1288 from hathach/rx-host-example-ciHa Thach
enable ci build for RX65X host example
2022-01-19vendor: Add tx callbackJerzy Kasenberg
Other drivers already have notification about data sent. It allows batter control in application on vendor protocol level.
2022-01-19enable ci build for RX65X host examplehathach
update comment for unit not ready 3a-00 additional sense
2022-01-19Merge pull request #1265 from kkitayam/add_hcd_for_renesas_rxHa Thach
Add HCD driver for Renesas RX
2022-01-19Merge pull request #1287 from alisitsyn/bugfix/fix_idfgh6508Ha Thach
fix idfgh-6508: return type in tu_fifo_peek_n()
2022-01-19nrf5x: Fix EP OUT race conditions in OS buildJerzy Kasenberg
When two tasks entered dcd_edpt_xfer() it was possible that first disabled interrupt to setup total_len and actual_len but second task for another endpoint enabled interrupt between total_len and actual_len resulting in race condition with interrupt, hence mutex is added on top of interrupt being blocked.
2022-01-19nrf5x: Fix DMA access race conditionJerzy Kasenberg
In multi-thread mode starting DMA in thread mode was prone to race condition resulting in infinite loop. It may happen on single core CPU with strict priority based tasks scheduler where ready high prio task never yields to ready low prio task (Mynewt). Sequence that failed (T1 - low priority task, T2 - high priority task) - T1 called start_dma() - T1 set _dcd.dma_running (DMA not started yet, context switch happens) - T2 took CPU and saw that _dcd.dma_running is set, so waits for _dcd.dma_running to be 0 - T1 never gets CPU again, DMA is not started T2 waits forever OSAL mutex resolves problem of DMA starting from thread-context.
2022-01-19fix idfgh-6508: return type in tu_fifo_peek_n()email
https://github.com/espressif/esp-idf/issues/8161
2022-01-19Merge pull request #1286 from hathach/fix-fifo-mutex-when-fullHa Thach
fix locked mutex when fifo is full
2022-01-19Merge pull request #1279 from kasjer/kasjer/nrf5x-int-raceHa Thach
nrf5x: Fix EP OUT race conditions
2022-01-19fix locked mutex when fifo is fullhathach
2022-01-19Merge pull request #1283 from kasjer/kasjer/olimex-pic32-board-fixesHa Thach
olimex pic32 board fixes
2022-01-18Merge pull request #1274 from kasjer/kasjer/nrf5x-request-clock-in-mynewtHa Thach
nrf5x: Request HFXO via OS
2022-01-18nrf5x: Request HFXO via OSJerzy Kasenberg
Mynewt (similar to Soft Device) has its own reference counting for HFXO oscillator. So far TinyUSB requested HFXO when VBUS was detected and stopped when VBUS was removed. But with Mynewt running HFXO can be stopped when other interested parties don't require HFXO anymore. This results in very difficult to track USB transmission errors. This change enables Mynewt specific HFXO management in Soft Device fashion.
2022-01-17pic32/olimex boards: Fix active state of buttonJerzy Kasenberg
Buttons for olimex_emz64 and olimex_hmz144 should be set to active low in board configuration.
2022-01-17pic32mz: Fix remote_wakeup without OSJerzy Kasenberg
Remote wakeup requires 10ms of delay when RESUME bit is toggled. It was covered for OS build. For non-OS build simple delay based on board_millis() is used to wait required amount of time. Without this remote wakup may not work.
2022-01-17Merge pull request #1276 from kkitayam/fix_video_capture_frame_intervalHa Thach
Fix video_capture example fails enumeration when 8FPS
2022-01-17Merge pull request #1284 from kasjer/kasjer/ft9xx-mynewtHa Thach
ft9xx: Fix Mynewt build
2022-01-17ft9xx: Fix Mynewt buildJerzy Kasenberg
Includes were moved few lines down to restore build with Mynewt build system.
2022-01-17Merge pull request #1277 from liamfraser/fix-cmake-skipHa Thach
Fix family_support.cmake to use new skip.txt and only.txt files
2022-01-17Merge pull request #1238 from ftdigdm/port-ft90xHa Thach
Port ft90x
2022-01-17Merge pull request #1269 from mysterywolf/masterHa Thach
[rt-thread] add rt-thread os in readme
2022-01-17Merge branch 'master' into port-ft90xHa Thach
2022-01-17correct link in rsthathach
2022-01-16Merge pull request #1270 from kasjer/kasjer/pic32mzHa Thach
Driver for Microchip PIC32MZ family
2022-01-16change OPT_MCU_PIC32MZ to value of 1900hathach
2022-01-16Merge pull request #1282 from hathach/fix-esp-ciHa Thach
Fix esp ci
2022-01-16update for s3hathach
2022-01-16more ci fixhathach
2022-01-16fix esp ci build with IDF version 5hathach
2022-01-16Merge pull request #1235 from vmilea/feature/feedback_formatHa Thach
Support disabling feedback format correction #1234
2022-01-16update format correction with actual bus speedhathach
2022-01-14nrf5x: Fix EP OUT race conditionsJerzy Kasenberg
When dcd_edpt_xfer() starts new transfer two separate problems were observed. For both problems stream of OUT packets was pouring from host. First problem was that total_len and actual_len were not atomic. In case where incoming OUT packets are less (63) than MPS (64), actual_len and total_len are set 63. Then transfer complete from USBD is called that will schedule next 64 bytes transfer. At that point incoming packet would start DMA if there is place in RAM, normally it does not happen since actual_len == total_len. If packets arrives and interrupt is raised after total_len is set (64) but actual_len is still 63 from previous transfer, interrupt code sees that there is place in ram (1 byte) and transfer this 1 byte to buffer that was already filled with previous packet. To remedy this USB interrupt is blocked during transfer setup. Second problem can happen when dcd_edpt_xfer setups xfer->total_len and actual_len correctly but then context switch happens before xfer->data_received is checked. If during this time two packets arrive one will be copied to RAM second will stay in endpoint with data_received set to 1. Then when xfer_edpt_xfer() checks data_receive flag it starts DMA again overwriting data. To remedy this, data_received is checked together with check if data was already transferred. If transfer was complete, there is no need to start DMA yet. In such case data_received will be handled in same place by next xfer_edpt_xfer() correctly.
2022-01-13Fix family_support.cmake to use new skip.txt and only.txt files for skipping ↵Liam Fraser
mcus
2022-01-13Fix dwFrameIntervalStep and dwMaxFrameIntervalkkitayam
dwMaxFrameInterval minus dwMinFrameInterval should be evenly divisible by dwFrameIntervalStep.
2022-01-07Add BSPs for Microchip PIC32MZ MCUsJerzy Kasenberg
Two boards from Olimex are added: olimex_hmz144 with PIC32MZ2048EFM144 olimex_emz64.c with PIC32MZ2048EFH064 Both can be programmed with Segger JLINK probe using ICSP interface. (JTAG not tested but could also work but header is not mounted).
2022-01-07Add driver for PIC32MZ MCUsJerzy Kasenberg
Device-only driver for PIC32MZ MCUs.
2022-01-07Merge branch 'master' into feature/feedback_formatValentin Milea
2022-01-07Disable feedback format correction by default #1234Valentin Milea
2022-01-06Update README.rstMan, Jianting (Meco)
2022-01-06Merge pull request #1272 from EmergReanimator/cortex-m33Ha Thach
Enable breakpoints for ARM8M (e.g. cortex-m33)
2022-01-06Enable breakpoints for ARM8M (e.g. cortex-m33)EmergReanimator
2022-01-06Merge pull request #1271 from tannewt/rpi_zeroHa Thach
Add Raspberry Pi Zero W and Zero 2 W
2022-01-05Skip dfu and usbtmc on pi zeroScott Shawcroft
2022-01-05No exceptions on broadcom. Add parens to ifScott Shawcroft
2022-01-05Unify skip and only logic for build scriptsScott Shawcroft
And switch to a single file that can include mcu, family or board.
2022-01-05Skip net and freertos examplesScott Shawcroft