Commit Graph

75 Commits

Author SHA1 Message Date
Ross Owen
08c55f9a7d Fixed trap when no mclk applied by customer (device now sends 0-length packets in this case) 2015-09-21 16:02:25 +01:00
Ross Owen
6cc3ea7549 Merge 2015-09-17 17:27:37 +01:00
Ross Owen
2cda8bb1ac Merge 2015-09-17 17:11:07 +01:00
Ross Owen
f5da75fa46 Mixer and non-mixer chan comms (decouple->audio path) now the same scheme. 2015-09-07 16:09:13 +01:00
Ross Owen
59baec261f Fixed up initial values for totalSampsToWrite/sampsToWrite 2015-09-04 11:33:41 +01:00
Ross Owen
9210b11823 More tidy. Multiple IN packets now ditched on over flow (gets buffer to nice pre-fill level). inOverflow flag removed completely. 2015-09-02 15:59:37 +01:00
Ross Owen
facfcd82ec Removed pktcount debug. 2015-09-02 12:37:33 +01:00
Ross Owen
e5cbfe147c Started removing debug code. 2015-09-02 12:31:26 +01:00
Ross Owen
9171df460f Innitial removal of inOverflow state and deletion of oldest packet from buffer. Includes lots of debug. 2015-09-02 12:20:39 +01:00
Ross Owen
da5f0701a7 Comment & whitespace only. 2015-08-21 12:11:02 +01:00
Ross Owen
37e73cde48 Fixes to decouple interrupt for dual-issue compatibility purposes. 2015-04-09 14:55:39 +01:00
Ross Owen
575ee95714 xpd: Cleaned up whitespace 2015-03-30 12:24:03 +01:00
Ross Owen
7cd5631e4b The audio i/o core now uses "underflow" sample as it's request word (i.e. different for PCM/DSD). This gets passed all the way through mixer and on to decouple such that it can be used in the underflow state. This allows the removal of the communication of the underflow state to the audio i/o core from decouple and thus "stand-alone" mixer now works again. 2015-03-20 17:23:24 +00:00
Ross Owen
2de25aa4b5 All inline asm in decouple now marked volatile 2015-03-18 12:20:24 +00:00
Ross Owen
a4b753557c SetupZeroSendBuffer() now does calculations based on global g_numUsbChan_In (rather than checking bus speed and using NUM_USB_CHAN_ defines) 2014-09-19 11:59:07 +01:00
Ross Owen
878b92ac26 Removed dead interrupt EP code from decouple 2014-07-29 14:53:37 +01:00
Ross Owen
5e0e063c10 c_clk_int param (and associated functionality) removed from decouple 2014-07-29 12:50:33 +01:00
Ross Owen
80dff15100 Fixed bad usage of NUM_USB_CHAN_OUT when _IN should have been used. Caused output only build to wait for buffer setup to happened forever.. 2014-04-30 21:02:43 +01:00
Ross Owen
b93fe11839 Removed use of old INPUT and OUTPUT defines (NUM_USB_CHAN_ used instead) 2014-04-29 18:03:34 +01:00
Ross Owen
61339f6650 Fixed passing on SET_STREAM_FORMAT_ commands from decouple - was incorrectly guarded by DSD define. 2014-04-17 16:07:14 +01:00
Ross Owen
9caa429a20 INPUT_VOLUME_CONTROL now affects descriptors and processing in decouple() 2014-04-17 14:48:32 +01:00
Ross Owen
641fbdfca6 Added define OUTPUT_VOLUME_CONTROL which disables output volume control - both in the descriptors and processing. NOTE: Still could be extended to disable volume in MIXER 2014-04-17 14:14:05 +01:00
Ross Owen
90b17ed8ab Decouple now sents out sample res to audio core. SET_DSD_MODE removed and replaced with SET_STREAM_FORMAT_OUT 2014-04-10 12:00:33 +01:00
Ross Owen
28d11704a8 Some Var name tidy ups to keep naming a bit more consistent 2014-04-10 11:59:33 +01:00
Ross Owen
f0341dcd8b Decouple no longer remembers dsdMode. It always sends through changes. EP should only send though changes as required. 2014-04-08 15:45:37 +01:00
Ross Owen
78215ee827 Removed unused usb_speed var 2014-03-21 17:32:52 +00:00
Ross Owen
0e120103c1 unreachable logic the wrong way around in input switch statement. Used cases removed, unused kept. 2014-03-06 21:17:07 +00:00
Ross Owen
71c876f356 Decouple only tells audio to change to/from DSD/PCM mode if there is an actual change to be made 2014-03-06 21:16:17 +00:00
Ross Owen
9c5e0a1dd8 'Release: 6.5.0beta0' 2014-03-06 17:50:18 +00:00
Ross Owen
87194a878e Re-added builtin_unreachable() using SUBSLOT_X_USED defines. 32 bit volume processing guarded by OUTPUT_RESOLUTION_32BIT_USED 2014-03-06 16:16:30 +00:00
Ross Owen
c1a175ae8b - Optimised 16bit pack/unpack.
- Added use of separate subSlot_in & subSlot_out vars
- Zero buffer now setup using curSubSlot_in
- Added dealing with SET_STREAM_FORMAT commands from usb buffer
2014-03-06 10:34:41 +00:00
Ross Owen
31034e10ce Removed checking of USB Bus-speed on every decouple interrupt handler. SlotSize and maxPacketSize now setup on SET_STREAM_FORMAT event 2014-03-06 10:32:00 +00:00
Ross Owen
c914a7d9c6 Added global format change vars for stream change communications from usb_buffer(). 2014-03-06 10:31:13 +00:00
Ross Owen
3ea529014a Updates to decouple packet size related defines. 2014-03-06 10:30:25 +00:00
Ross Owen
55c68f3c31 Updates to decouple includes 2014-03-06 10:29:40 +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
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
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
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
6dffaa379b Decouple now using _FS defines instead of old _A1 defines 2014-01-22 22:01:16 +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
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
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