summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorJonathan Gordon <rockbox@jdgordon.info>2006-11-08 01:55:26 +0000
committerJonathan Gordon <rockbox@jdgordon.info>2006-11-08 01:55:26 +0000
commitf184152c0501a80e95ad871927d766fdee50281b (patch)
treeecfa4b6cdf24065b32467d6d7274a2659c3ec9b0 /apps
parent5dd07759248fec1407f6b3d4d1fb177554e45a13 (diff)
downloadrockbox-f184152c0501a80e95ad871927d766fdee50281b.tar.gz
rockbox-f184152c0501a80e95ad871927d766fdee50281b.zip
* changes to ata.c - idle callbacks are called after 2 sec of real idle,
and shutdown and usb (it makes sense here). ata_sleep doesnt get broken by callbacks. * allow ata_sleep() at the end of buffering again * config block uses ata_idle instead of delayed sector when saving * remove delayed sector code from ata_mmc.c (idle callbacks are not yet implemented for ata_mmc.c tho) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11461 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps')
-rw-r--r--apps/playback.c1
-rw-r--r--apps/settings.c8
2 files changed, 8 insertions, 1 deletions
diff --git a/apps/playback.c b/apps/playback.c
index f4274a8f02..c0558ed737 100644
--- a/apps/playback.c
+++ b/apps/playback.c
@@ -2781,6 +2781,7 @@ static void audio_fill_file_buffer(
2781 filling = false; 2781 filling = false;
2782 } 2782 }
2783 2783
2784 ata_sleep();
2784} 2785}
2785 2786
2786static void audio_rebuffer(void) 2787static void audio_rebuffer(void)
diff --git a/apps/settings.c b/apps/settings.c
index ec96cc760b..08e6376694 100644
--- a/apps/settings.c
+++ b/apps/settings.c
@@ -38,6 +38,7 @@
38#include "talk.h" 38#include "talk.h"
39#include "string.h" 39#include "string.h"
40#include "ata.h" 40#include "ata.h"
41#include "ata_idle_notify.h"
41#include "fat.h" 42#include "fat.h"
42#include "power.h" 43#include "power.h"
43#include "powermgmt.h" 44#include "powermgmt.h"
@@ -802,6 +803,11 @@ static void init_config_buffer( void )
802 config_block[3] = CONFIG_BLOCK_VERSION; 803 config_block[3] = CONFIG_BLOCK_VERSION;
803} 804}
804 805
806bool flush_config_block_callback(void)
807{
808 ata_write_sectors(IF_MV2(0,) config_sector, 1, config_block);
809 return true;
810}
805/* 811/*
806 * save the config block buffer to disk or RTC RAM 812 * save the config block buffer to disk or RTC RAM
807 */ 813 */
@@ -833,7 +839,7 @@ static int save_config_buffer( void )
833#endif 839#endif
834 840
835 if (config_sector != 0) 841 if (config_sector != 0)
836 ata_delayed_write( config_sector, config_block); 842 register_ata_idle_func(flush_config_block_callback);
837 else 843 else
838 return -1; 844 return -1;
839 845