summaryrefslogtreecommitdiff
path: root/firmware/target
diff options
context:
space:
mode:
authorMichael Giacomelli <giac2000@hotmail.com>2008-11-24 03:59:21 +0000
committerMichael Giacomelli <giac2000@hotmail.com>2008-11-24 03:59:21 +0000
commit5d21c8cb1db547580b8b0cabbee6dd773143d39d (patch)
treebd389188ef2cf4ad91d4ece8718948d334bcdfae /firmware/target
parent4c3a19f1b480c726b32d25e3b2fbaf3018a0d5e0 (diff)
downloadrockbox-5d21c8cb1db547580b8b0cabbee6dd773143d39d.tar.gz
rockbox-5d21c8cb1db547580b8b0cabbee6dd773143d39d.zip
First part of FS#9570 by Antonius Hellmann. Disables power to the SD memory when not in use. Gives a sizeable power savings (4 mA by his measurement).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19194 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target')
-rw-r--r--firmware/target/arm/ata-sd-pp.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/firmware/target/arm/ata-sd-pp.c b/firmware/target/arm/ata-sd-pp.c
index 8ebec39fa8..8f2ee503d8 100644
--- a/firmware/target/arm/ata-sd-pp.c
+++ b/firmware/target/arm/ata-sd-pp.c
@@ -758,7 +758,7 @@ int sd_read_sectors(IF_MV2(int drive,) unsigned long start, int incount,
758 /* TODO: Add DMA support. */ 758 /* TODO: Add DMA support. */
759 759
760 mutex_lock(&sd_mtx); 760 mutex_lock(&sd_mtx);
761 761 sd_enable(true);
762 sd_led(true); 762 sd_led(true);
763 763
764sd_read_retry: 764sd_read_retry:
@@ -844,6 +844,7 @@ sd_read_retry:
844 while (1) 844 while (1)
845 { 845 {
846 sd_led(false); 846 sd_led(false);
847 sd_enable(false);
847 mutex_unlock(&sd_mtx); 848 mutex_unlock(&sd_mtx);
848 849
849 return ret; 850 return ret;
@@ -873,7 +874,7 @@ int sd_write_sectors(IF_MV2(int drive,) unsigned long start, int count,
873 int bank; 874 int bank;
874 875
875 mutex_lock(&sd_mtx); 876 mutex_lock(&sd_mtx);
876 877 sd_enable(true);
877 sd_led(true); 878 sd_led(true);
878 879
879sd_write_retry: 880sd_write_retry:
@@ -972,6 +973,7 @@ sd_write_retry:
972 while (1) 973 while (1)
973 { 974 {
974 sd_led(false); 975 sd_led(false);
976 sd_enable(false);
975 mutex_unlock(&sd_mtx); 977 mutex_unlock(&sd_mtx);
976 978
977 return ret; 979 return ret;