From 89e7ed5d4f96015729afce09db7c3f537eddc80b Mon Sep 17 00:00:00 2001 From: Ross Owen Date: Wed, 13 Apr 2016 20:56:41 +0100 Subject: [PATCH] pcm_pdm_mic() no longer unsafe.. seems to break [[distribute]] --- module_usb_audio/pdm_mics/pcm_pdm_mic.h | 9 +++++---- module_usb_audio/pdm_mics/pcm_pdm_mic.xc | 17 +++++++++-------- 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/module_usb_audio/pdm_mics/pcm_pdm_mic.h b/module_usb_audio/pdm_mics/pcm_pdm_mic.h index 1a21f63b..0a54943f 100644 --- a/module_usb_audio/pdm_mics/pcm_pdm_mic.h +++ b/module_usb_audio/pdm_mics/pcm_pdm_mic.h @@ -1,8 +1,6 @@ #include "mic_array.h" -void pcm_pdm_mic(chanend c_pcm_out); - #ifdef MIC_PROCESSING_USE_INTERFACE /* Interface based user processing */ typedef interface mic_process_if @@ -15,7 +13,9 @@ typedef interface mic_process_if } mic_process_if; [[distributable]] -unsafe void user_pdm_process(server mic_process_if i_mic_data); +void user_pdm_process(server mic_process_if i_mic_data); + +void pcm_pdm_mic(chanend c_pcm_out, client mic_process_if i_mic_process); #else @@ -24,6 +24,7 @@ unsafe void user_pdm_process(mic_array_frame_time_domain * unsafe audio, int out void user_pdm_init(); +void pcm_pdm_mic(chanend c_pcm_out); + #endif - diff --git a/module_usb_audio/pdm_mics/pcm_pdm_mic.xc b/module_usb_audio/pdm_mics/pcm_pdm_mic.xc index 2422b12e..7315a56b 100644 --- a/module_usb_audio/pdm_mics/pcm_pdm_mic.xc +++ b/module_usb_audio/pdm_mics/pcm_pdm_mic.xc @@ -97,15 +97,15 @@ void pdm_process(streaming chanend c_ds_output[2], chanend c_audio #error MAX_FREQ > 48000 NOT CURRENTLY SUPPORTED #endif -void pcm_pdm_mic(chanend c_pcm_out) +void pcm_pdm_mic(chanend c_pcm_out +#ifdef MIC_PROCESSING_USE_INTERFACE + , client mic_process_if i_mic_process +#endif + ) { streaming chan c_4x_pdm_mic_0, c_4x_pdm_mic_1; streaming chan c_ds_output[2]; -#ifdef MIC_PROCESSING_USE_INTERFACE - interface mic_process_if i_mic_process; -#endif - /* Note, this divide should be based on master clock freq */ configure_clock_src_divide(pdmclk, p_mclk, 2); configure_port_clock_output(p_pdm_clk, pdmclk); @@ -119,9 +119,10 @@ void pcm_pdm_mic(chanend c_pcm_out) mic_array_decimate_to_pcm_4ch(c_4x_pdm_mic_1, c_ds_output[1]); #ifdef MIC_PROCESSING_USE_INTERFACE pdm_process(c_ds_output, c_pcm_out, i_mic_process); - unsafe{ - user_pdm_process(i_mic_process); - } + //unsafe{ + //user_pdm_process(i_mic_process); + //} + /* note user pdm process is included in main.xc to allow maximum flexibilty for customisation */ #else pdm_process(c_ds_output, c_pcm_out); #endif