hathach
b5d4c8185d
Merge branch 'master' into host-async-control
2020-10-11 16:22:12 +07:00
Ha Thach
762b390433
Merge pull request #521 from PanRe/uac2
...
Uac2
2020-10-10 14:33:42 +07:00
Reinhard Panhuber
032e84c9be
Revert dcd_alloc_mem_for_conf() but keep changes from @kasjer for ISO EP
...
Add tud_audio_set_itf_close_EP_cb()
2020-10-09 19:50:05 +02:00
hathach
8ba0c362cc
update tud_hid_boot_mode_cb/tud_hid_set_idle_cb support mul interfaces
...
also clean up code
2020-10-09 20:51:20 +07:00
hathach
13abcb953f
rename multiple hid callback
2020-10-09 20:24:10 +07:00
Ha Thach
c2a0612885
Merge pull request #524 from zlittell/f_MultipleHIDInterfaces
...
Feature multiple hid interfaces
2020-10-09 00:28:13 +07:00
Zachery Littell
a4ba1f0827
Fix tu_verify args
2020-10-08 12:08:13 -05:00
Zachery Littell
298aa1b669
Cleanup per review on PR
2020-10-08 11:59:12 -05:00
Zachery Littell
db3fe97f62
fix variable names. add itf n callbacks to multihid
2020-10-07 20:36:00 -05:00
Reinhard Panhuber
f700c08aed
Remove CFG_TUD_AUDIO_TX_DMA_RINGBUFFER_SIZE which is not needed any more
2020-10-07 10:57:12 +02:00
hathach
3f54c27afa
fix audio_test build
2020-10-07 13:36:03 +07:00
Reinhard Panhuber
2050dc0dc7
Revert #define CFG_TUSB_DEBUG 2 to #define CFG_TUSB_DEBUG 0
...
Change 1 << 31 to 0x100000000 in audio.h
2020-10-03 09:46:22 +02:00
Zachery Littell
081af79009
fix simple pull request comments. Implement descriptor index hack.
2020-10-02 16:02:00 -05:00
Zachery Littell
b7208d6f7e
add index to report descriptor callback. this is breaking and needs to be reviewed
2020-10-01 12:51:48 -05:00
Zachery Littell
849681724a
create N functions and inlines for multi hid interfaces
2020-10-01 11:51:33 -05:00
Reinhard Panhuber
da1c3c226b
Change AUDIO_PROTOCOL_V1 to AUDIO_FUNC_PROTOCOL_CODE_UNDEF in midi.c.
...
The USB specification does not define any AUDIO_PROTOCOL_V1!
2020-09-28 22:44:09 +02:00
Reinhard Panhuber
529622710c
Cleanup for PR.
2020-09-28 18:10:57 +02:00
Reinhard Panhuber
142871654e
Merge remote-tracking branch 'upstream/master' into uac2
2020-09-28 18:08:39 +02:00
Jerzy Kasenberg
2ace98e943
audio_device: Update explicit feedback support
...
Feedback can be specified by the user code and will be
sent at feedback endpoint specified interval.
2020-09-28 08:41:17 +02:00
Jerzy Kasenberg
759d530506
audio_device: Allow one FIFO for N channels
...
This allow to build with single FIFO for devices with multiple channels.
Having just one FIFO greatly reduces time needed to feed endpoint.
This change also allows to have one FIFO with 24 bit samples that
is not rounded up to 32 bit elements.
CFG_TUD_AUDIO_RX_ITEMSIZE and CFG_TUD_AUDIO_TX_ITEMSIZE can be manually
defined. This allows to use FIFO more efficiently when 24 bits samples
are already using 3 bytes, in this case there is no need to put them
into FIFO one by one.
For 8, 16, 32 bits samples size efficient FIFO access is always used
when single FIFO is selected.
This also changes FIFO element size to 1, FIFO usage was confusing
in some place it treated content as byte base in other it looked like
ITEM size is to be used. Also bufsize that in most (maybe all) cases
was really meaning item count.
bufsize now mean buffer size in bytes so there is no confusion.
2020-09-28 08:41:17 +02:00
Jerzy Kasenberg
28cf63c7db
audio_device: Fix tud_audio_n_read_flush TU_VERIFY usage
...
void function used TU_VERIFY in a way that returned bool value.
It would not compile.
2020-09-28 08:41:17 +02:00
Jerzy Kasenberg
ca4a42156c
audio_device: Fix audio_rx_done_type_I_pcm_ff_cb bufor size check
...
Function was not checking buffer size correctly due missing parenthesis.
2020-09-28 08:41:17 +02:00
Jerzy Kasenberg
66b091282f
audio_device: Fix audio_rx_done_type_I_pcm_ff_cb prototype
...
Function prototype did not have return type specified by mistake.
2020-09-28 08:41:17 +02:00
Jerzy Kasenberg
e67fc808aa
audio_device: Store rhport in interface data
...
Some API uses interface number as argument, some wants to have
rhport.
To accommodate need of rhport for functions that don't have it
rhport can be extracted from interface data.
2020-09-28 08:41:17 +02:00
Jerzy Kasenberg
f4a44ee063
audio: Update ISO endpoint attributes
...
Explicit feedback attribute was missing.
No synchronization now also has definition.
2020-09-28 08:41:17 +02:00
Jerzy Kasenberg
5ad2f8efc6
audio_device: Fix inline function specifiers
...
Having just inline keyword for function specified in header
may not be enough to generate code for function.
Adding static solves this problem.
static inline is used in all other inline functions in TinyUSB.
2020-09-28 08:41:17 +02:00
Ha Thach
8b2c822557
Merge pull request #512 from mzero/fix-midi-sysex
...
Fix a bug in writing SysEx messages.
2020-09-23 11:23:53 +07:00
Ha Thach
745c15d5b5
Merge pull request #508 from hathach/fix-edpt-race
...
Fix edpt xfer race condition
2020-09-14 23:56:21 +07:00
hathach
23e6ee2ea2
cdc device: claim endpoint before checking fifo availability
...
- add pre-check to reduce mutex lock in usbd_edpt_claim
2020-09-14 22:14:31 +07:00
Mark Lentczner
3b0216d3bf
Update midi_device.c
...
Fix a bug in writing SysEx messages.
At the start of a new USB packet (4 bytes), while in the middle of a SysEx, the code mistakenly
set the buffer length to 4, not the target length. As a consequence, the 3rd and 4th bytes from
the last packet were included, after every byte of the SysEx after the first packet of three.
The fix is simple, as it was just a typo, as can bee seen from the other branches in the same
section of if/else statements: At the start of a new packet, the code should set up the target
length... the buffer length should be left at 2 (as set on line 180).
2020-09-13 15:05:18 -07:00
hathach
5931d19666
correct the TUD_HID_REPORT_DESC_GAMEPAD
2020-09-13 15:01:20 +07:00
hathach
1804dba615
typo
2020-09-12 08:48:49 +07:00
hathach
801f8b5b38
update claim edpt for hid and midi
2020-09-10 23:32:08 +07:00
Jan Dümpelmann
b15c209805
Set new define because of build failure
2020-09-10 13:36:07 +02:00
hathach
ed6d48b81e
typo
2020-09-09 16:45:54 +07:00
hathach
fe1b5dfa23
clean up
2020-09-09 16:29:45 +07:00
hathach
33f0a18523
update cdc edpt read
2020-09-09 16:25:31 +07:00
hathach
8b9893cada
introduce optional usbd_edpt_claim, usbd_edpt_release which can be used to gain exclusive access to usbd_edpt_xfer
2020-09-09 15:48:11 +07:00
hathach
66a10ec9c8
rework usbh control transfer
...
use series of complete callback instead of blocking semaphore, which is
more noOS friendly. still working with hid host
2020-09-07 15:19:20 +07:00
Reinhard Panhuber
4e789b240d
Start of sampling works.
2020-09-06 11:37:59 +02:00
hathach
b3e81673c0
change xfer_cb return type from void to bool
2020-09-06 12:11:07 +07:00
hathach
15ad585e67
replacing hcd_pipe_xfer by usbh_edpt_xfer
2020-09-06 11:49:00 +07:00
hathach
9531e47d10
update example to test with mouse
2020-09-05 14:59:07 +07:00
hathach
f7cf8cdf27
defer xfer_isr to xfer_cb
2020-09-05 14:41:31 +07:00
Reinhard Panhuber
12562fc966
Merge remote-tracking branch 'upstream/master' into uac2
2020-09-04 16:23:39 +02:00
Jan Dümpelmann
9cc22b635c
Add functionality to abort an ongoing transfer
2020-09-04 15:40:23 +02:00
hathach
a8e538efe7
clean up
2020-09-04 01:35:32 +07:00
hathach
35aee4a6af
more hid host work
2020-09-03 23:57:51 +07:00
Reinhard Panhuber
338e96fa82
Remove tud_audio_n_write_ep_in_buffer() as long as ISO EPs are not RBs.
2020-09-03 18:09:46 +02:00
Jan Dümpelmann
4071e490e2
New function to modify fifo overwritability
2020-09-03 17:21:32 +02:00
Jan Dümpelmann
fd6cf9010b
Turn transmit fifo overwritable in no DTR mode
2020-09-03 17:03:13 +02:00
Jan Dümpelmann
d9eaa54e14
Remove connected check for write flushing
2020-09-03 16:40:53 +02:00
hathach
ef651e0734
fix #449 remove obsolete pipehandle from hid host
2020-09-03 17:07:29 +07:00
hathach
84425c50b3
add more logging to host stack
...
tested host with lpc4357, don't use fpu with lpc m4 since it seems to
cause hardfault (stack does not make use of fpu anyway).
2020-09-01 19:16:50 +07:00
Reinhard Panhuber
8f0693346c
Allow epin_buf to be written directly into in case no TX FIFOs are used.
...
This is helpful if you have already encoded audio data and want an
efficient way to send it. However, this approach is NOT THREADSAFE so
far and works realiably ONLY IF tud_audio_n_write_ep_in_buffer() is NOT
called form an interrupt!
2020-09-01 11:26:16 +02:00
hathach
be708bb8a4
Merge branch 'master' into update-host
2020-09-01 12:02:25 +07:00
Reinhard Panhuber
83bd214203
Fix comment.
2020-08-29 13:26:41 +02:00
Reinhard Panhuber
43c4b53635
Fix CFG_TUD_AUDIO_RX_FIFO_SIZE defines.
2020-08-29 13:24:10 +02:00
Reinhard Panhuber
b9c9cfdbac
Change min to tu_min16.
2020-08-29 13:22:21 +02:00
Jerzy Kasenberg
b1f0d6f57e
audio_device: Change CFG_TUD_AUDIO_TX_BUFSIZE to CFG_TUD_AUDIO_TX_FIFO_SIZE
...
CFG_TUD_AUDIO_TX_BUFSIZE seems to be used only in 3 preprocessor
condition while in other places CFG_TUD_AUDIO_TX_FIFO_SIZE is used.
2020-08-25 14:45:40 +02:00
Jerzy Kasenberg
a3eff0c51a
audio_device: Fix NULL pointer access in audiod_xfer_cb
...
b_bytes_copied was pointer with NULL value instead of
plain variable.
NULL pointer was passed to audio_tx_done_cb() and dereference
as well.
Now variable is not a pointer.
2020-08-25 14:35:05 +02:00
Jerzy Kasenberg
a4c096be37
audio_device: Fix FIFO element size discrepancies
...
Buffer for TX and RX FIFO was not taking into account
size of element leading to out of bound access.
audio_tx_done_type_I_pcm_ff_cb() reported copied bytes was not returning
correct value number if channels was omitted in computation.
Transfer size calculation uses simpler arithmetic.
2020-08-25 14:35:05 +02:00
hathach
2d8787cdeb
fix typo
2020-08-24 15:29:34 +07:00
hathach
a1b7e767af
improve midi
...
- fix #436 tud_midi_rx_cb() not invoked
- fix xfer_cb() not handle ep in
- add ZLP if needed
2020-08-24 14:31:46 +07:00
Jerzy Kasenberg
c61e9fb96d
audio_device: Fix descriptor limit calculation
...
In several place p_desc_end calculation was not taking into account
that starting pointer (_audiod_itf[idxDriver].p_desc) was pointing
past interface association descriptor.
It would result in accessing random memory.
2020-08-24 09:04:42 +02:00
Ha Thach
e5d622b749
Merge pull request #434 from gh2o/master
...
Add TX callback to CDC device
2020-08-21 11:14:06 +07:00
Reinhard Panhuber
37be0ca732
Fix formatting, get rid of all tabs.
2020-08-20 20:09:44 +02:00
Gavin Li
72183c7bb4
Slight optimization for cdc tx refill
2020-08-20 09:59:23 -07:00
Gavin Li
15b063beb2
Smarter CDC TX refill logic
2020-08-20 02:20:01 -07:00
Reinhard Panhuber
c14f68e2c1
Commit before sharing.
...
Setup a test example - UNTESTED!
Missing: Start transmitting audio data in set_interface.
2020-08-19 21:07:43 +02:00
Reinhard Panhuber
6309364722
Merge remote-tracking branch 'upstream/master' into uac2
...
Conflicts:
src/device/usbd.c
src/device/usbd.h
src/portable/st/synopsys/dcd_synopsys.c
2020-08-16 14:08:24 +02:00
Reinhard Panhuber
444e4d2821
Add EP close. Fix bug in set_interface within audio.
2020-08-16 13:48:25 +02:00
hathach
61e96e97cb
use usbd_edpt_open in bth driver
2020-08-11 22:09:16 +07:00
hathach
01b9b77d3b
allow application driver to overwrite built-in one
...
- position application driver before built-in
- remove dcd.h from public include.
2020-08-07 14:47:32 +07:00
hathach
9bf2b33366
correct isr context for nrf DCD_EVENT_UNPLUGGED
...
also rename debug lookup to prevent conflict
2020-08-01 12:02:59 +07:00
Ha Thach
78f1576e93
Merge pull request #412 from hathach/fix-net-cast-align
...
suppress cast-align warnings for net device driver
2020-07-29 11:23:11 +07:00
Reinhard Panhuber
1269bb440a
Fix structure definition audio_control_range_X_n_t
2020-07-25 14:31:25 +02:00
Reinhard Panhuber
e047fbe8fb
Merge remote-tracking branch 'upstream/master' into uac2
2020-07-25 14:26:24 +02:00
Reinhard Panhuber
d91843bcd2
Get and set requests work
2020-07-25 11:18:50 +02:00
Reinhard Panhuber
141db1278a
Make definition of CFG_TUD_AUDIO_CTRL_BUF_SIZE mandatory
2020-07-20 20:24:05 +02:00
Reinhard Panhuber
fdb156a3bb
Implement control EP0 buffer and get rid of CFG_TUD_AUDIO_USE_TX_FIFO
2020-07-20 20:18:45 +02:00
Reinhard Panhuber
077e881c92
Implement all missing A.17 control selectors
2020-07-19 11:53:35 +02:00
Reinhard Panhuber
47bcedc0b4
Add A.17.4 - Terminal Control Selectors
2020-07-18 19:27:00 +02:00
hathach
881025afdc
add new name warning to cdc and midi (skip msc, hid warning for now)
2020-07-17 23:01:39 +07:00
Reinhard Panhuber
d0f3d03933
Intermediate commit.
2020-07-17 08:40:10 +02:00
hathach
5ca748a68e
rename CFG_TUD_MSC_BUFSIZE to CFG_TUD_MSC_EP_BUFSIZE
...
rename CFG_TUD_HID_BUFSIZE to CFG_TUD_HID_EP_BUFSIZE
2020-07-16 15:34:16 +07:00
hathach
fea6fb73a1
add fs & hs config for cdc_msc_freertos, midi_test, msc_dual_lun
2020-07-16 13:04:10 +07:00
hathach
706413f751
add tud_speed_get()
...
- define both fs and hs configuration descriptor
- rename CFG_TUD_CDC_EPSIZE to CFG_TUD_CDC_EP_BUFSIZE with default size of 64 for FS, and 512 for HS
2020-07-16 00:44:09 +07:00
Craig Hutchinson
323ae5a84f
Improve comment on CDC tud_cdc_write_available()
...
Fixes #460
2020-07-10 12:24:09 +01:00
Ha Thach
dbced9911d
Merge pull request #447 from hathach/add-stm-hs
...
Add support for STM32 OTG HS core
2020-07-08 19:47:24 +07:00
hathach
12a145b27d
fix dfu-rt to response to SET_INTERFACE and DFU_GETSTATUS
...
fix #450
2020-07-01 01:33:02 +07:00
hathach
ab75998316
Merge branch 'master' into add-stm-hs
2020-06-30 01:55:57 +07:00
Gavin Li
7ae47a9397
Call tud_cdc_tx_cb right after flush to keep tx fifo full
2020-06-20 22:12:10 -07:00
Reinhard Panhuber
28505cf03e
Merge branch 'master' into uac2
...
Conflicts:
src/device/usbd.c
2020-06-20 11:10:35 +02:00
Reinhard Panhuber
ada82b840f
Get update from tinyusb.
2020-06-20 10:51:21 +02:00
Gavin Li
8fe887198b
Add tx callback to cdc device
...
Useful for continuous transmission of data, which is difficult currently
because there is no notification of tx completion.
2020-06-18 01:13:44 -07:00
Mengsk
57b553e023
Fix IAR warnings.
...
Pa039 : use of address of unaligned structure member.
Pe188: enumerated type mixed with another type.
2020-06-17 10:08:33 +02:00
hathach
2b1c7730b7
fix hs port1 build with net endpoint
2020-06-16 00:53:06 +07:00
Reinhard Panhuber
4362665fb3
Fix mic audio descriptor, fix too strict check on IAD desc. in usbd.c
2020-06-13 12:36:05 +02:00
Reinhard Panhuber
d2f1bb58b3
Merge branch 'master' into uac2
2020-06-11 14:35:44 +02:00