summaryrefslogtreecommitdiff
path: root/firmware/target/arm/tms320dm320/sdmmc-dm320.c
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/target/arm/tms320dm320/sdmmc-dm320.c')
-rw-r--r--firmware/target/arm/tms320dm320/sdmmc-dm320.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/firmware/target/arm/tms320dm320/sdmmc-dm320.c b/firmware/target/arm/tms320dm320/sdmmc-dm320.c
index 307b90ec3b..7df2925e20 100644
--- a/firmware/target/arm/tms320dm320/sdmmc-dm320.c
+++ b/firmware/target/arm/tms320dm320/sdmmc-dm320.c
@@ -27,6 +27,7 @@
27#include "panic.h" 27#include "panic.h"
28#include "kernel.h" 28#include "kernel.h"
29#include "dma-target.h" 29#include "dma-target.h"
30#include "ata_idle_notify.h"
30 31
31//#define SD_DEBUG 32//#define SD_DEBUG
32 33
@@ -576,8 +577,8 @@ static void sd_thread(void) NORETURN_ATTR;
576static void sd_thread(void) 577static void sd_thread(void)
577{ 578{
578 struct queue_event ev; 579 struct queue_event ev;
580 bool idle_notified = false;
579 581
580 /* TODO */
581 while (1) 582 while (1)
582 { 583 {
583 queue_wait_w_tmo(&sd_queue, &ev, HZ); 584 queue_wait_w_tmo(&sd_queue, &ev, HZ);
@@ -627,6 +628,17 @@ static void sd_thread(void)
627 } 628 }
628 break; 629 break;
629#endif 630#endif
631 case SYS_TIMEOUT:
632 if (TIME_BEFORE(current_tick, last_disk_activity+(3*HZ)))
633 {
634 idle_notified = false;
635 }
636 else if (!idle_notified)
637 {
638 call_storage_idle_notifys(false);
639 idle_notified = true;
640 }
641 break;
630 } 642 }
631 } 643 }
632} 644}