Commit Graph

3556 Commits

Author SHA1 Message Date
hathach
77f0726361 fix ehci issue with portsc when enable port power and port reset
fix attached device not regconized if attached before power on
2023-05-09 17:32:14 +07:00
hathach
654f182176 build host examples with imx 2023-05-08 00:24:48 +07:00
hathach
6945c594d5 update all device cmake example for imx 2023-05-07 22:09:08 +07:00
hathach
f15f79df5d cmake work well with imxrt 2023-05-06 15:14:54 +07:00
hathach
cda5ab8b25 more temp work 2023-05-05 19:15:19 +07:00
hathach
8a9d2b4b75 wip 2023-05-04 23:29:37 +07:00
Michiel van Leeuwen
75cf8e21a7 Use double-sized fifo only for IN endpoints 2023-05-04 10:02:42 +02:00
Martino Facchin
6ff62c0fe8 renesas: add fallback for targets not defining CFG_TUSB_RHPORT*_MODE 2023-05-03 11:47:41 +02:00
Martino Facchin
5f7e7b4b0a renesas_ra: support RA2A1 (FS only) 2023-05-03 10:06:13 +02:00
Martino Facchin
4afed62646 renesas_ra: host: handle retry on attach() 2023-05-03 10:05:29 +02:00
Martino Facchin
be54870c3b renesas_ra: add support for HS port 2023-05-03 10:02:24 +02:00
hathach
1763eede48 more update to host serial API 2023-04-28 22:14:14 +07:00
hathach
fb5fe3360f allow call tuh cdc with blocking (callback = NULL)
- tuh_cdc_set_control_line_state()
- tuh_cdc_set_baudrate()
- tuh_cdc_set_line_coding()
2023-04-28 21:50:54 +07:00
hathach
0a43a7b418 improve host serial drivers
- tuh_control_xfer() update xfer result to user_data if complete
callback = NULL (sync/blocking)
- refactor host serial driver for acm/ftdi/cp210x
2023-04-28 19:13:25 +07:00
Michiel van Leeuwen
678edbe203 Check correct interrupt flag
Fixes #1737
2023-04-28 12:55:58 +02:00
Michiel van Leeuwen
5ade917805 dwc2: configure fifo size to be twice the max_size
This is needed in order to always be able to fit a packet in the fifo.
Writing to the fifo is done from an interrupts that fires when the fifo is
half-empty, so the fifo must be twice the packet size.
2023-04-28 11:26:26 +02:00
hathach
190acc1fb0 add aligned(4) for cdc_line_coding_t 2023-04-28 11:12:03 +07:00
Jean-Baptiste Theou
8f47976639 cdc: fix line_coding aligment
While calling tud_cdc_n_get_line_coding, the structure is copied into
the destination.

Dump of assembler code for function tud_cdc_n_get_line_coding:
   0x000193f4 <+0>:	mov.w	r2, #2112	@ 0x840
0x000193f8 <+4>:	ldr	r3, [pc, #20]	@ (0x19410
<tud_cdc_n_get_line_coding+28>)
   0x000193fa <+6>:	mla	r0, r2, r0, r3
