summaryrefslogtreecommitdiffstats
path: root/firmware
diff options
context:
space:
mode:
authorLinus Nielsen Feltzing <linus@haxx.se>2006-02-16 20:44:38 +0000
committerLinus Nielsen Feltzing <linus@haxx.se>2006-02-16 20:44:38 +0000
commita4504bc276497aa7d30098446a71775045dbd16a (patch)
treed6db21ba363181b10c316efe1abde4ec58448928 /firmware
parent41e1aa888b9d1fc41aaf158191980cce3e548302 (diff)
downloadrockbox-a4504bc276497aa7d30098446a71775045dbd16a.tar.gz
rockbox-a4504bc276497aa7d30098446a71775045dbd16a.tar.bz2
rockbox-a4504bc276497aa7d30098446a71775045dbd16a.zip
Revert the ATA/USB power fix until I find an even more correct way of doing it :-)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8707 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware')
-rw-r--r--firmware/drivers/power.c14
-rw-r--r--firmware/usb.c9
2 files changed, 9 insertions, 14 deletions
diff --git a/firmware/drivers/power.c b/firmware/drivers/power.c
index e11921ea91..d7750a33b2 100644
--- a/firmware/drivers/power.c
+++ b/firmware/drivers/power.c
@@ -71,13 +71,6 @@ void power_init(void)
or_l(0x00080000, &GPIO1_ENABLE);
or_l(0x00080000, &GPIO1_FUNCTION);
-#ifdef IRIVER_H300_SERIES
- /* ISD300 3.3V ON */
- or_l(8,&GPIO1_FUNCTION);
- or_l(8,&GPIO1_OUT);
- or_l(8,&GPIO1_ENABLE);
-#endif
-
#ifndef BOOTLOADER
/* The boot loader controls the power */
ide_power_enable(true);
@@ -185,13 +178,6 @@ void ide_power_enable(bool on)
and_l(~0x80000000, &GPIO_OUT);
else
or_l(0x80000000, &GPIO_OUT);
-#ifdef IRIVER_H300_SERIES
- if(on)
- and_l(~0x00000008,&GPIO1_OUT); /* ISD300 3.3V on */
- else
- or_l(0x00000008,&GPIO1_OUT); /* ISD300 3.3V off */
-#endif
-
#elif defined(IAUDIO_X5)
/* X5 TODO */
#elif (CONFIG_CPU == PP5002) || (CONFIG_CPU == PP5020)
diff --git a/firmware/usb.c b/firmware/usb.c
index d6a154c51b..1c90d63519 100644
--- a/firmware/usb.c
+++ b/firmware/usb.c
@@ -151,6 +151,8 @@ void usb_enable(bool on)
/* Power on the Cypress chip */
#ifdef IRIVER_H100_SERIES
or_l(0x01000040, &GPIO_OUT);
+#else
+ and_l(~0x00000008,&GPIO1_OUT);
#endif
sleep(2);
}
@@ -159,6 +161,8 @@ void usb_enable(bool on)
/* Power off the Cypress chip */
#ifdef IRIVER_H100_SERIES
and_l(~0x01000040, &GPIO_OUT);
+#else
+ or_l(0x00000008,&GPIO1_OUT);
#endif
}
@@ -479,6 +483,11 @@ void usb_init(void)
or_l(0x00000080, &GPIO1_FUNCTION); /* GPIO39 is the USB detect input */
#ifdef IRIVER_H300_SERIES
+ /* ISD300 3.3V ON */
+ or_l(8,&GPIO1_FUNCTION);
+ or_l(8,&GPIO1_OUT);
+ or_l(8,&GPIO1_ENABLE);
+
/* Tristate the SCK/SDA to the ISD300 config EEPROM */
and_l(~0x03000000, &GPIO_ENABLE);
or_l(0x03000000, &GPIO_FUNCTION);