summaryrefslogtreecommitdiff
path: root/firmware
diff options
context:
space:
mode:
Diffstat (limited to 'firmware')
-rw-r--r--firmware/drivers/power.c9
-rw-r--r--firmware/export/config-ipodvideo.h2
-rw-r--r--firmware/powermgmt.c2
-rw-r--r--firmware/usb.c4
4 files changed, 11 insertions, 6 deletions
diff --git a/firmware/drivers/power.c b/firmware/drivers/power.c
index 3df8460222..676e7c216e 100644
--- a/firmware/drivers/power.c
+++ b/firmware/drivers/power.c
@@ -123,8 +123,11 @@ bool charger_inserted(void)
123 return (adc_read(ADC_CHARGE_REGULATOR) < 0x1FF); 123 return (adc_read(ADC_CHARGE_REGULATOR) < 0x1FF);
124#elif defined(TOSHIBA_GIGABEAT_F) 124#elif defined(TOSHIBA_GIGABEAT_F)
125 return false; 125 return false;
126#elif defined(IPOD_ARCH) 126#elif defined(APPLE_IPODVIDEO)
127 /* We need to get this value a faster way than i2c */ 127 /* We need to get this value a faster way than i2c */
128 return (GPIOA_INPUT_VAL & 0x10)?true:false;
129#elif defined(IPOD_ARCH)
130 /* This needs filling in for other ipods. */
128 return false; 131 return false;
129#else 132#else
130 /* Player */ 133 /* Player */
@@ -154,8 +157,10 @@ void charger_enable(bool on)
154bool charging_state(void) { 157bool charging_state(void) {
155#if defined(IRIVER_H100_SERIES) 158#if defined(IRIVER_H100_SERIES)
156 return charger_inserted(); 159 return charger_inserted();
157#else /* Iriver H300 */ 160#elif defined(IRIVER_H300_SERIES)
158 return (GPIO_READ & 0x00800000)?true:false; 161 return (GPIO_READ & 0x00800000)?true:false;
162#elif defined(APPLE_IPODVIDEO)
163 return (GPIOB_INPUT_VAL & 0x01)?false:true;
159#endif 164#endif
160} 165}
161#endif 166#endif
diff --git a/firmware/export/config-ipodvideo.h b/firmware/export/config-ipodvideo.h
index e08b029ebd..6057afa9d7 100644
--- a/firmware/export/config-ipodvideo.h
+++ b/firmware/export/config-ipodvideo.h
@@ -69,6 +69,8 @@
69/* define this if the hardware can be powered off while charging */ 69/* define this if the hardware can be powered off while charging */
70//#define HAVE_POWEROFF_WHILE_CHARGING 70//#define HAVE_POWEROFF_WHILE_CHARGING
71 71
72#define HAVE_CHARGE_STATE 1
73
72/* The start address index for ROM builds */ 74/* The start address index for ROM builds */
73#define ROM_START 0x00000000 75#define ROM_START 0x00000000
74 76
diff --git a/firmware/powermgmt.c b/firmware/powermgmt.c
index 8f4f22fb3f..b135a291d0 100644
--- a/firmware/powermgmt.c
+++ b/firmware/powermgmt.c
@@ -456,6 +456,8 @@ static int runcurrent(void)
456 if(usb_inserted() 456 if(usb_inserted()
457#if defined(HAVE_USB_POWER) && (CURRENT_USB < CURRENT_NORMAL) 457#if defined(HAVE_USB_POWER) && (CURRENT_USB < CURRENT_NORMAL)
458 || usb_powered() 458 || usb_powered()
459#else
460 && !usb_powered()
459#endif 461#endif
460 ) 462 )
461 { 463 {
diff --git a/firmware/usb.c b/firmware/usb.c
index b96134b7fb..3491e43328 100644
--- a/firmware/usb.c
+++ b/firmware/usb.c
@@ -406,12 +406,8 @@ bool usb_detect(void)
406 if (USB2D_IDENT != 0x22FA05) { 406 if (USB2D_IDENT != 0x22FA05) {
407 return false; 407 return false;
408 } 408 }
409#ifdef APPLE_IPODVIDEO
410 current_status = (GPIOB_INPUT_VAL & 0x01)?false:true;
411#else
412 current_status = (USB_STATUS & 0x800)?true:false; 409 current_status = (USB_STATUS & 0x800)?true:false;
413#endif 410#endif
414#endif
415#ifdef USB_ISP1582 411#ifdef USB_ISP1582
416 /* TODO: Implement USB_ISP1582 */ 412 /* TODO: Implement USB_ISP1582 */
417 current_status = false; 413 current_status = false;