diff options
-rw-r--r-- | firmware/target/arm/tms320dm320/sansa-connect/powermgmt-sansaconnect.c | 4 | ||||
-rw-r--r-- | firmware/target/arm/tms320dm320/sdmmc-dm320.c | 14 | ||||
-rw-r--r-- | firmware/target/arm/tms320dm320/system-dm320.c | 4 |
3 files changed, 20 insertions, 2 deletions
diff --git a/firmware/target/arm/tms320dm320/sansa-connect/powermgmt-sansaconnect.c b/firmware/target/arm/tms320dm320/sansa-connect/powermgmt-sansaconnect.c index 9085679b32..4b22b85c09 100644 --- a/firmware/target/arm/tms320dm320/sansa-connect/powermgmt-sansaconnect.c +++ b/firmware/target/arm/tms320dm320/sansa-connect/powermgmt-sansaconnect.c | |||
@@ -28,11 +28,13 @@ | |||
28 | 28 | ||
29 | static unsigned int current_battery_level = 100; | 29 | static unsigned int current_battery_level = 100; |
30 | 30 | ||
31 | /* This specifies the battery level that writes are still safe */ | ||
31 | const unsigned short battery_level_dangerous[BATTERY_TYPES_COUNT] = | 32 | const unsigned short battery_level_dangerous[BATTERY_TYPES_COUNT] = |
32 | { | 33 | { |
33 | 0 | 34 | 1 |
34 | }; | 35 | }; |
35 | 36 | ||
37 | /* Below this the player cannot be considered to operate reliably */ | ||
36 | const unsigned short battery_level_shutoff[BATTERY_TYPES_COUNT] = | 38 | const unsigned short battery_level_shutoff[BATTERY_TYPES_COUNT] = |
37 | { | 39 | { |
38 | 0 | 40 | 0 |
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; | |||
576 | static void sd_thread(void) | 577 | static 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 | } |
diff --git a/firmware/target/arm/tms320dm320/system-dm320.c b/firmware/target/arm/tms320dm320/system-dm320.c index 528d442ce5..029aecc610 100644 --- a/firmware/target/arm/tms320dm320/system-dm320.c +++ b/firmware/target/arm/tms320dm320/system-dm320.c | |||
@@ -359,6 +359,10 @@ void system_init(void) | |||
359 | #endif | 359 | #endif |
360 | 360 | ||
361 | #ifdef SANSA_CONNECT | 361 | #ifdef SANSA_CONNECT |
362 | /* keep WIFI CS low to save power */ | ||
363 | IO_GIO_DIR0 &= ~(1 << 4); | ||
364 | IO_GIO_BITCLR0 = (1 << 4); | ||
365 | |||
362 | i2c_init(); | 366 | i2c_init(); |
363 | avr_hid_init(); | 367 | avr_hid_init(); |
364 | avr_hid_enable_charger(); | 368 | avr_hid_enable_charger(); |