From 6cbbd1a756df6656d9cc498e317fc47fd252d904 Mon Sep 17 00:00:00 2001 From: Rafaël Carré Date: Sat, 3 Apr 2010 22:33:47 +0000 Subject: Clipv2: read hold switch correctly git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25462 a1c6a512-1295-4272-9138-f99709370657 --- firmware/target/arm/as3525/sansa-clipv2/button-clip.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/firmware/target/arm/as3525/sansa-clipv2/button-clip.c b/firmware/target/arm/as3525/sansa-clipv2/button-clip.c index c14d67cb60..1356bfbc55 100644 --- a/firmware/target/arm/as3525/sansa-clipv2/button-clip.c +++ b/firmware/target/arm/as3525/sansa-clipv2/button-clip.c @@ -130,8 +130,19 @@ bool button_hold(void) #ifndef BOOTLOADER static bool hold_button_old = false; #endif + + GPIOA_DIR |= 1<<7; + GPIOA_PIN(7) = 1<<7; + + int delay = 50; + while(delay--) + asm("nop"); + bool hold_button = (GPIOA_PIN(3) != 0); + GPIOA_PIN(7) = 0; + GPIOA_DIR &= ~(1<<7); + #ifndef BOOTLOADER /* light handling */ if (hold_button != hold_button_old) -- cgit v1.2.3