From cd8e11b463bf57f832bf44d350238057db3e2d6d Mon Sep 17 00:00:00 2001 From: Michael Sevakis Date: Sun, 4 Mar 2012 08:52:50 -0500 Subject: Tweak some PCM drivers for less typecasting with the data pointer. Yeah, sizeof (void) here with GCC is 1. If something has a problem with that, we'll set it straight. Change-Id: I9ad3eee75dd440f6404a04a501d1533c8bc18ba9 --- firmware/target/hosted/android/pcm-android.c | 8 ++++---- firmware/target/hosted/maemo/pcm-gstreamer.c | 9 ++++----- firmware/target/hosted/pcm-alsa.c | 6 +++--- firmware/target/hosted/sdl/pcm-sdl.c | 6 +++--- 4 files changed, 14 insertions(+), 15 deletions(-) (limited to 'firmware/target/hosted') diff --git a/firmware/target/hosted/android/pcm-android.c b/firmware/target/hosted/android/pcm-android.c index 7a0f28634e..0428e5f541 100644 --- a/firmware/target/hosted/android/pcm-android.c +++ b/firmware/target/hosted/android/pcm-android.c @@ -31,8 +31,8 @@ extern JNIEnv *env_ptr; /* infos about our pcm chunks */ +static const void *pcm_data_start; static size_t pcm_data_size; -static char *pcm_data_start; static int audio_locked = 0; static pthread_mutex_t audio_lock_mutex = PTHREAD_MUTEX_INITIALIZER; @@ -81,7 +81,7 @@ Java_org_rockbox_RockboxPCM_nativeWrite(JNIEnv *env, jobject this, if (!pcm_data_size) /* get some initial data */ { new_buffer = pcm_play_dma_complete_callback(PCM_DMAST_OK, - (const void**)&pcm_data_start, &pcm_data_size); + &pcm_data_start, &pcm_data_size); } while(left > 0 && pcm_data_size) @@ -115,7 +115,7 @@ Java_org_rockbox_RockboxPCM_nativeWrite(JNIEnv *env, jobject this, if (pcm_data_size == 0) /* need new data */ { new_buffer = pcm_play_dma_complete_callback(PCM_DMAST_OK, - (const void**)&pcm_data_start, &pcm_data_size); + &pcm_data_start, &pcm_data_size); } else /* increment data pointer and feed more */ pcm_data_start += transfer_size; @@ -146,7 +146,7 @@ void pcm_dma_apply_settings(void) void pcm_play_dma_start(const void *addr, size_t size) { - pcm_data_start = (char*)addr; + pcm_data_start = addr; pcm_data_size = size; pcm_play_dma_pause(false); diff --git a/firmware/target/hosted/maemo/pcm-gstreamer.c b/firmware/target/hosted/maemo/pcm-gstreamer.c index 61f33cbadd..10a9d77880 100644 --- a/firmware/target/hosted/maemo/pcm-gstreamer.c +++ b/firmware/target/hosted/maemo/pcm-gstreamer.c @@ -90,7 +90,7 @@ GstBus *gst_bus = NULL; static int bus_watch_id = 0; GMainLoop *pcm_loop = NULL; -static __u8* pcm_data = NULL; +static const void* pcm_data = NULL; static size_t pcm_data_size = 0; static int audio_locked = 0; @@ -128,7 +128,7 @@ void pcm_dma_apply_settings(void) void pcm_play_dma_start(const void *addr, size_t size) { - pcm_data = (__u8 *) addr; + pcm_data = addr; pcm_data_size = size; if (playback_granted) @@ -189,13 +189,12 @@ static void feed_data(GstElement * appsrc, guint size_hint, void *unused) from inside gstreamer's stream thread as it will deadlock */ inside_feed_data = 1; - if (pcm_play_dma_complete_callback(PCM_DMAST_OK, (const void **)&pcm_data, - &pcm_data_size)) + if (pcm_play_dma_complete_callback(PCM_DMAST_OK, &pcm_data, &pcm_data_size)) { GstBuffer *buffer = gst_buffer_new (); GstFlowReturn ret; - GST_BUFFER_DATA (buffer) = pcm_data; + GST_BUFFER_DATA (buffer) = (__u8 *)pcm_data; GST_BUFFER_SIZE (buffer) = pcm_data_size; g_signal_emit_by_name (appsrc, "push-buffer", buffer, &ret); diff --git a/firmware/target/hosted/pcm-alsa.c b/firmware/target/hosted/pcm-alsa.c index 1385f75b34..715af58fd9 100644 --- a/firmware/target/hosted/pcm-alsa.c +++ b/firmware/target/hosted/pcm-alsa.c @@ -75,7 +75,7 @@ static snd_pcm_sframes_t buffer_size = MIX_FRAME_SAMPLES * 32; /* ~16k */ static snd_pcm_sframes_t period_size = MIX_FRAME_SAMPLES * 4; /* ~4k */ static short *frames; -static const char *pcm_data = 0; +static const void *pcm_data = 0; static size_t pcm_size = 0; #ifdef USE_ASYNC_CALLBACK @@ -223,8 +223,8 @@ static bool fill_frames(void) if (!pcm_size) { new_buffer = true; - if (!pcm_play_dma_complete_callback(PCM_DMAST_OK, - (const void **)&pcm_data, &pcm_size)) + if (!pcm_play_dma_complete_callback(PCM_DMAST_OK, &pcm_data, + &pcm_size)) { return false; } diff --git a/firmware/target/hosted/sdl/pcm-sdl.c b/firmware/target/hosted/sdl/pcm-sdl.c index 2c535b2dc5..bd56189f02 100644 --- a/firmware/target/hosted/sdl/pcm-sdl.c +++ b/firmware/target/hosted/sdl/pcm-sdl.c @@ -56,7 +56,7 @@ static int sim_volume = 0; #if CONFIG_CODEC == SWCODEC static int cvt_status = -1; -static const Uint8* pcm_data; +static const void *pcm_data; static size_t pcm_data_size; static size_t pcm_sample_bytes; static size_t pcm_channel_bytes; @@ -245,8 +245,8 @@ static void sdl_audio_callback(struct pcm_udata *udata, Uint8 *stream, int len) /* Audio card wants more? Get some more then. */ while (len > 0) { - new_buffer = pcm_play_dma_complete_callback(PCM_DMAST_OK, - (const void **)&pcm_data, &pcm_data_size); + new_buffer = pcm_play_dma_complete_callback(PCM_DMAST_OK, &pcm_data, + &pcm_data_size); if (!new_buffer) { DEBUGF("sdl_audio_callback: No Data.\n"); -- cgit v1.2.3