add HAVE_DISK_STORAGE, and use that instead of HAVE_FLASH_STORAGE when checking for an actual disk (i.e. related to spindown, skipping,...)

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18735 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Frank Gevaerts 2008-10-07 19:37:33 +00:00
parent 23b7e95770
commit 46573019a5
43 changed files with 142 additions and 26 deletions

View File

@ -36,6 +36,10 @@ dircache
flash_storage
#endif
#if defined(HAVE_DISK_STORAGE)
disk_storage
#endif
#if defined(HAVE_HEADPHONE_DETECTION)
headphone_detection
#endif

View File

@ -67,7 +67,7 @@ MENUITEM_SETTING(ff_rewind_accel, &global_settings.ff_rewind_accel, NULL);
MENUITEM_SETTING(ff_rewind_min_step, &global_settings.ff_rewind_min_step, NULL);
MAKE_MENU(ff_rewind_settings_menu, ID2P(LANG_WIND_MENU), 0, Icon_NOICON,
&ff_rewind_min_step, &ff_rewind_accel);
#ifndef HAVE_FLASH_STORAGE
#ifdef HAVE_DISK_STORAGE
#if CONFIG_CODEC == SWCODEC
static int buffermargin_callback(int action,const struct menu_item_ex *this_item)
{
@ -85,7 +85,7 @@ static int buffermargin_callback(int action,const struct menu_item_ex *this_item
#endif
MENUITEM_SETTING(buffer_margin, &global_settings.buffer_margin,
buffermargin_callback);
#endif /*HAVE_FLASH_STORAGE */
#endif /*HAVE_DISK_STORAGE */
MENUITEM_SETTING(fade_on_stop, &global_settings.fade_on_stop, NULL);
MENUITEM_SETTING(party_mode, &global_settings.party_mode, NULL);
@ -181,7 +181,7 @@ MAKE_MENU(playback_settings,ID2P(LANG_PLAYBACK),0,
Icon_Playback_menu,
&shuffle_item, &repeat_mode, &play_selected,
&ff_rewind_settings_menu,
#ifndef HAVE_FLASH_STORAGE
#ifdef HAVE_DISK_STORAGE
&buffer_margin,
#endif
&fade_on_stop, &party_mode,

View File

@ -173,7 +173,7 @@ MAKE_MENU(battery_menu, ID2P(LANG_BATTERY_MENU), 0, Icon_NOICON,
#endif
);
/* Disk */
#ifndef HAVE_FLASH_STORAGE
#ifdef HAVE_DISK_STORAGE
MENUITEM_SETTING(disk_spindown, &global_settings.disk_spindown, NULL);
#endif
#ifdef HAVE_DIRCACHE
@ -200,9 +200,9 @@ static int dircache_callback(int action,const struct menu_item_ex *this_item)
}
MENUITEM_SETTING(dircache, &global_settings.dircache, dircache_callback);
#endif
#if defined(HAVE_DIRCACHE) || !defined(HAVE_FLASH_STORAGE)
#if defined(HAVE_DIRCACHE) || defined(HAVE_DISK_STORAGE)
MAKE_MENU(disk_menu, ID2P(LANG_DISK_MENU), 0, Icon_NOICON,
#ifndef HAVE_FLASH_STORAGE
#ifdef HAVE_DISK_STORAGE
&disk_spindown,
#endif
#ifdef HAVE_DIRCACHE
@ -374,7 +374,7 @@ MAKE_MENU(system_menu, ID2P(LANG_SYSTEM),
#if (BATTERY_CAPACITY_INC > 0) || (BATTERY_TYPES_COUNT > 1)
&battery_menu,
#endif
#if defined(HAVE_DIRCACHE) || !defined(HAVE_FLASH_STORAGE)
#if defined(HAVE_DIRCACHE) || defined(HAVE_DISK_STORAGE)
&disk_menu,
#endif
#if CONFIG_RTC

View File

@ -783,7 +783,7 @@ int audio_get_file_pos(void)
return 0;
}
#ifndef HAVE_FLASH_STORAGE
#ifdef HAVE_DISK_STORAGE
void audio_set_buffer_margin(int setting)
{
static const int lookup[] = {5, 15, 30, 60, 120, 180, 300, 600};
@ -2187,7 +2187,7 @@ static void audio_play_start(size_t offset)
/* Officially playing */
queue_reply(&audio_queue, 1);
#ifndef HAVE_FLASH_STORAGE
#ifdef HAVE_DISK_STORAGE
set_filebuf_watermark(buffer_margin, 0);
#endif
@ -2584,7 +2584,7 @@ void audio_init(void)
audio_is_initialized = true;
sound_settings_apply();
#ifndef HAVE_FLASH_STORAGE
#ifdef HAVE_DISK_STORAGE
audio_set_buffer_margin(global_settings.buffer_margin);
#endif

View File

@ -1245,7 +1245,7 @@ static void playlist_thread(void)
int sleep_time = 5;
#ifndef HAVE_FLASH_STORAGE
#ifdef HAVE_DISK_STORAGE
if (global_settings.disk_spindown > 1 &&
global_settings.disk_spindown <= 5)
sleep_time = global_settings.disk_spindown - 1;

View File

@ -2633,7 +2633,7 @@ int show_menu(void) /* return 1 to quit */
break;
}
#if !defined(SIMULATOR) && !defined(HAVE_FLASH_STORAGE)
#if !defined(SIMULATOR) && defined(HAVE_DISK_STORAGE)
/* change ata spindown time based on slideshow time setting */
immediate_ata_off = false;
rb->ata_spindown(rb->global_settings->disk_spindown);
@ -3412,7 +3412,7 @@ enum plugin_status plugin_start(const struct plugin_api* api, const void* parame
ARRAYLEN(jpeg_config), JPEG_SETTINGS_VERSION);
}
#if !defined(SIMULATOR) && !defined(HAVE_FLASH_STORAGE)
#if !defined(SIMULATOR) && defined(HAVE_DISK_STORAGE)
/* set back ata spindown time in case we changed it */
rb->ata_spindown(rb->global_settings->disk_spindown);
#endif

View File

@ -152,7 +152,7 @@ static inline bool stream_can_seek(void)
/* Keep the disk spinning (for seeking and browsing) */
static inline void stream_keep_disk_active(void)
{
#ifndef HAVE_FLASH_STORAGE
#ifdef HAVE_DISK_STORAGE
rb->ata_spin();
#endif
}

View File

@ -656,7 +656,7 @@ int PlayTick(int fd)
}
if (!gPlay.bRefilling
#ifndef HAVE_FLASH_STORAGE
#ifdef HAVE_DISK_STORAGE
&& rb->global_settings->disk_spindown < 20 /* condition for test only */
#endif
)

View File

@ -721,7 +721,7 @@ void settings_apply(bool read_disk)
sound_settings_apply();
#ifndef HAVE_FLASH_STORAGE
#ifdef HAVE_DISK_STORAGE
audio_set_buffer_margin(global_settings.buffer_margin);
#endif
@ -767,7 +767,7 @@ void settings_apply(bool read_disk)
#ifdef HAVE_BUTTON_LIGHT
buttonlight_set_timeout(global_settings.buttonlight_timeout);
#endif
#ifndef HAVE_FLASH_STORAGE
#ifdef HAVE_DISK_STORAGE
ata_spindown(global_settings.disk_spindown);
#endif
#if (CONFIG_CODEC == MAS3507D) && !defined(SIMULATOR)

View File

@ -449,7 +449,7 @@ struct user_settings
int ff_rewind_min_step; /* FF/Rewind minimum step size */
int ff_rewind_accel; /* FF/Rewind acceleration (in seconds per doubling) */
#ifndef HAVE_FLASH_STORAGE
#ifdef HAVE_DISK_STORAGE
int disk_spindown; /* time until disk spindown, in seconds (0=off) */
int buffer_margin; /* MP3 buffer watermark margin, in seconds */
#endif

View File

@ -695,22 +695,22 @@ const struct settings_list settings[] = {
"seek acceleration", "very fast,fast,normal,slow,very slow", NULL, 5,
ID2P(LANG_VERY_FAST), ID2P(LANG_FAST), ID2P(LANG_NORMAL),
ID2P(LANG_SLOW) , ID2P(LANG_VERY_SLOW)),
#if (CONFIG_CODEC == SWCODEC) && !defined(HAVE_FLASH_STORAGE)
#if (CONFIG_CODEC == SWCODEC) && defined(HAVE_DISK_STORAGE)
STRINGCHOICE_SETTING(0, buffer_margin, LANG_MP3BUFFER_MARGIN, 0,"antiskip",
"5s,15s,30s,1min,2min,3min,5min,10min", NULL, 8,
TALK_ID(5, UNIT_SEC), TALK_ID(15, UNIT_SEC),
TALK_ID(30, UNIT_SEC), TALK_ID(1, UNIT_MIN),
TALK_ID(2, UNIT_MIN), TALK_ID(3, UNIT_MIN),
TALK_ID(5, UNIT_MIN), TALK_ID(10, UNIT_MIN)),
#elif !defined(HAVE_FLASH_STORAGE)
#elif defined(HAVE_DISK_STORAGE)
INT_SETTING(0, buffer_margin, LANG_MP3BUFFER_MARGIN, 0, "antiskip",
UNIT_SEC, 0, 7, 1, NULL, NULL, audio_set_buffer_margin),
#endif
/* disk */
#ifndef HAVE_FLASH_STORAGE
#ifdef HAVE_DISK_STORAGE
INT_SETTING(0, disk_spindown, LANG_SPINDOWN, 5, "disk spindown",
UNIT_SEC, 3, 254, 1, NULL, NULL, ata_spindown),
#endif /* HAVE_FLASH_STORAGE */
#endif /* HAVE_DISK_STORAGE */
/* browser */
CHOICE_SETTING(0, dirfilter, LANG_FILTER, SHOW_SUPPORTED, "show files",
"all,supported,music,playlists", NULL, 4, ID2P(LANG_ALL),

View File

@ -1056,7 +1056,7 @@ static int retrieve_entries(struct tree_context *c, struct tagcache_search *tcs,
/* Show search progress straight away if the disk needs to spin up,
otherwise show it after the normal 1/2 second delay */
show_search_progress(
#if !defined(HAVE_FLASH_STORAGE)
#ifdef HAVE_DISK_STORAGE
ata_disk_is_active()
#else
true

View File

@ -92,7 +92,7 @@ struct mp3entry* audio_current_track(void);
struct mp3entry* audio_next_track(void);
bool audio_has_changed_track(void);
void audio_get_debugdata(struct audio_debug *dbgdata);
#ifndef HAVE_FLASH_STORAGE
#ifdef HAVE_DISK_STORAGE
void audio_set_buffer_margin(int seconds);
#endif
unsigned int audio_error(void);

View File

@ -85,6 +85,10 @@
/* define this if you have a real-time clock */
//#define CONFIG_RTC RTC_RX5X348AB
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
/* Define this for LCD backlight available */
//#define HAVE_BACKLIGHT

View File

@ -85,6 +85,10 @@
/* define this if you have a real-time clock */
//#define CONFIG_RTC RTC_RX5X348AB
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
/* Define this for LCD backlight available */
//#define HAVE_BACKLIGHT

View File

@ -85,6 +85,10 @@
/* define this if you have a real-time clock */
//#define CONFIG_RTC RTC_RX5X348AB
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
/* Define this for LCD backlight available */
//#define HAVE_BACKLIGHT

View File

@ -65,6 +65,10 @@
/* Define this for LCD backlight available */
#define HAVE_BACKLIGHT
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
#define CONFIG_I2C I2C_PLAYREC
#define BATTERY_CAPACITY_DEFAULT 2200 /* default battery capacity */

View File

@ -56,6 +56,10 @@
/* Define this for LCD backlight available */
#define HAVE_BACKLIGHT
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
/* Define this if you have a software controlled poweroff */
#define HAVE_SW_POWEROFF

View File

@ -62,6 +62,10 @@
/* define this if you have a real-time clock */
#define CONFIG_RTC RTC_S3C2440
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
/* Define this for LCD backlight available */
#define HAVE_BACKLIGHT

View File

@ -79,6 +79,10 @@
#define HAVE_RTC_ALARM
#endif
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
/* Define this if you have a software controlled poweroff */
#define HAVE_SW_POWEROFF

View File

@ -66,6 +66,10 @@
#define CONFIG_LCD LCD_S1D15E06
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
/* Define this for LCD backlight available */
#define HAVE_BACKLIGHT

View File

@ -83,6 +83,10 @@
#define CONFIG_TUNER TEA5767
#define CONFIG_TUNER_XTAL 32768
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
/* Define this for LCD backlight available */
#define HAVE_BACKLIGHT

View File

@ -53,6 +53,10 @@
/* Define this if you do software codec */
#define CONFIG_CODEC SWCODEC
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
/* Define this if you have an remote lcd */
#define HAVE_REMOTE_LCD

View File

@ -55,6 +55,10 @@
/* define this if you have a real-time clock */
#define CONFIG_RTC RTC_PCF50606
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
/* Define this if you have an remote lcd */
#define HAVE_REMOTE_LCD

View File

@ -101,6 +101,10 @@
/* #define CONFIG_TUNER TEA5767 */
/* #define CONFIG_TUNER_XTAL 32768 */
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
/* Define this for LCD backlight available */
#define HAVE_BACKLIGHT
/* #define HAVE_BACKLIGHT_BRIGHTNESS */

View File

@ -71,6 +71,10 @@
/* Define this for LCD backlight available */
#define HAVE_BACKLIGHT
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
/* Define this if you have a software controlled poweroff */
#define HAVE_SW_POWEROFF

View File

@ -78,6 +78,10 @@
/* Define this for LCD backlight available */
#define HAVE_BACKLIGHT
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
/* Define this if you have a software controlled poweroff */
#define HAVE_SW_POWEROFF

View File

@ -91,6 +91,10 @@
#define HAVE_BACKLIGHT
#define HAVE_BACKLIGHT_BRIGHTNESS
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
/* Define this if you have a software controlled poweroff */
#define HAVE_SW_POWEROFF

View File

@ -78,6 +78,10 @@
/* Define this if you have the WM8731L audio codec */
#define HAVE_WM8721
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
/* WM8721 has no tone controls, so we use the software ones */
#define HAVE_SW_TONE_CONTROLS

View File

@ -91,6 +91,10 @@
/* WM8731 has no tone controls, so we use the software ones */
#define HAVE_SW_TONE_CONTROLS
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
/* Define this for LCD backlight available */
#define HAVE_BACKLIGHT

View File

@ -91,6 +91,10 @@
#define AB_REPEAT_ENABLE 1
#define ACTION_WPSAB_SINGLE ACTION_WPS_BROWSE
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
/* Define this for LCD backlight available */
#define HAVE_BACKLIGHT

View File

@ -78,6 +78,10 @@
#define AB_REPEAT_ENABLE 1
#define ACTION_WPSAB_SINGLE ACTION_WPS_BROWSE
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
/* Define this for LCD backlight available */
#define HAVE_BACKLIGHT

View File

@ -93,6 +93,10 @@
#define AB_REPEAT_ENABLE 1
#define ACTION_WPSAB_SINGLE ACTION_WPS_BROWSE
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
/* Define this for LCD backlight available */
#define HAVE_BACKLIGHT

View File

@ -93,6 +93,10 @@
#define AB_REPEAT_ENABLE 1
#define ACTION_WPSAB_SINGLE ACTION_WPS_BROWSE
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
/* Define this for LCD backlight available */
#define HAVE_BACKLIGHT

View File

@ -78,6 +78,10 @@
#define AB_REPEAT_ENABLE 1
#define ACTION_WPSAB_SINGLE ACTION_WPS_BROWSE
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
/* Define this for LCD backlight available */
#define HAVE_BACKLIGHT
#define HAVE_BACKLIGHT_BRIGHTNESS

View File

@ -61,6 +61,10 @@
#define AB_REPEAT_ENABLE 1
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
/* Define this for LCD backlight available */
#define HAVE_BACKLIGHT

View File

@ -96,6 +96,10 @@
/* define this if you have a real-time clock */
#define CONFIG_RTC RTC_RX5X348AB
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
/* Define this for LCD backlight available */
#define HAVE_BACKLIGHT

View File

@ -30,6 +30,10 @@
/* Define this if you have a DAC3550A */
#define HAVE_DAC3550A
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
/* Define this for LCD backlight available */
#define HAVE_BACKLIGHT

View File

@ -53,6 +53,10 @@
/* Define this if you have a MAS3587F */
#define CONFIG_CODEC MAS3587F
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
/* Define this for LCD backlight available */
#define HAVE_BACKLIGHT

View File

@ -59,6 +59,10 @@
/* Define this if you have a MAS3587F */
#define CONFIG_CODEC MAS3587F
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
/* Define this for LCD backlight available */
#define HAVE_BACKLIGHT

View File

@ -67,6 +67,10 @@
#define AB_REPEAT_ENABLE 1
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
/* Define this for LCD backlight available */
#define HAVE_BACKLIGHT

View File

@ -535,7 +535,7 @@ static void recalculate_watermark(int bitrate)
}
}
#ifndef HAVE_FLASH_STORAGE
#ifdef HAVE_DISK_STORAGE
void audio_set_buffer_margin(int seconds)
{
low_watermark_margin = seconds;

View File

@ -132,7 +132,7 @@ static void usb_slave_mode(bool on)
static void try_reboot(void)
{
#ifndef HAVE_FLASH_STORAGE
#ifdef HAVE_DISK_STORAGE
ata_sleepnow(); /* Immediately spindown the disk. */
sleep(HZ*2);
#endif