=> 0x000193fe <+10>:	ldr.w	r3, [r0, #6]
   0x00019402 <+14>:	str	r3, [r1, #0]

On some platform (tested on LPC55S28), the address needs to be 4-bytes
aligned. Without this, the address is

(gdb) p &_cdcd_itf.line_coding
$3 = (cdc_line_coding_t *) 0x40100006 <_cdcd_itf+6>

which leads to a HardFault. With this fix

(gdb) p &_cdcd_itf.line_coding
$5 = (cdc_line_coding_t *) 0x40100008 <_cdcd_itf+8>

and the function can be called properly

Signed-off-by: Jean-Baptiste Theou <jb@thing.com>
2023-04-27 15:48:15 -10:00
hathach
732686cc10 add tuh_cdc_set_baudrate() 2023-04-27 23:22:10 +07:00
hathach
ee58278ed2 add code to calculate divisor from baudrate for ftdi 2023-04-27 23:08:25 +07:00
hathach
8214f0f497 clean up 2023-04-27 17:40:08 +07:00
hathach
c10f52b237 forgot to add cp210x header 2023-04-27 17:39:02 +07:00
hathach
438387be8c more refactor 2023-04-27 17:32:56 +07:00
hathach
86f6fd17ed cp210x seems to work well 2023-04-27 17:09:21 +07:00
hathach
a32ef1cde1 more host serial refactor 2023-04-27 16:32:42 +07:00
hathach
9698a088db refactor acm function 2023-04-27 15:29:44 +07:00
hathach
85d9925d24 refactor ftdi driver 2023-04-27 15:20:04 +07:00
hathach
293a6222f8 rename ftdi_host to ftdi_sio 2023-04-27 11:08:42 +07:00
hathach
45169d833d hacky, but ftdi work with hard code baudrate = 9600 2023-04-26 22:36:17 +07:00
Ha Thach
964e7ebf21 Merge pull request #2013 from tannewt/imx_1042
Handle iMX RT 1042 usb naming
2023-04-24 16:53:24 +07:00
Ha Thach
8ede566c41 Merge pull request #2039 from hathach/add-cmake-build
Add cmake build
2023-04-24 16:43:40 +07:00
hathach
a4d5d51549 add wip note 2023-04-24 16:24:06 +07:00
hathach
5254202b20 minor update 2023-04-24 11:54:58 +07:00
hathach
0afe1b3684 example run well with cmake for imxrt 2023-04-21 18:10:28 +07:00
Jacek Fedorynski
9bf97e3e52 [rp2040] Make writes to SIE_CTRL aware of concurrent access
This commit makes it so that when setting the START_TRANS bit in the
SIE_CTRL register, along with some other bits, we first set all the
other bits, then wait some cycles, and then set the START_TRANS bit.

Doing so protects against a situation where the USB controller is
reading the register at the same time and gets an incorrect value.

This mirrors the procedure already applied to buffer control
registers.
2023-04-20 20:23:31 +02:00
Reimu NotMoe
c0674142a8 Merge branch 'hathach:master' into master 2023-04-18 23:20:25 +08:00
Reimu NotMoe
9002dc7067 Use __GNUC__ macro to determine if __has_attribute is supported 2023-04-18 17:27:42 +08:00
Ha Thach
c3a60ed355 Merge pull request #1920 from mikee47/fix/midi-definition
MIDI_CIN_NOTE_ON definition transposed with MIDI_CIN_NOTE_OFF
2023-04-18 10:43:52 +07:00
Mengsk
412b557a08 Cleanup unnecessary code for 16bit access. 2023-04-17 15:34:20 +02:00
Reimu NotMoe
fa8f3731c1 Implement TU_BSWAP{16,32} correctly for Microchip XC16 2023-04-17 21:02:12 +08:00
Reimu NotMoe
d97b6d57de Fix compatibility with the latest Microchip XC16 compiler 2023-04-17 20:20:22 +08:00
HiFiPhile
818bda18c2 Fix FIFO transfer and buffer alignment. 2023-04-14 23:37:07 +02:00
HiFiPhile
2f2c8ce9ec Fix GCC build. 2023-04-14 21:00:55 +02:00
HiFiPhile
413b0a7da5 Use PLL clock. 2023-04-14 17:12:47 +02:00
HiFiPhile
cbf4b1aec8 Merge branch 'master' of https://github.com/hathach/tinyusb into pr1942 2023-04-14 13:16:52 +02:00
Scott Shawcroft
2cda9b60c9 Handle iMX RT 1042 usb naming 2023-04-06 15:45:23 -07:00
hathach
6db24e0dba implement tuh_hid_receive_ready() and tuh_hid_send_ready() 2023-04-06 11:16:28 +07:00
hathach
106084289d add define for vendor_flush() to write_flush() for backward compatible 2023-04-06 11:15:57 +07:00
Ha Thach
f7aa716a61 Merge pull request #2000 from jncronin/stm32l5
Add STM32L5 support - no OTG similar to some L4s
2023-04-04 16:30:47 +07:00
John Cronin
718bcdb8bc Add STM32L5 support - no OTG similar to some L4s 2023-04-03 13:56:16 +01:00