diff --git a/lib_xua/api/xua_audiohub.h b/lib_xua/api/xua_audiohub.h index f3f512ae..cb2c2498 100644 --- a/lib_xua/api/xua_audiohub.h +++ b/lib_xua/api/xua_audiohub.h @@ -22,7 +22,7 @@ * CODEC configuration functions. */ void XUA_AudioHub(chanend ?c_aud -#if defined(SPDIF_TX) && (SPDIF_TX_TILE != AUDIO_IO_TILE) +#if (XUA_SPDIF_TX_EN) && (SPDIF_TX_TILE != AUDIO_IO_TILE) , chanend c_spdif_tx #endif #if(defined(SPDIF_RX) || defined(ADAT_RX)) diff --git a/lib_xua/api/xua_conf_default.h b/lib_xua/api/xua_conf_default.h index 1d5103ca..e6745f95 100644 --- a/lib_xua/api/xua_conf_default.h +++ b/lib_xua/api/xua_conf_default.h @@ -299,13 +299,8 @@ /** * @brief Enables SPDIF Tx. Default: 0 (Disabled) */ -#ifndef SPDIF_TX -#define SPDIF_TX (0) -#endif - -/* Tidy up old SPDIF usage */ -#if defined(SPDIF_TX) && (SPDIF_TX == 0) -#undef SPDIF_TX +#ifndef XUA_SPDIF_TX_EN +#define XUA_SPDIF_TX_EN (0) #endif /** diff --git a/lib_xua/src/core/audiohub/xua_audiohub.xc b/lib_xua/src/core/audiohub/xua_audiohub.xc index cd514f15..08922844 100755 --- a/lib_xua/src/core/audiohub/xua_audiohub.xc +++ b/lib_xua/src/core/audiohub/xua_audiohub.xc @@ -1,6 +1,6 @@ /** - * @file audio.xc - * @brief XMOS L1/L2 USB 2,0 Audio Reference Design. Audio Functions. + * @file xua_audiohub.xc + * @brief XMOS USB 2.0 Audio Reference Design. Audio Functions. * @author Ross Owen, XMOS Semiconductor Ltd * * This thread handles I2S and pars an additional SPDIF Tx thread. It forwards samples to the SPDIF Tx thread. @@ -19,7 +19,7 @@ #include "audioports.h" #include "audiohw.h" #include "mic_array_conf.h" -#ifdef SPDIF_TX +#if (XUA_SPDIF_TX_EN) #include "SpdifTransmit.h" #endif #ifdef ADAT_TX @@ -103,7 +103,7 @@ unsigned dsdMode = DSD_MODE_OFF; extern unsafe port p_mclk_in; extern in port p_mclk_in2; -#ifdef SPDIF_TX +#if (XUA_SPDIF_TX_EN) extern buffered out port:32 p_spdif_tx; #endif @@ -816,7 +816,7 @@ unsigned static deliver(chanend ?c_out, chanend ?c_spd_out /* Request digital data (with prefill) */ outuint(c_dig_rx, 0); #endif -#if defined(SPDIF_TX) && (NUM_USB_CHAN_OUT > 0) +#if (XUA_SPDIF_TX_EN) && (NUM_USB_CHAN_OUT > 0) outuint(c_spd_out, samplesOut[SPDIF_TX_INDEX]); /* Forward sample to S/PDIF Tx thread */ unsigned sample = samplesOut[SPDIF_TX_INDEX + 1]; outuint(c_spd_out, sample); /* Forward sample to S/PDIF Tx thread */ @@ -1023,7 +1023,7 @@ unsigned static deliver(chanend ?c_out, chanend ?c_spd_out return 0; } -#if defined(SPDIF_TX) && (SPDIF_TX_TILE != AUDIO_IO_TILE) +#if (XUA_SPDIF_TX_EN) && (SPDIF_TX_TILE != AUDIO_IO_TILE) void SpdifTxWrapper(chanend c_spdif_tx) { unsigned portId; @@ -1102,7 +1102,7 @@ static void dummy_deliver(chanend ?c_out, unsigned &command) } void XUA_AudioHub(chanend ?c_mix_out -#if defined(SPDIF_TX) && (SPDIF_TX_TILE != AUDIO_IO_TILE) +#if (XUA_SPDIF_TX_EN) && (SPDIF_TX_TILE != AUDIO_IO_TILE) chanend c_spdif_out, #endif #if (defined(ADAT_RX) || defined(SPDIF_RX)) @@ -1116,7 +1116,7 @@ chanend c_dig_rx, #endif ) { -#if defined (SPDIF_TX) && (SPDIF_TX_TILE == AUDIO_IO_TILE) +#if (XUA_SPDIF_TX_EN) && (SPDIF_TX_TILE == AUDIO_IO_TILE) chan c_spdif_out; #endif #ifdef ADAT_TX @@ -1155,12 +1155,12 @@ chanend c_dig_rx, configure_clock_src(clk_mst_spd, p_mclk_in); configure_out_port_no_ready(p_adat_tx, clk_mst_spd, 0); set_clock_fall_delay(clk_mst_spd, 7); -#ifndef SPDIF_TX +#if (XUA_SPDIF_TX_EN == 0) start_clock(clk_mst_spd); #endif #endif /* Configure ADAT/SPDIF tx ports */ -#if defined(SPDIF_TX) && (SPDIF_TX_TILE == AUDIO_IO_TILE) +#if (XUA_SPDIF_TX_EN) && (SPDIF_TX_TILE == AUDIO_IO_TILE) SpdifTransmitPortConfig(p_spdif_tx, clk_mst_spd, p_mclk_in); #endif @@ -1307,7 +1307,7 @@ chanend c_dig_rx, par { -#if defined(SPDIF_TX) && (SPDIF_TX_TILE == AUDIO_IO_TILE) +#if (XUA_SPDIF_TX_EN) && (SPDIF_TX_TILE == AUDIO_IO_TILE) { set_thread_fast_mode_on(); SpdifTransmit(p_spdif_tx, c_spdif_out); @@ -1321,7 +1321,7 @@ chanend c_dig_rx, } #endif { -#ifdef SPDIF_TX +#if (XUA_SPDIF_TX_EN) /* Communicate master clock and sample freq to S/PDIF thread */ outuint(c_spdif_out, curSamFreq); outuint(c_spdif_out, mClk); @@ -1346,7 +1346,7 @@ chanend c_dig_rx, outuint(c_adat_out, adatSmuxMode); #endif command = deliver(c_mix_out -#ifdef SPDIF_TX +#if (XUA_SPDIF_TX_EN) , c_spdif_out #else , null @@ -1412,7 +1412,7 @@ chanend c_dig_rx, #endif /* NO_USB */ -#ifdef SPDIF_TX +#if (XUA_SPDIF_TX_EN) /* Notify S/PDIF task of impending new freq... */ outct(c_spdif_out, XS1_CT_END); #endif diff --git a/lib_xua/src/core/main.xc b/lib_xua/src/core/main.xc index a69bc01d..d2e01db6 100755 --- a/lib_xua/src/core/main.xc +++ b/lib_xua/src/core/main.xc @@ -1,5 +1,5 @@ -#include "xua.h" /* Device specific defines */ +#include "xua.h" /* Device specific defines */ #ifndef EXCLUDE_USB_AUDIO_MAIN /** @@ -137,7 +137,7 @@ unsafe on tile[XUD_TILE] : in port p_for_mclk_count = PORT_MCLK_COUNT; #endif -#ifdef SPDIF_TX +#if (XUA_SPDIF_TX_EN == 1) on tile[SPDIF_TX_TILE] : buffered out port:32 p_spdif_tx = PORT_SPDIF_OUT; #endif @@ -423,7 +423,7 @@ VENDOR_REQUESTS_PARAMS_DEC_ #endif /* NO_USB */ void usb_audio_io(chanend ?c_aud_in, chanend ?c_adc, -#if defined(SPDIF_TX) && (SPDIF_TX_TILE != AUDIO_IO_TILE) +#if (XUA_SPDIF_TX_EN) && (SPDIF_TX_TILE != AUDIO_IO_TILE) chanend c_spdif_tx, #endif #ifdef MIXER @@ -433,7 +433,7 @@ void usb_audio_io(chanend ?c_aud_in, chanend ?c_adc, chanend ?c_adat_rx, chanend ?c_clk_ctl, chanend ?c_clk_int -#if (XUD_TILE != 0) && (AUDIO_IO_TILE == 0) +#if (XUD_TILE != 0) && (AUDIO_IO_TILE == 0) && (XUA_DFU_EN == 1) , server interface i_dfu ?dfuInterface #endif #if (NUM_PDM_MICS > 0) @@ -469,7 +469,7 @@ void usb_audio_io(chanend ?c_aud_in, chanend ?c_adc, #define AUDIO_CHANNEL c_aud_in #endif XUA_AudioHub(AUDIO_CHANNEL -#if defined(SPDIF_TX) && (SPDIF_TX_TILE != AUDIO_IO_TILE) +#if (XUA_SPDIF_TX_EN) && (SPDIF_TX_TILE != AUDIO_IO_TILE) c_spdif_tx, #endif #if defined(SPDIF_RX) || defined(ADAT_RX) @@ -545,7 +545,7 @@ int main() #define c_adat_rx null #endif -#if defined(SPDIF_TX) && (SPDIF_TX_TILE != AUDIO_IO_TILE) +#if (XUA_SPDIF_TX_EN) && (SPDIF_TX_TILE != AUDIO_IO_TILE) chan c_spdif_tx; #endif @@ -617,7 +617,7 @@ int main() p_mclk_in = p_mclk_in_; } usb_audio_io(c_mix_out, c_adc -#if defined(SPDIF_TX) && (SPDIF_TX_TILE != AUDIO_IO_TILE) +#if (XUA_SPDIF_TX_EN) && (SPDIF_TX_TILE != AUDIO_IO_TILE) , c_spdif_tx #endif #ifdef MIXER @@ -633,7 +633,7 @@ int main() ); } -#if defined(SPDIF_TX) && (SPDIF_TX_TILE != AUDIO_IO_TILE) +#if (XUA_SPDIF_TX_EN) && (SPDIF_TX_TILE != AUDIO_IO_TILE) on tile[SPDIF_TX_TILE]: { thread_speed();