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/arm/s5l8700/pcm-s5l8700.c | 10 +++++----- firmware/target/arm/s5l8702/pcm-s5l8702.c | 7 +++---- 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 +++--- 6 files changed, 22 insertions(+), 24 deletions(-) (limited to 'firmware/target') diff --git a/firmware/target/arm/s5l8700/pcm-s5l8700.c b/firmware/target/arm/s5l8700/pcm-s5l8700.c index c5a5bcf74f..d8387c2aa5 100644 --- a/firmware/target/arm/s5l8700/pcm-s5l8700.c +++ b/firmware/target/arm/s5l8700/pcm-s5l8700.c @@ -43,9 +43,9 @@ static volatile int locked = 0; static const int zerosample = 0; static unsigned char dblbuf[1024] IBSS_ATTR; -static const unsigned char* queuedbuf; +static const void* queuedbuf; static size_t queuedsize; -static const unsigned char* nextbuf; +static const void* nextbuf; static size_t nextsize; static const struct div_entry { @@ -116,8 +116,8 @@ void INT_DMA(void) { if (!nextsize) { - new_buffer = pcm_play_dma_complete_callback(PCM_DMAST_OK, - (const void**)&nextbuf, &nextsize); + new_buffer = pcm_play_dma_complete_callback( + PCM_DMAST_OK, &nextbuf, &nextsize); if (!new_buffer) break; } @@ -144,7 +144,7 @@ void INT_DMA(void) void pcm_play_dma_start(const void* addr, size_t size) { /* DMA channel on */ - nextbuf = (const unsigned char*)addr; + nextbuf = addr; nextsize = size; queuedsize = 0; DMABASE0 = (unsigned int)(&zerosample); diff --git a/firmware/target/arm/s5l8702/pcm-s5l8702.c b/firmware/target/arm/s5l8702/pcm-s5l8702.c index ef404ddd9c..1974c47d51 100644 --- a/firmware/target/arm/s5l8702/pcm-s5l8702.c +++ b/firmware/target/arm/s5l8702/pcm-s5l8702.c @@ -38,7 +38,7 @@ static unsigned char dblbuf[2][PCM_WATERMARK * 4]; static int active_dblbuf; struct dma_lli pcm_lli[PCM_LLICOUNT] __attribute__((aligned(16))); static struct dma_lli* lastlli; -static const unsigned char* dataptr; +static const void* dataptr; size_t pcm_remaining; size_t pcm_chunksize; @@ -65,8 +65,7 @@ void INT_DMAC0C0(void) DMAC0INTTCCLR = 1; if (!pcm_remaining) { - pcm_play_dma_complete_callback(PCM_DMAST_OK, (const void**)&dataptr, - &pcm_remaining); + pcm_play_dma_complete_callback(PCM_DMAST_OK, &dataptr, &pcm_remaining); pcm_chunksize = pcm_remaining; } if (!pcm_remaining) @@ -121,7 +120,7 @@ void INT_DMAC0C0(void) void pcm_play_dma_start(const void* addr, size_t size) { - dataptr = (const unsigned char*)addr; + dataptr = addr; pcm_remaining = size; I2STXCOM = 0xe; INT_DMAC0C0(); 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