diff options
Diffstat (limited to 'firmware')
-rw-r--r-- | firmware/drivers/power.c | 14 | ||||
-rw-r--r-- | firmware/usb.c | 9 |
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); |