hathach
98e4ba6a12
correct midi available with already stream read
2021-08-02 18:55:12 +07:00
MasterPhi
7321972380
Force unsigned compare on advance_pointer.
2021-06-30 20:26:27 +02:00
Mengsk
2b2549b573
Fix fifo overflow correction.
2021-06-30 17:00:56 +02:00
hathach
f384d6f67e
more with clean up
2021-05-27 18:11:12 +07:00
hathach
954056da0c
fix warnings cast function type for nrf, fix pico osal warning
...
add TODO for overflow in tusb_fifo.c
2021-05-25 21:02:40 +07:00
hathach
18c35bb89e
some text fomarting, update unit test to test get buffer info for fifo
2021-05-02 15:01:28 +07:00
Reinhard Panhuber
5add664874
Remove n from tu_fifo_get_write_info() and fix bug in vendor class
2021-04-30 17:37:14 +02:00
Reinhard Panhuber
5f88def9c9
Comment cleanup
2021-04-30 15:14:27 +02:00
Reinhard Panhuber
14e2c004cd
Remove variable n in tu_fifo_get_read_info()
2021-04-30 15:08:14 +02:00
Reinhard Panhuber
de933c45bc
Remove all remainings with peek_at
2021-04-30 14:56:14 +02:00
Reinhard Panhuber
5f268608d7
Remove offset feature from fifo.c
2021-04-30 13:39:55 +02:00
Reinhard Panhuber
8f72c97f7b
Change read infos to pointer type
2021-04-30 12:59:12 +02:00
Reinhard Panhuber
7072f0155e
Change tu_fifo_get_linear_write/read_info() to return a struct
...
Compilers always complain that variables set by function via pointer
might be uninitialized so to avoid that return values are now delivered
via struct.
2021-04-23 11:48:54 +02:00
Reinhard Panhuber
03f974c9b9
Implement functions to allow for DMA usage in audio driver.
...
- Add tud_audio_n_get_ep_out_ff(), tud_audio_n_get_ep_in_ff(),
tud_audio_n_get_rx_support_ff(), and tud_audio_n_get_tx_support_ff()
- Change get_linear_read/write_info() to return linear and wrapped part
at once
- Adjusted affected code in audio_device.c and tested with
audio_4_channel.
2021-04-23 10:27:48 +02:00
hathach
d9a0cc9e9f
more cleanup
2021-04-07 16:50:45 +07:00
hathach
893919a848
remove tu_fifo_backward_write/read_pointer API
...
since it is illegal from fifo perspective
2021-04-07 13:27:28 +07:00
hathach
2468f9e26d
more _ff_pull/push clean up
2021-04-07 13:15:25 +07:00
hathach
9042e973d3
clean up _ff_push_n
2021-04-07 12:52:57 +07:00
hathach
d6737fb5fe
use tu_unaligned_write32() for _ff_push_const_addr
2021-04-07 12:34:00 +07:00
hathach
d0fa4d5189
rename
2021-04-07 12:24:24 +07:00
hathach
8ac156622d
fix cast-align warning
2021-04-07 00:38:12 +07:00
hathach
a3c06aa7bc
more clean up for _ff_pull_const_addr_in_full_words()
2021-04-06 23:39:39 +07:00
hathach
d82ee2f8c0
refactor _ff_pull_n() with const addr
2021-04-06 23:12:04 +07:00
Reinhard Panhuber
9b2ddd9cc6
Generalize audio driver for 3 audio functions plus a lot more.
...
- Audio format and parameters are parsed from descriptors thus user no
longer needs to give them explicitely
- Tested for 4 channel software type I PCM encoding with 16 bit with 1
channel per FIFO and 2 channels per FIFO (this is I2S specific)
2021-04-03 09:49:27 +02:00
Reinhard Panhuber
994dddc231
Fix shadowing parameter in fifo.c
2021-03-25 14:38:55 +01:00
Reinhard Panhuber
bfddfbadc7
Implement unaligned word copy.
2021-03-25 14:28:59 +01:00
Reinhard Panhuber
1e4e87de51
Rework to copy wrapped word bytes by byte in copy_to_cont_dst etc.
2021-03-25 13:53:26 +01:00
Reinhard Panhuber
a60bd0c8ac
Fix bug in writing to constant src/dst address.
...
Copying has to be conduct in full words (at least for STM32). Renamed
copy function to tu_fifo_write_n_const_addr_full_words()
2021-03-23 19:33:04 +01:00
hathach
4ee1216aaf
fix fifo unlock typo, also clean up a bit
2021-03-13 00:22:04 +07:00
Reinhard Panhuber
d5a5a1cab6
Implement audio PCM type I enc./decoding acc. to 2.3.1.5 Audio Streams
...
Extending capabilities of support FIFOs
Removing copy from to FIFO
Adjusting audio examples
Remove peek/read into other FIFO
2021-03-10 19:32:13 +01:00
Reinhard Panhuber
de1f36f2b0
Adapt mutexes in fifo.c
2021-03-04 19:52:48 +01:00
Reinhard Panhuber
2e28861cf8
Remove TODOs done.
2021-03-04 18:20:22 +01:00
Reinhard Panhuber
7e56f46957
Extend FIFO mutex to use separate write and read mutexes.
...
Adjust all USB drivers using FIFO and mutexes.
2021-03-04 13:52:14 +01:00
Reinhard Panhuber
848e403e37
Fix unused parameter in _ff_push_copy_fct() and _ff_pull_copy_fct
2021-03-03 08:18:57 +01:00
Reinhard Panhuber
bd2bab7aff
Remove set_copy_modes(), implement:
...
tu_fifo_read_n_const_addr(), tu_fifo_write_n_const_addr()
2021-03-02 21:41:51 +01:00
Reinhard Panhuber
e223d46033
Merge remote-tracking branch 'upstream/master' into edpt_ISO_xfer
...
Conflicts:
src/common/tusb_fifo.h
src/osal/osal_none.h
2021-02-23 19:47:57 +01:00
hathach
2a04ee68b8
add TU_FIFO_INIT() to help with tu_fifo declaration
...
tu_fifo_clear() also reset max_pointer_idx and non_used_index_space
2021-02-19 11:57:56 +07:00
Reinhard Panhuber
ae20d11124
Merge remote-tracking branch 'upstream/master' into edpt_ISO_xfer
...
Conflicts:
src/common/tusb_fifo.h
2021-02-17 22:08:21 +01:00
Reinhard Panhuber
c87357c025
Improve tu_fifo capabilites
...
Added tu_fifo_get_linear_write_info(), tu_fifo_backward_write_pointer(),
and tu_fifo_backward_read_pointer()
2021-02-17 20:44:26 +01:00
Nicholas R Dinsmore
b7ec66e33a
This fixes the overflow mathmatic in the fifo
2021-02-16 23:08:08 -05:00
Reinhard Panhuber
f1551d7a5f
Add __restrict keyword and memore alignment to src/dst pointer of
...
_tu_fifo_read_from_const_src_ptr()
_tu_fifo_write_to_const_dst_ptr()
2021-01-20 20:14:23 +01:00
Reinhard Panhuber
99e6bc3720
Explicitly add cast to uint32_t before shifting uint8 to left
2021-01-18 17:54:08 +01:00
Reinhard Panhuber
8450bc3225
Add FIFO copy modes: tu_fifo_copy_mode_t
...
Allows to copy from/to constant pointers required for STM32 hardware
FIFO copies.
2021-01-18 17:12:39 +01:00
Reinhard Panhuber
bdbcb8df39
Add tu_fifo_read_n_into_other_fifo() to copy into from FIFO into another
...
Fix overflow in tu_fifo_write_n()
2021-01-17 11:55:33 +01:00
HiFIPhile
baa5417f3e
Fix IAR error on memcpy and warnings.
...
Signed-off-by: MasterPhi <admin@hifiphile.com>
2020-12-23 16:54:55 +01:00
hathach
4b4f880785
add tud_ready() check in tud_cdc_n_write_flush()
...
other clean up
2020-11-23 23:40:13 +07:00
Jan Dümpelmann
54e29e9ff4
Implementation of the discussed changes
...
- remove usbd_edpt_xfer_abort
- rename tu_fifo_change_mode to tu_fifo_set_mode
- remove CFG_TUD_CDC_CLEAR_AT_CONNECTION definition
- remove auto fifo clear at connection event
- add tud_cdc_n_write_clear function
2020-11-18 09:42:50 +01:00
Jan Dümpelmann
af9f0f1cd6
Merge remote-tracking branch 'hathach/master' into cdc_without_dtr
2020-11-04 17:11:01 +01:00
Reinhard Panhuber
8dcb104933
Change modulo substitute to while ( idx >= depth) idx -= depth;
2020-09-26 11:00:31 +02:00
Reinhard Panhuber
9ddcfc09d7
Fix wrong comments, rename pos to offset, rename overflow().
2020-09-25 15:58:28 +02:00