Commit Graph

1250 Commits

Author SHA1 Message Date
Ryan Wendland
cc9c3feeae ohci: Fix bug in ed removal 2023-02-18 10:24:21 +10:30
Ryzee119
e89e8ba392 ohci: Direct port commands to the correct rhport. 2023-02-18 10:24:21 +10:30
Ryzee119
5d3c0fb922 ohci: Force reset of devices already connected on power up 2023-02-18 10:24:21 +10:30
Ryzee119
c1d0fd1bd7 ohci: Wait POTG time after port power 2023-02-18 10:24:21 +10:30
Ryzee119
2063ee5f15 ohci: Toggle frameinterval bit on update 2023-02-18 10:24:21 +10:30
Ryzee119
d5e6d02817 ohci: Leave SMM or bios mode during init 2023-02-18 10:24:21 +10:30
Ryzee119
c820c87692 ohci: Support configurable number of roothub ports 2023-02-18 10:24:21 +10:30
Ryzee119
d367e8f8a8 ohci: Expand roothub descriptors into unions 2023-02-18 10:24:21 +10:30
Ha Thach
49628d8c18 Merge pull request #1779 from P33M/rp2040_device_babble_fix
rp2040: avoid device-mode state machine hang
2023-01-31 21:38:27 +07:00
hathach
ddb061f639 fix typos 2023-01-31 19:03:31 +07:00
hathach
6759721e9a move errata to end of c file 2023-01-31 17:38:27 +07:00
hathach
19b6cbc616 add e15 prefix or walkaround related functions, also minor refactor 2023-01-31 17:15:42 +07:00
hathach
0cce42fcc6 minor clean up 2023-01-31 11:38:15 +07:00
hathach
6dd40603f9 fix typo 2023-01-30 11:46:52 +07:00
Ha Thach
88f3279c3c Merge branch 'master' into port-ft90x 2023-01-30 11:40:53 +07:00
Jonathan Bell
0d2078d295 rp2040: shuffle hw_endpoint members
Ordering by element size prevents alignment holes, and as a consequence the
host mode version of the struct is the same size as device, as pad bytes at
the end are used instead.
2023-01-24 12:05:32 +00:00
Jonathan Bell
73b0047efc rp2040: avoid device-mode state machine hang
Don't mark IN buffers as available during the last 200us of a full-speed
frame. This avoids a situation seen with the USB2.0 hub on a Raspberry
Pi 4 where a late IN token before the next full-speed SOF can cause port
babble and a corrupt ACK packet. The nature of the data corruption has a
chance to cause device lockup.

Use the next SOF to mark delayed buffers as available. This reduces
available Bulk IN bandwidth by approximately 20%, and requires that the
SOF interrupt is enabled while these transfers are ongoing.

Inherit the top-level enable from the corresponding Pico-SDK flag.
Applications that will not use the device in a situation where it could
be plugged into a Pi 4 or Pi 400 (for example, when directly connected
to a commodity hub or other host) can turn off the flag in the SDK.

v2: use a field in hw_endpoint to mark pending.

v3: Partial rewrite following review comments

- Stub functions out if the workaround is not required
- Only force-enable SOF while any vulnerable endpoints are active
- Respect dcd_sof_enable() functionality
- Get rid of all but necessary ifdef hackery
- Fix a bug where the "endpoint lock" was used with an uninitialised pointer.
2023-01-24 11:53:28 +00:00
Jonathan Bell
c3e47c31cc rp2040: export hw_endpoint_start_next_buffer() and hw_endpoint_lock_update()
The next change to the driver requires the export of these functions. Leave the
lock unimplemented for now.

