summaryrefslogtreecommitdiffstats
path: root/firmware/target/arm/system-pp5002.c
diff options
context:
space:
mode:
authorJens Arnold <amiconn@rockbox.org>2007-07-30 23:48:03 +0000
committerJens Arnold <amiconn@rockbox.org>2007-07-30 23:48:03 +0000
commit4e8b171fc4cc3b62a1656ae67e92944ff855dcd3 (patch)
tree61ea62ef4b5b483cd86c778028d2b1979547178d /firmware/target/arm/system-pp5002.c
parent35274ce1196b8055e189d18d8295edf2e5b0b65c (diff)
downloadrockbox-4e8b171fc4cc3b62a1656ae67e92944ff855dcd3.tar.gz
rockbox-4e8b171fc4cc3b62a1656ae67e92944ff855dcd3.zip
Interrupt driven ADC reading on the 2nd gen.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14086 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target/arm/system-pp5002.c')
-rw-r--r--firmware/target/arm/system-pp5002.c14
1 files changed, 12 insertions, 2 deletions
diff --git a/firmware/target/arm/system-pp5002.c b/firmware/target/arm/system-pp5002.c
index 6d32d258cc..38dfe5b49c 100644
--- a/firmware/target/arm/system-pp5002.c
+++ b/firmware/target/arm/system-pp5002.c
@@ -22,6 +22,7 @@
extern void TIMER1(void);
extern void TIMER2(void);
extern void ipod_3g_button_int(void);
+extern void ipod_2g_adc_int(void);
void irq(void)
{
@@ -32,8 +33,17 @@ void irq(void)
else if (CPU_INT_STAT & TIMER2_MASK)
TIMER2();
else if (CPU_INT_STAT & GPIO_MASK)
- ipod_3g_button_int();
- } else {
+ {
+ if (GPIOA_INT_STAT)
+ ipod_3g_button_int();
+#ifdef IPOD_1G2G
+ if (GPIOB_INT_STAT & 0x04)
+ ipod_2g_adc_int();
+#endif
+ }
+ }
+ else
+ {
if (COP_INT_STAT & TIMER1_MASK)
TIMER1();
else if (COP_INT_STAT & TIMER2_MASK)