Sam Chesney
c696fc608b
Consolidated MAX_IAP_PACKET_SIZE and IAP_USB_BUFFER_TO_HOST_SIZE into a single define: IAP_MAX_PACKET_SIZE
2014-02-24 16:59:21 +00:00
Sam Chesney
e75e5b131f
iAP tx buffer no longer one word longer than max packet size, as length is no longer added to the buffer
2014-02-24 16:47:05 +00:00
Ross Owen
22758cc81c
Added some defences against a 0 length packet being received from the host and breaking the MIDI/IAP FIFOs. Also added further use of XUD_Result_t in select functions.
2014-02-20 18:22:46 +00:00
Ross Owen
6d838ece93
Usb-buffer no longer sets up the FB packet on startup. Instead it sets it up on stream start (SET_CHAN_COUNT_OUT cmd). This means that the packet size after bus-speed change is correct!
2014-02-20 14:05:11 +00:00
Ross Owen
2800df22eb
Comment only.
2014-02-20 14:03:24 +00:00
Ross Owen
41b1bdd815
Removed unused vars from decouple
2014-02-20 14:00:22 +00:00
Ross Owen
c82e8c5a90
GetADCCounts now uses XUD_BusSpeed_t
2014-02-20 13:34:13 +00:00
Ross Owen
4ed3fbfab6
Removed explicit wait loop for aud_ctl_chan global. Now relies on setup of aud_to/from_host flag globals.
2014-02-20 13:32:35 +00:00
Ross Owen
fbdfdff31c
Added use of GET_SHARED_GLOBAL macro rather than direct inline ASM when getting bus-speed in interrupt handler.
2014-02-20 13:31:28 +00:00
Ross Owen
bab06c66ea
Global vars for EP's in decouple now XUD_ep (were int)
2014-02-20 13:30:34 +00:00
Ross Owen
f5f4a753ae
usb_buffer no longer references inZero buff. Buffer() no longer waits on g_usb_speed to setup initial IN buffer length. This is now done when usb_buffer receives a SET_CHANNEL_COUNT in command (from endpoint0 core due to SetInterface())
2014-02-19 17:50:22 +00:00
Ross Owen
3e5ac4ffdd
Added SetupZerosSendBuffer func since code duplicated. This function is now also called on SET_CHANNEL_COUNT_IN
2014-02-19 17:48:53 +00:00
Ross Owen
52483207ad
Removed resize of zero-sample IN buffer from usb_buffer. This effort is duplicated in decouple.
2014-02-19 17:10:28 +00:00
Ross Owen
f37a196627
Removed g_iap_reset declaration from usb_buffer.
2014-02-19 17:06:47 +00:00
Ross Owen
859e264fb6
Removed guard that was used when re-calling SetReady_In on sample rate change. New (non-channel-based XUD API means this can be called multiple times without locking)
2014-02-19 15:23:44 +00:00
Ross Owen
77cb50170e
Removed initial wait for USB speed from decouple before g_numUsbChanXX is set. This would break mixer on initial startup if USB not connected. This should be okay since g_numUsbChan is set on SET_CHANNEL_COUNT
2014-02-19 14:58:06 +00:00
Ross Owen
9cc53f1736
Resolving conficted merge
2014-02-19 12:29:42 +00:00
Ross Owen
3fbb537d31
Merge
2014-02-19 12:28:54 +00:00
Sam Chesney
9150813b3e
Removed initial iAP resets
2014-02-18 18:38:51 +00:00
Sam Chesney
d6809a4082
Added call to XUD_ResetEndpoint to cause buffer to fall through into while(1) loop...
2014-02-18 18:00:54 +00:00
Ross Owen
e126ba349b
Removed debug prints.
2014-02-18 17:50:55 +00:00
Sam Chesney
593ccd7172
Changed reset result type (int -> XUD_Result_t)
2014-02-18 15:08:08 +00:00
Sam Chesney
927de7bbca
Removed debug print
2014-02-18 15:07:21 +00:00
Sam Chesney
51bfdc113a
Merge branch 'IAP2_DEV'
...
Conflicts:
module_usb_audio/usb_buffer/usb_buffer.xc
2014-02-18 13:17:54 +00:00
Ross Owen
b138b46496
buffer() tidy after reset work.
2014-02-14 16:20:12 +00:00
Sam Chesney
e3905ae3a4
Fix for bug 15181 - the iAP interrupt In EP can now be disabled, as its use is now reported as deprecated by the ATS system. Disabled by default.
2014-02-14 14:25:42 +00:00
Ross Owen
2894eaf106
buffer() checks new return from SetReady_functions to check for reset.
2014-02-13 14:14:34 +00:00
Ross Owen
8e60cfc77f
GetADC counts used instead of inline code.
2014-02-12 14:52:51 +00:00
Sam Chesney
34640a49d4
DEBUG: print length of iAP data following XUD_SetReady_In()
2014-02-10 11:25:14 +00:00
Sam Chesney
f625904415
Fix for bug 15218 - iAP detect sequence can fail after rapid reconnection attempts. On reset drain the c_iap channel of old data until the iAP core returns a reset token.
2014-02-06 11:48:59 +00:00
Ross Owen
486a19f549
comment typo only
2014-01-28 16:28:23 +00:00
Sam Chesney
b65048f20e
Reset local iAP state when host resets device
2014-01-27 16:04:08 +00:00
Ross Owen
6dffaa379b
Decouple now using _FS defines instead of old _A1 defines
2014-01-22 22:01:16 +00:00
Ross Owen
76d60ceb5b
SAMPLE_SLOT_SIZE_XX used instead of hardcoded *3/*4 for generating packet size
2014-01-22 19:57:59 +00:00
Ross Owen
e9946cc803
NUM_USB_CHAN_IN_A1 and NUM_USB_CHAN_OUT_A1 changed from A1 to _FS
2014-01-22 19:57:22 +00:00
Ross Owen
055f05bfab
0 sample buffer is now sized by SAMPLE_SUBSLOT_SIZE_XX (was hard coded * by 3/4
2014-01-22 16:32:12 +00:00
dan
98b3bdba95
added toplevel makefile for xpd
2014-01-22 11:00:41 +00:00
Ross Owen
735de46f7d
comment only
2014-01-20 20:31:11 +00:00
Ross Owen
48d73c429a
Fixed native DSD (lower word of MACC ignored if sample depth <= 24 bits). Native DSD needs 32 bits.
2014-01-18 23:41:22 +00:00
Ross Owen
7fe8f1bbce
Added use of SAMPLE_SUBSLOT_SIZE_ defines and general use of global slotSizevar. Added unpack/pack of 2 byte slot size. Added unreachable builtins to slotsize switch and default case.
2013-12-19 11:54:23 +00:00
Ross Owen
37dc369c69
Merge commit 'b2816ac3aa4163a8b91c6079a89c9a5418292602' into 6V3_DEV
2013-12-12 12:12:03 +00:00
Ross Owen
1fefff6e7c
Merge commit '662ac7df58af07f3dc1a34a04933b903e5ab5fdd' into 6V3_DEV
2013-12-12 12:11:14 +00:00
Ross Owen
1131d22e4f
Merge
2013-12-12 12:10:00 +00:00
Ross Owen
cea9522fb5
Merge commit '82e07458911e4115981508e0538f682c146544ca' into 6V3_DEV
2013-12-12 12:07:57 +00:00
Ross Owen
2cbba4be9e
Revert "Reduce the amount of output buffering." Not safe if channel count
...
differs between input and output
This reverts commit a2a151b510 .
2013-12-12 12:03:42 +00:00
Richard Osborne
662ac7df58
Don't store length of the buffer in the buffer itself.
...
This is pointless as nothing ever reads it.
2013-12-09 18:09:19 +00:00
Richard Osborne
e56b271e0c
Make MIDI buffer globals static.
2013-12-09 18:09:19 +00:00
Richard Osborne
82e0745891
Remove local buffer pointers which are set but never used.
2013-12-09 18:09:19 +00:00
Richard Osborne
a2a151b510
Reduce the amount of output buffering.
...
It looks their was a typo here - the code calculates the maximum audio
packet size and uses it for the input buffer but not the output buffer.
Now the amount of input buffering matches the amount of output buffering.
2013-12-09 18:09:19 +00:00
Richard Osborne
09bafcfb3a
Base the buffer size on the MIDI_USB_BUFFER_TO_HOST_SIZE.
...
The buffer task never writes more than this amount of data to the buffer
so there is no point in a bigger buffer.
2013-12-09 18:09:19 +00:00