1
0
Fork 0
forked from len0rd/rockbox

Revert r21912 : "Storage API : remove undeeded target-specific functions"

After a discussion mixed on mailing list and irc, it was agreed that
more abstraction for plugins is better (so developers don't have to add
a check to HAVE_DISK_STORAGE when writing disk-specific code)

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21923 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Rafaël Carré 2009-07-17 16:34:34 +00:00
parent cf9935d636
commit bdb5974c0e
15 changed files with 97 additions and 29 deletions

View file

@ -284,11 +284,9 @@ static const struct plugin_api rockbox_api = {
fdprintf,
read_line,
settings_parseline,
#ifdef HAVE_DISK_STORAGE
storage_sleep,
storage_spin,
storage_spindown,
#endif
#if USING_STORAGE_CALLBACK
register_storage_idle_func,
unregister_storage_idle_func,

View file

@ -129,12 +129,12 @@ void* plugin_get_buffer(size_t *buffer_size);
#define PLUGIN_MAGIC 0x526F634B /* RocK */
/* increase this every time the api struct changes */
#define PLUGIN_API_VERSION 163
#define PLUGIN_API_VERSION 164
/* update this to latest version if a change to the api struct breaks
backwards compatibility (and please take the opportunity to sort in any
new function which are "waiting" at the end of the function table) */
#define PLUGIN_MIN_API_VERSION 163
#define PLUGIN_MIN_API_VERSION 164
/* plugin return codes */
enum plugin_status {
@ -395,11 +395,9 @@ struct plugin_api {
int (*fdprintf)(int fd, const char *fmt, ...) ATTRIBUTE_PRINTF(2, 3);
int (*read_line)(int fd, char* buffer, int buffer_size);
bool (*settings_parseline)(char* line, char** name, char** value);
#ifdef HAVE_DISK_STORAGE
void (*storage_sleep)(void);
void (*storage_spin)(void);
void (*storage_spindown)(int seconds);
#endif
#if USING_STORAGE_CALLBACK
void (*register_storage_idle_func)(storage_idle_notify function);
void (*unregister_storage_idle_func)(storage_idle_notify function, bool run);

View file

@ -173,9 +173,7 @@ void load_settings(void){
draw_message(display, MESSAGE_ERRLOAD, 1);
display->update();
}
#ifdef HAVE_DISK_STORAGE
rb->storage_sleep();
#endif
rb->sleep(HZ);
}

View file

@ -1038,9 +1038,7 @@ int load_and_show(char* filename)
else if(immediate_ata_off)
{
/* running slideshow and time is long enough: power down disk */
#ifdef HAVE_DISK_STORAGE
rb->storage_sleep();
#endif
}
#endif

View file

@ -172,9 +172,7 @@ static inline void disk_buf_buffer(void)
if (!stream_get_window(&sw))
{
disk_buf.state = TSTATE_DATA;
#ifdef HAVE_DISK_STORAGE
rb->storage_sleep();
#endif
break;
}
@ -189,9 +187,7 @@ static inline void disk_buf_buffer(void)
/* Free space is less than one page */
disk_buf.state = TSTATE_DATA;
disk_buf.low_wm = DISK_BUF_LOW_WATERMARK;
#ifdef HAVE_DISK_STORAGE
rb->storage_sleep();
#endif
break;
}
@ -213,9 +209,7 @@ static inline void disk_buf_buffer(void)
{
/* Error or end of stream */
disk_buf.state = TSTATE_EOS;
#ifdef HAVE_DISK_STORAGE
rb->storage_sleep();
#endif
break;
}

View file

@ -681,9 +681,7 @@ int PlayTick(int fd)
#endif
)
{
#ifdef HAVE_DISK_STORAGE
rb->storage_sleep(); /* no point in leaving the disk run til timeout */
#endif
gPlay.bDiskSleep = true;
}

View file

@ -3596,9 +3596,7 @@ int play_file(char* filename)
if (free_space <= 0)
{
filling = false;
#ifdef HAVE_DISK_STORAGE
rb->storage_sleep();
#endif
}
else
{