Also move hw_set and hw_clear aliases into the top-level header file.
2023-01-23 10:55:20 +00:00
Ha Thach
ea098aeda1 Merge pull request #1847 from HiFiPhile/dwc2_iar
dwc2: fix iar warnings
2023-01-18 17:41:33 +07:00
Ha Thach
fa9d19027b Merge pull request #1405 from gregdavill/ch32v307
Add WCH CH32V307 port
2023-01-12 17:51:56 +07:00
hathach
3cf21c66b6 add dcd_remote_wakeup() stub 2023-01-12 15:26:48 +07:00
hathach
e61d4aefe6 rename driver with dcd_ to be consitent with other ports 2023-01-12 12:08:56 +07:00
hathach
3cc6cece07 add note for openocd with wch, also add wch-riscv.cfg 2023-01-12 10:25:48 +07:00
MasterPhi
9d19ed940e dwc2: fix IAR warnings. 2023-01-11 18:50:38 +01:00
Ha Thach
8775d55adc Merge pull request #1843 from HiFiPhile/ip3511
ip3511 : Fix IAR build.
2023-01-09 10:02:59 +07:00
MasterPhi
57de6016f9 ip3511 : Fix IAR build. 2023-01-08 11:23:18 +01:00
Ha Thach
949950e592 Merge branch 'master' into ch32v307 2023-01-07 23:46:46 +07:00
pete-pjb
f5cffeedec Fix typo in audio.h. Specifiy _ctrl_xfer struct in CFG_TUSB_MEM_SECTION
Add NULL check to loop in list_remove_qhd_by_addr() function in ehci.c
2023-01-03 10:33:36 +00:00
hathach
43b255f413 more typos 2022-12-04 19:44:01 +07:00
Bastien Nocera
6a2cf67289 Fix typos 2022-12-04 19:43:23 +07:00
Gordon McNab
aceab1dcf3 Merge branch 'hathach:master' into port-ft90x 2022-11-30 12:16:52 +00:00
hathach
c9c7dfa868 more clean up 2022-11-30 18:59:58 +07:00
hathach
069215c538 white spaces 2022-11-30 18:58:30 +07:00
Gordon McNab
fe63e30a44 Add FT9xx for cdc_dual_ports
Fix handling of interrupt endpoints. i.e. no ZLPs.
Fix the assignation of endpoint types.
Add button support for MM900evx boards.
On board support do not block for UART input.
2022-11-30 11:46:13 +00:00
Gordon McNab
7d8d3eca73 Fix transfers issues with FT9xx
Correct USB FIFO use for setup data phases (OUT transfers). We cannot stop traffic on the control endpoint so we set a flag and pull data from host when tinyUSB requests it from the USB FIFO. Extend this for all endpoints although currently not required.
Rename all instances of ft90x which can apply to ft93x as ft9xx.
Add support for the cdc_dual_ports example for ft9xx.
Add LED pin definition for board LED in a simple to access place on the Bridgetek MM900EVx boards.
2022-11-29 18:49:23 +00:00
Gordon McNab
1fce76ad47 Fix issue with the CDC SetLineCoding request
The SetLineCoding would fail as host would send the SETUP OUT phase before tinyUSB had setup a transaction for it. ft9xx port would ignore the transfer since there was no valid transaction setup for it. One SETUP data phase packet is cached now.
2022-11-28 17:41:00 +00:00
rppicomidi
9825fbe9ac Fix RP2040 Issue 1721 2022-11-23 13:12:31 -08:00
Mengsk
f3f3739073 Fix DCD build. 2022-11-07 13:38:35 +01:00
Mengsk
9d3d8fd5b0 Merge branch 'master' of https://github.com/hathach/tinyusb into bsp_412 2022-11-07 12:47:41 +01:00
Mengsk
1eae139aa9 Add support for STM32L412. 2022-11-07 12:32:36 +01:00
hathach
d2c9b8bcfb fix -wconversion-int and add minor comment 2022-11-04 16:14:35 +07:00
Ha Thach
b554c2ed83 Merge branch 'master' into rp2040-hcd-bulk 2022-11-04 15:42:50 +07:00
Ha Thach
5b1b383d2a Merge pull request #1676 from tswan-quasi/master
dcd_lpc_ip3511: isochronous support and endpoint accidental write fix
2022-10-24 19:08:58 +07:00
hathach
e3b7ed9ae9 use dummy for all ZLP for ip3511, fix lpc55 build with DEBUG=1 2022-10-24 18:43:21 +07:00
tswan-quasi
35e1a27c95 unused (void) cast 2022-10-21 15:06:30 -04:00
Ha Thach
bfcdef499a Merge pull request #1690 from tore-espressif/fix/espressif/iso_transfers
esp: Fix Isochronous transfers
2022-10-22 00:34:38 +07:00
tswan-quasi
0b55047081 typo fix 2022-10-20 11:04:49 -04:00
tswan-quasi
fe4278554b dummy buffer only on EP0 OUT ZLPs 2022-10-20 11:02:57 -04:00
Ha Thach
39be00975c Merge pull request #1680 from LynnL4/port-stm32u5xx
Port stm32u5xx
2022-10-19 23:10:30 +07:00
Ha Thach
2cd4e27e98 Merge pull request #1523 from maddyaby/dcd_edpt_open
Allow more endpoint packet sizes for SAMD
2022-10-19 22:56:36 +07:00