1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2025-12-22 13:03:54 +01:00

13 Commits

Author SHA1 Message Date
Gunar Schorcht
93c547aaa8 drivers/usbdev_synopsys_dwc2: disable DMA mode
DMA mode is disabled for now due to several problems:
 - The STALL bit of the OUT control endpoint does not seem to be cleared automatically on the next SETUP received. At least the USB OTG HS core does not generate an interrupt on the next SETUP received. This happens, for example, when CDC ACM is used and the host sends the SET_LINE_CODING request. In this case the enumeration of further interfaces, for example CDC ECM is stopped.
- The Enumeration fails for CDC ECM interface which uses URB support.
2023-03-14 14:04:20 +01:00
Gunar Schorcht
4d19f21703 driver/usbdev_synopsys_dwc2: use correct number of EPs
This commit fixes the problem that the driver uses the wrong number of EPs when using the USB OTG HS core. The reason is that the constant `DWC2_USB_OTG_FS_NUM_EP` is used in several places even though there is a function `_max_endpoints` which takes into account the configuration used. For most MCUs this is not a problem, because they have only a USB OTG FS core anyway. But for MCUs like the STM32, which has both a USB OTG FS core and a USB OTG HS core, it matters.
2023-03-11 16:57:23 +01:00
Koen Zandberg
33ba2adc68
drivers/usbdev_synopsys_dwc2: add stall functions to usbdev 2023-02-28 11:00:06 +01:00
Gunar Schorcht
6ab71b1dee drivers/usbdev_synopsys_dwc2: add EFM32 support 2022-12-07 16:34:34 +01:00
MrKevinWeiss
17cce015d4
treewide/stm32: Make CLOCK_HS* configurable 2022-11-03 11:37:28 +01:00
Gunar Schorcht
1dfe79fe7c drivers/usbdev_synopsys_dwc2: use DWC2_USB_OTG_FS_TOTAL_FIFO_SIZE
Use `DWC2_USB_OTG_FS_TOTAL_FIFO_SIZE` instead of `USB_OTG_FS_TOTAL_FIFO_SIZE` since the latter is only defined in the vendor headers for STM32 MCUs. The STM32-specific problem that `USB_OTG_FS_TOTAL_FIFO_SIZE` is not defined in the vendor headers for all STM32 families has therefore been moved from the driver to the STM32-specific USB device header.
2022-10-17 20:03:57 +02:00
Koen Zandberg
0fca912e91
Merge pull request #18714 from gschorcht/drivers/usbdev_synopsys_dwc2_hs_utmi
drivers/usbdev_synopsys_dwc2: add support for internal UTMI HS PHY
2022-10-16 14:05:32 +02:00
Gunar Schorcht
41b0a3efae drivers/usbdev_synopsys_dwc2: add internal UTMI HS PHY support 2022-10-16 11:35:42 +02:00
Koen Zandberg
8cecb81517
usbdev_synopsys_dwc2: Mask RX FIFO irq with DMA
When using DMA to transfer endpoint data from the RX FIFO to the
endpoint memory, the RXFLVL irq is not needed as that is already handled
by the DMA. Furthermore, servicing this irq anyway can cause the event
handling to interpret data from the FIFO as the endpoint and status
marker during the DMA transfer.

This commit masks the RXFLVL irq while DMA is used for the endpoint
transfers.
2022-10-12 10:18:15 +02:00
Gunar Schorcht
85054e3d1a drivers/usbdev_synopsys_dwc2: don't init DM/DP GPIOs if ULPI is used 2022-10-09 14:00:41 +02:00
Gunar Schorcht
41e25c53a3 drivers/usbdev_synopsys_dwc2: fix settings for STM32
The existence of the macros USB_OTG_GUSBCFG_ULPI_UTMI_SEL, USB_OTG_GUSBCFG_PHYIF and USB_OTG_GUSBCFG_DDRSEL depends on a specific STM32 line and not on STM32 itself. Therefore, the settings are made when the macros are defined.
2022-10-09 13:14:42 +02:00
Gunar Schorcht
95f74faf6b drivers/usbdev_synopsys_dwc2: add ULPI HS PHY support 2022-10-06 06:26:22 +02:00
Gunar Schorcht
7db66e49b3 drivers: add USB OTG FS/HS driver for Synopsys DWC2 IP core 2022-09-27 01:00:57 +02:00