Commit Graph

3995 Commits

Author SHA1 Message Date
Brent Kowal
5122d6d109 Combined DCD MUSB implementations
Combined the new MAX32 MUSB implementation with the existing (TI) implementation to provide generic code base for working the MUSB DCD peripheral.
 - Added abstraction calls for FIFO setup, EP registers, Ctrl registers and interrupt setup.
 - Combined TM4C and MSP432E into a single header file.
 - Created musb_max32.h, and removed the MAX32 specific C implementation.
 - Updated MAX32 build system to use dcd_musb.c.
 - Added MAX32 conditions for cdc_dual_ports example descriptors missed during first testing.
2024-07-25 09:08:37 -04:00
hathach
02caf00772 simplify btable rx/tx count/address access 2024-07-25 19:00:59 +07:00
hathach
a5bc0430f7 fix race condition where reset event cleaar setup count 2024-07-25 16:49:01 +07:00
hathach
0eb0baed19 fsdev: remove unused _setup_packet 2024-07-25 11:53:42 +07:00
hathach
2f8078f5b5 minor changes 2024-07-24 16:59:12 +07:00
hathach
c0f38ebf8d fsdev read/write packet use unaligned function 2024-07-23 19:53:41 +07:00
hathach
4de46fcf97 fix a bug in fsdev introduced by #1942 2024-07-22 21:07:28 +07:00
Ha Thach
e9f9d43d67 Merge pull request #2723 from liamfraser/rp2040_tweaks
RP2040 tweaks
2024-07-19 21:33:50 +07:00
Ha Thach
9a418317f3 Merge pull request #2694 from feaser/keil_weak_fix
Additional fix related to issue #1018. Corrects the usage of TU_ATTR_WEAK for the Keil compiler
2024-07-19 21:20:55 +07:00
Ha Thach
dcf133b6ae Merge pull request #2681
usbh: Add set address recovery time
2024-07-19 21:10:31 +07:00
hathach
8183433600 fix compile with tud_vendor_control_xfer_cb() and check tud_descriptor_device_cb() 2024-07-19 21:05:10 +07:00
hathach
e92acf0a91 also migrate tud_descriptor_device_qualifier_cb() / tud_descriptor_other_speed_configuration_cb() 2024-07-19 20:53:23 +07:00
Frank Voorburg
d040644b6c Additional fix related to issue #1018. Corrects the usage of TU_ATTR_WEAK for the Keil
compiler for the callback functions:

* tud_descriptor_bos_cb()
* tud_vendor_control_xfer_cb()
* tud_mount_cb()
* tud_umount_cb()
* tud_suspend_cb()
* tud_resume_cb()

Without the fix for the first two functions, the USB device won't enumerate properly, if
the device makes use of a BOS description. For example when using a Microsoft OS 2.0
platform capability descriptor to set a specific Device Interface GUID for WinUSB.

The fix for the other four functions were added, because it's probably just a matter of
time before someone runs into the same problem with those callback functions.
2024-07-19 20:43:26 +07:00
hathach
6fb6602a09 - add tud_cdc_n_ready() though not used
- usbd now change _usbd_dev.cfg_num before calling driver's open()
2024-07-19 18:08:04 +07:00
hathach
be18af8235 revert changes to usbds configuration_reset() (deal with it in separated PR) 2024-07-19 17:10:53 +07:00
HiFiPhile
772398f6ea Save setup_count on bus reset. 2024-07-19 17:02:57 +07:00
HiFiPhile
a1fd43ebaf Clear _usbd_dev prior to driver reset. 2024-07-19 17:02:56 +07:00
HiFiPhile
60b3d14d19 Check tud ready check for OUT xfer. 2024-07-19 17:02:53 +07:00
HiFiPhile
ffe1d0664b UAC2: Fix memclr on driver reset. 2024-07-18 20:02:57 +02:00
graham sanderson
31a979a6cc fix some clang compiler warnings 2024-07-18 11:11:06 +01:00
graham sanderson
0d72f153cf fix arguable bug caught as warning by LLVM embedded toolchain for ARM 14.0.0 2024-07-18 11:11:06 +01:00
YixingShen
15766ad988 fixed _find_desc_format 2024-07-18 00:46:20 +08:00
Liam Fraser
3804ab9a67 RP2040: no need to clear usb_hw (usb registers) as they are reset to default state by a hardware reset 2024-07-17 15:47:00 +01:00
Liam Fraser
770efd9b46 RP2040: Use our own unaligned memcpy to avoid alignment faults with some memcpy implementations 2024-07-17 15:47:00 +01:00
hathach
0004faca83 minor update hid device 2024-07-17 19:29:21 +07:00
hathach
0ecf15bc61 follow up to #2253
- rename tud_hid_report_fail_cb() to tud_hid_report_failed_cb() and change its signature
- use default implementation for hid callbacks to be compatible with keil compiler
- code format
2024-07-17 14:35:23 +07:00
Hardy Griech
6b0b889f25 avoid recursions in tud_network_recv_renew() 2024-07-15 18:15:01 +02:00
hathach
4ce1cce40a simplify dwc2 test mode
- all dwc2 ip seems to support test mode in both fs/hs -> remove TUP_USBIP_DWC2_TEST_MODE
- remove dcd_check_test_mode_support(), all should be supported
- move enum tusb_feature_test_mode_t to tusb_types.h
2024-07-12 20:17:14 +07:00
hathach
1f590c3628 - add tud_cdc_configure_fifo() to replace CFG_TUD_CDC_PERSISTENT_TX_BUFF
- new line, and code format
2024-07-12 16:53:21 +07:00
Brent Kowal
13f5f20c98 Pre-commit fixes.
Resolve codespell and EOF errors found in the pre-commit CI task.
2024-07-11 12:13:30 -04:00
hathach
ca12a57902 add u for unsigned 2024-07-05 15:19:16 +07:00
Ha Thach
bd562e4180 Revert "audio.h: fix error ISO C restricts enumerator values to range of 'int'" 2024-07-05 15:15:00 +07:00
Brent Kowal
2353c4ffba Add MAX78002 Support
-Added support for MAX78002, MAX78002EVKIT
 -Added provisions for remaining MAX32 USB parts
