summaryrefslogtreecommitdiff
path: root/firmware/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/drivers')
-rw-r--r--firmware/drivers/power.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/firmware/drivers/power.c b/firmware/drivers/power.c
index d7750a33b2..e11921ea91 100644
--- a/firmware/drivers/power.c
+++ b/firmware/drivers/power.c
@@ -71,6 +71,13 @@ void power_init(void)
71 or_l(0x00080000, &GPIO1_ENABLE); 71 or_l(0x00080000, &GPIO1_ENABLE);
72 or_l(0x00080000, &GPIO1_FUNCTION); 72 or_l(0x00080000, &GPIO1_FUNCTION);
73 73
74#ifdef IRIVER_H300_SERIES
75 /* ISD300 3.3V ON */
76 or_l(8,&GPIO1_FUNCTION);
77 or_l(8,&GPIO1_OUT);
78 or_l(8,&GPIO1_ENABLE);
79#endif
80
74#ifndef BOOTLOADER 81#ifndef BOOTLOADER
75 /* The boot loader controls the power */ 82 /* The boot loader controls the power */
76 ide_power_enable(true); 83 ide_power_enable(true);
@@ -178,6 +185,13 @@ void ide_power_enable(bool on)
178 and_l(~0x80000000, &GPIO_OUT); 185 and_l(~0x80000000, &GPIO_OUT);
179 else 186 else
180 or_l(0x80000000, &GPIO_OUT); 187 or_l(0x80000000, &GPIO_OUT);
188#ifdef IRIVER_H300_SERIES
189 if(on)
190 and_l(~0x00000008,&GPIO1_OUT); /* ISD300 3.3V on */
191 else
192 or_l(0x00000008,&GPIO1_OUT); /* ISD300 3.3V off */
193#endif
194
181#elif defined(IAUDIO_X5) 195#elif defined(IAUDIO_X5)
182 /* X5 TODO */ 196 /* X5 TODO */
183#elif (CONFIG_CPU == PP5002) || (CONFIG_CPU == PP5020) 197#elif (CONFIG_CPU == PP5002) || (CONFIG_CPU == PP5020)