forked from PAWPAW-Mirror/lib_xua
Decouple no longer remembers dsdMode. It always sends through changes. EP should only send though changes as required.
This commit is contained in:
@@ -7,7 +7,6 @@
|
|||||||
|
|
||||||
#ifdef NATIVE_DSD
|
#ifdef NATIVE_DSD
|
||||||
#include "usbaudio20.h" /* Defines from the USB Audio 2.0 Specifications */
|
#include "usbaudio20.h" /* Defines from the USB Audio 2.0 Specifications */
|
||||||
unsigned g_curDsdMode = DSD_MODE_OFF;
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef HID_CONTROLS
|
#ifdef HID_CONTROLS
|
||||||
@@ -876,19 +875,13 @@ void decouple(chanend c_mix_out,
|
|||||||
dsdMode = DSD_MODE_NATIVE;
|
dsdMode = DSD_MODE_NATIVE;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* To avoid clicks and pops only change mode if we have to */
|
/* Wait for the audio code to request samples and respond with command */
|
||||||
if(dsdMode != g_curDsdMode)
|
inuint(c_mix_out);
|
||||||
{
|
outct(c_mix_out, SET_DSD_MODE);
|
||||||
g_curDsdMode = dsdMode;
|
outuint(c_mix_out, dsdMode);
|
||||||
|
|
||||||
/* Wait for the audio code to request samples and respond with command */
|
/* Wait for handshake back */
|
||||||
inuint(c_mix_out);
|
chkct(c_mix_out, XS1_CT_END);
|
||||||
outct(c_mix_out, SET_DSD_MODE);
|
|
||||||
outuint(c_mix_out, dsdMode);
|
|
||||||
|
|
||||||
/* Wait for handshake back */
|
|
||||||
chkct(c_mix_out, XS1_CT_END);
|
|
||||||
}
|
|
||||||
#endif
|
#endif
|
||||||
asm("outct res[%0],%1"::"r"(buffer_aud_ctl_chan),"r"(XS1_CT_END));
|
asm("outct res[%0],%1"::"r"(buffer_aud_ctl_chan),"r"(XS1_CT_END));
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user