summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJörg Hohensohn <hohensoh@rockbox.org>2003-06-26 21:29:13 +0000
committerJörg Hohensohn <hohensoh@rockbox.org>2003-06-26 21:29:13 +0000
commit545efb6c28e38a0f3df7c04e035b66985f3a6613 (patch)
tree5b7ae3145f6a0c1e78eab15728465f6de158dd8c
parent3019ac38b73533ac286ed08a6dd24a9c61e8f56f (diff)
downloadrockbox-545efb6c28e38a0f3df7c04e035b66985f3a6613.zip
rockbox-545efb6c28e38a0f3df7c04e035b66985f3a6613.tar.gz
rockbox-545efb6c28e38a0f3df7c04e035b66985f3a6613.tar.bz2
rockbox-545efb6c28e38a0f3df7c04e035b66985f3a6613.tar.xz
port inits for cold start ability
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3764 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--firmware/drivers/ata.c5
-rw-r--r--firmware/drivers/power.c4
2 files changed, 8 insertions, 1 deletions
diff --git a/firmware/drivers/ata.c b/firmware/drivers/ata.c
index b4151d0..46c2bc8 100644
--- a/firmware/drivers/ata.c
+++ b/firmware/drivers/ata.c
@@ -801,6 +801,11 @@ int ata_init(void)
led(false);
+ /* Port A setup */
+ PAIOR |= 0x0200; /* output for ATA reset */
+ PADR |= 0x0200; /* release ATA reset */
+ PACR2 &= 0xBFFF; /* GPIO function for PA7 (IDE enable) */
+
ata_enable(true);
if ( !initialized ) {
diff --git a/firmware/drivers/power.c b/firmware/drivers/power.c
index b10cefe..5121a4c 100644
--- a/firmware/drivers/power.c
+++ b/firmware/drivers/power.c
@@ -63,7 +63,9 @@ void charger_enable(bool on)
void ide_power_enable(bool on)
{
#ifdef HAVE_ATA_POWER_OFF
- if(on)
+ PAIOR |= 0x20; /* there's no power driver init, so I have to do that here */
+
+ if(on)
PADR |= 0x20;
else
PADR &= ~0x20;