2024-07-01 17:31:38 -04:00
Brent Kowal
0b82af61f3 AD-APARD32690-SL Support and Cleanup
- Added BSP for AD-APARD32690-SL board (apard32690)
 - Ran clang-formatting on previously committed code
 - Removed LOG messages from dcd_max32.c
2024-07-01 16:31:17 -04:00
Brent Kowal
0f288326cc Initial Commit for MAX32 Support
Initial commit for the port of TUSB to MAX32xxx parts, staring with MAX32690
 - Added dcd_max32.c (based on dcd_musb.c) for interfacing with the peripheral
 - Added MAX32690 part family support
 - Added max32690evkit board support
 - Updated examples for unique EP number requirement
 - Updated get_deps.py to fetch the MSDK

Known Issues / Additional Testing Required
 - msc_dual_lun only shown 1 volume on Windows
 - USBTMC does not have a valid Windowsdriver
 - DFU does not have a valid Windows driver
 - WebUSB is "Device not Recognized"
 - Need to test build scripts with IAR and Clang
2024-06-28 16:55:27 -04:00
Davide Gerhard
8f9a57636c audio.h: fix error ISO C restricts enumerator values to range of 'int'
fix error

~/dsp/libs/tinyusb/src/class/audio/audio.h:643:53: error: ISO C restricts enumerator values to range of 'int' before C23 [-Werror=pedantic]
  643 |   AUDIO_CHANNEL_CONFIG_RAW_DATA                   = 0x80000000, // TODO
      |                                                     ^~~~~~~~~~
compilation terminated due to -Wfatal-errors.

Closes: https://github.com/hathach/tinyusb/issues/2690
2024-06-28 19:57:59 +02:00
HiFiPhile
7125ac20ca Merge pull request #2691 from ra1nb0w/strict-overflow
audio_device.c: fix strict-overflow warning with gcc >= 12
2024-06-28 11:12:56 +02:00
Davide Gerhard
8f699023f3 audio_device.c: fix strict-overflow warning with gcc >= 12
Fix the following error

~/libs/tinyusb/src/class/audio/audio_device.c:1493:23: error: assuming pointer wraparound does not occur when comparing P +- C1 with P +- C2 [-Werror=strict-overflow]
 1493 |         while (p_desc < p_desc_end)
      |                ~~~~~~~^~~~~~~~~~~~
compilation terminated due to -Wfatal-errors.
2024-06-28 10:55:43 +02:00
HiFiPhile
6d4e2f6c16 Fix GenID 3.10 issue on STM32L4. 2024-06-27 22:02:18 +02:00
Davide Gerhard
85e1f423bf remove double semicolon since ISO C not allow it
ISO C does not allow extra ';' outside of a function [-Werror=pedantic]
2024-06-27 21:30:16 +02:00
HiFiPhile
eefca229b6 Merge branch 'master' of https://github.com/hathach/tinyusb into dwc2_dma 2024-06-27 20:49:40 +02:00
Ha Thach
13dedddd19 Merge pull request #2686 from hathach/add-host-devinfo 2024-06-25 15:29:17 +07:00
Ha Thach
044f4d1801 Merge pull request #2676 from Okarss/fsdev_documentation
[FSDEV] Update the STM32 documentation
2024-06-21 20:45:44 +07:00
Andrew Leech
0d79da37e7 synopsys/dwc2_esp32: Add header for vTaskDelay. 2024-06-20 15:18:41 +10:00
Ryzee119
5e58ec127f usbh: Add set address recovery time
Ref USB Spec 9.2.6.3
2024-06-20 09:33:01 +09:30
Okarss
5083d1eb33 Update Host mode information for FSDEV devices 2024-06-18 12:12:44 +03:00
hathach
d945261aef LOG3 in isr 2024-06-18 12:53:57 +07:00
Ryzee119
d52d659261 usbh: Set interface recipient should be interface 2024-06-18 14:02:36 +09:30
Ha Thach
007a8bd46d Merge pull request #2672 from tinic/master
Add support for STM32U535xx/STM32U545xx
2024-06-15 10:56:24 +07:00
Okarss
5f060a357d Update the STM32 documentation 2024-06-14 21:23:17 +03:00