From d18a5cad7f002b2f67385e57118048ea3db185a6 Mon Sep 17 00:00:00 2001 From: Michael Sevakis Date: Sun, 4 Mar 2012 14:44:43 -0500 Subject: Tweak paramters of mp3_play_data and callback. Use generic void * and size_t and make mp3_play_data and its callback agree on types. Use mp3_play_callback_t instead of prototyping right in the function call (so it's not so messy to look at). Change doesn't appear to require plugin API version increment. Change-Id: Idcab2740ee316a2beb6e0a87b8f4934d9d6b3dd8 --- firmware/export/mp3_playback.h | 8 +++++--- firmware/target/sh/archos/audio-archos.c | 9 ++++----- 2 files changed, 9 insertions(+), 8 deletions(-) (limited to 'firmware') diff --git a/firmware/export/mp3_playback.h b/firmware/export/mp3_playback.h index 6fdaa31cac..de27a2a46d 100644 --- a/firmware/export/mp3_playback.h +++ b/firmware/export/mp3_playback.h @@ -26,6 +26,9 @@ #include +/* callback fn */ +typedef void (*mp3_play_callback_t)(const void **start, size_t* size); + /* functions formerly in mpeg.c */ void mp3_init(int volume, int bass, int treble, int balance, int loudness, int avc, int channel_config, int stereo_width, @@ -42,9 +45,8 @@ void demand_irq_enable(bool on); #if CONFIG_CODEC == MAS3587F void mp3_play_init(void); #endif -void mp3_play_data(const unsigned char* start, int size, - void (*get_more)(unsigned char** start, size_t* size) /* callback fn */ -); +void mp3_play_data(const void* start, size_t size, + mp3_play_callback_t get_more); void mp3_play_pause(bool play); bool mp3_pause_done(void); void mp3_play_stop(void); diff --git a/firmware/target/sh/archos/audio-archos.c b/firmware/target/sh/archos/audio-archos.c index 9dfcb9cb97..2c2579bec5 100644 --- a/firmware/target/sh/archos/audio-archos.c +++ b/firmware/target/sh/archos/audio-archos.c @@ -53,7 +53,7 @@ static bool paused; /* playback is paused */ static bool playing; /* We are playing an MP3 stream */ /* the registered callback function to ask for more mp3 data */ -static void (*callback_for_more)(unsigned char**, size_t*); +static mp3_play_callback_t callback_for_more; /* list of tracks in memory */ #define MAX_ID3_TAGS (1<<4) /* Must be power of 2 */ @@ -156,7 +156,7 @@ static void play_tick(void) void DEI3(void) __attribute__((interrupt_handler)); void DEI3(void) { - unsigned char* start; + const void* start; size_t size = 0; if (callback_for_more != NULL) @@ -469,9 +469,8 @@ void mp3_play_init(void) } #endif -void mp3_play_data(const unsigned char* start, int size, - void (*get_more)(unsigned char** start, size_t* size) /* callback fn */ -) +void mp3_play_data(const void* start, size_t size, + mp3_play_callback_t get_more) { /* init DMA */ DAR3 = 0x5FFFEC3; -- cgit v1.2.3