summaryrefslogtreecommitdiff
path: root/firmware/target/arm
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/target/arm')
-rw-r--r--firmware/target/arm/tms320dm320/sansa-connect/powermgmt-sansaconnect.c4
-rw-r--r--firmware/target/arm/tms320dm320/sdmmc-dm320.c14
-rw-r--r--firmware/target/arm/tms320dm320/system-dm320.c4
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
29static unsigned int current_battery_level = 100; 29static unsigned int current_battery_level = 100;
30 30
31/* This specifies the battery level that writes are still safe */
31const unsigned short battery_level_dangerous[BATTERY_TYPES_COUNT] = 32const 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 */
36const unsigned short battery_level_shutoff[BATTERY_TYPES_COUNT] = 38const 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;
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}
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();