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:
parent
cf9935d636
commit
bdb5974c0e
15 changed files with 97 additions and 29 deletions
|
|
@ -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,
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -3596,9 +3596,7 @@ int play_file(char* filename)
|
|||
if (free_space <= 0)
|
||||
{
|
||||
filling = false;
|
||||
#ifdef HAVE_DISK_STORAGE
|
||||
rb->storage_sleep();
|
||||
#endif
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue