summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2021-09-24usbd: Workaround for non standard device descriptor requestJerzy Kasenberg
Windows and Linux host during enumeration requests device descriptor with request size set to 64 bytes when device was in default state (no address). Those systems do not want 64 bytes though since usb descriptors is only 18 bytes long so they silently expect that only one packet will be received possibly 18 bytes for EPS > 16 or 8 or 16 bytes for smaller EP0. For devices with CFG_TUD_ENDPOINT0_SIZE size 8 or 16 there was workaround that reduced request size to CFG_TUD_ENDPOINT0_SIZE and that was enough to satisfy Windows and Linux hosts. However USBCV testing application also requests device descriptor but with size set to 18 bytes. Workaround for Window/Linux prevented USBVC to tests devices with 8 bytes EP0 size since it send only 8 bytes while application did wanted 18 bytes. Solution that satisfies both cases it to check if in default state device descriptor request wants more bytes than descriptor size (18). If so host is expecting to receive less bytes then requested and workaround would be applied since Linux/Windows only try to read one packet. If 18 bytes was requested as is the case for USBCV, core returns descriptor in 2 or 3 packets as application expects.
2021-09-24dcd_da146xx: Implement dcd_edpt_close_all()Jerzy Kasenberg
Unconditionally disables all endpoints except EP0.
2021-09-24dcd_da146xx: Clear transfer data on dcd_edpt_closeJerzy Kasenberg
Closing endpoint clears data in affected xfer_ctl_t
2021-09-24dcd_da146xx: Remove registers pointer from xfer_ctl_tJerzy Kasenberg
Note: this commit does not change any logic. xfer_ctl_t structure keeps all dynamic data connected with transfer. It used to have pointer to register set that was constant and was there for convenience only. Removing register pointer from structure makes cleanup easier as whole structure can be erased with memset like function. In many cases functions were using local variable regs and xfer->regs which were same, that could be confusing so this part is unified. Few macros were added for easy conversion between epnum, xfer, and regs.
2021-09-23dcd_da146xx: Update bus handlingJerzy Kasenberg
So far bus reset was handled (with some holes in it). Sleep and remote wakeup were not really tested and did not work. With this change: - bus reset is reworked - remote wakeup works - bus signal sleep is handled
2021-09-23dcd_da146xx: Handle only enabled interruptsJerzy Kasenberg
Not much of an improvement but handle only interrupts that were enabled and are expected.
2021-09-23Merge pull request #1093 from szymonh/masterHa Thach
Enforced buffer boundaries for hid devices
2021-09-18Merge pull request #1094 from kasjer/kasjer/da146xx-vbus-handlingHa Thach
dcd_da146xx: Add VBUS handling
2021-09-18update dcd attr for mm32hathach
2021-09-18Merge branch 'master' into zhangslice-masterhathach
2021-09-17rpi start. doesn't workScott Shawcroft
2021-09-17dcd_da146xx: Add VBUS handlingJerzy Kasenberg
DA146xx are Bluetooth devices that may be battery powered and when not connected to USB host there is no need for USB peripheral to be running. This change allows to enable USB peripheral when VBUS is present otherwise USB is down reducing power consumption. tud_vsub_changed() function must be called whenever VBUS change was detected. For bus-powered devices this function should be called at startup since VBUS must be present while device is working.
2021-09-17minor clean uphathach
2021-09-17use correct resume detection for kl25zhathach
2021-09-17minor update to dcd khcihathach
2021-09-15Fix stall interrupt handlingkkitayam
2021-09-15merge master and minor clean uphathach
2021-09-15Merge branch 'master' of github.com:hathach/tinyusb into ↵hathach
kkitayam-impl_close_all_for_khci
2021-09-15Merge pull request #1062 from HiFiPhile/fifo_dcd_transdimensionHa Thach
Improvements for dcd_transdimension
2021-09-14Reset EP flags on close.MasterPhi
2021-09-15correct assoc_itf_count for bth driverhathach
2021-09-14make vendor driver more flexiblehathach
- skip additional custom descriptor between interface and endpoints - can have up to 2 bulk endpoint ( 1 in & 1 out)
2021-09-14update configuration parserhathach
2021-09-14Fix warning.MasterPhi
2021-09-14usbd pre-compute total interface length without replying on driver openhathach
2021-09-14Merge pull request #1087 from HiFiPhile/nuc_wkpHa Thach
NUC126: fix remote_wakeup
2021-09-13Enforced buffer boundaries for hid devicesszymonh
2021-09-13Merge pull request #1091 from hathach/esp32sx-complianceHa Thach
Esp32sx compliance
2021-09-13esp32sx implement dcd_remote_wakeup(), fully compliance to chapter9 test suitehathach
2021-09-13implement dcd_edpt_close_all(), pass chapter9 test suite (without remote wakeup)hathach
2021-09-13Add size check to tud_bt_hci_cmd_cb call in bth_device.cszymonh
2021-09-13clean uphathach
2021-09-13clear PID along with clear stallhathach
2021-09-13Merge branch 'nuc_wkp' of https://github.com/HiFiPhile/tinyusb into ↵hathach
HiFiPhile-nuc_wkp
2021-09-12Prevent buffer overflow in bth_device.cszymonh
2021-09-13refactor nxp TDI dcd_edpt_xfer_fifohathach
2021-09-12Merge branch 'fifo_dcd_transdimension' of https://github.com/HiFiPhile/tinyusbhathach
2021-09-11nxp tdi: implement dcd edpt close allhathach
2021-09-11nxp tdi: fix error td prevent further transferhathach
2021-09-10reset PID to DATA0 on clear_stall.MasterPhi
2021-09-10Fix remote_wakeupMasterPhi
2021-09-10Shorter expr.MasterPhi
2021-09-10Fix dcd_edpt_clear_stall to reset data togglekkitayam
2021-09-09dcd_edpt_xfer_fifo: use qtd_init if restriction not met.Mengsk
2021-09-09nxp tdi: enhance qhd using DCD_ATTR_ENDPOINT_MAXhathach
2021-09-09nxp tdi implement remote wakeuphathach
enhance bus reset, unplugged, suspend, resume detection
2021-09-09remove connected check for DCD_EVENT_UNPLUGGED since previous bus reset can ↵hathach
clear this implement unplugged detection for trans dimension dcd
2021-09-09add other speed descriptor callback ↵hathach
tud_descriptor_other_speed_configuration_cb() example implement tud_descriptor_device_qualifier_cb() and tud_descriptor_other_speed_configuration_cb() on high speed device to fully compliant to usbcv
2021-09-09Fix stall handlingkkitayam
2021-09-08Implement dcd_edpt_close_all for NXP khcikkitayam