Commit Graph

62 Commits

Author SHA1 Message Date
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
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
577b5f500d Make functions static where possible, no intended functionality change.
This saves 208 bytes.
2013-12-09 18:09:18 +00:00
Ross Owen
f0f9c1ecdb Tidy up clockcmds header 2013-10-23 17:20:16 +01:00
Ross Owen
8316b87c9f Decouple now reports out underflow to deliver and doesnt send mute samples itself 2013-09-18 15:02:27 +01:00
Ross Owen
8e91f2749f Comment only 2013-09-16 22:51:31 +01:00
Ross Owen
068675b126 Initial speed based slotsize setting now also guarded by FULL_SPEED_AUDIO2 2013-09-13 23:37:58 +01:00
Ross Owen
c17db023ce Slight tweak to DoP idle word 2013-09-09 23:42:04 +01:00
Ross Owen
d0479dd92a Slight hack for Sony DoP mode - uses global dsdMode to output DoP idle on undeflow. NOT FOR GENERAL RELEASE 2013-09-05 23:22:00 +01:00
Ross Owen
56e92355a3 Underflow case now uses shared mute sample (for DSD use) 2013-08-29 19:27:21 +01:00
Ross Owen
1e33bf819d Changes to support DSD Native mode 2013-08-23 14:23:37 +01:00
Ross Owen
f52aaeba8e Fixed issued with outover flow when CHAN_BUFF_CTRL enabled 2013-07-16 17:12:41 +01:00
Ross Owen
1bd8744dc2 Added control channel for buffering for lower-power, non-memory polling buffering 2013-07-09 15:48:26 +01:00
Ross Owen
b2491e95c9 Added robustness to bad length Audio 1.0 packets (bug #11032) 2013-06-10 15:47:49 +01:00