summaryrefslogtreecommitdiff
path: root/firmware
diff options
context:
space:
mode:
Diffstat (limited to 'firmware')
-rw-r--r--firmware/target/arm/ipod/button-1g-3g.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/firmware/target/arm/ipod/button-1g-3g.c b/firmware/target/arm/ipod/button-1g-3g.c
index be02f873bb..2aa65bb2c0 100644
--- a/firmware/target/arm/ipod/button-1g-3g.c
+++ b/firmware/target/arm/ipod/button-1g-3g.c
@@ -250,5 +250,21 @@ bool button_hold(void)
bool headphones_inserted(void)
{
+#ifdef IPOD_1G2G
+ if ((IPOD_HW_REVISION >> 16) == 2)
+ {
+ /* 2G uses GPIO B bit 0 */
+ return (GPIOB_INPUT_VAL & 0x1)?true:false;
+ }
+ else
+ {
+ /* 1G has no headphone detection, so fake insertion */
+ return (true);
+ }
+#else
+ /* 3G uses GPIO C bit 0 */
return (GPIOC_INPUT_VAL & 0x1)?true:false;
+#endif
}
+
+