From e2a169bce53aff3e5fc300c00d3828129298d469 Mon Sep 17 00:00:00 2001 From: Michael Sevakis Date: Tue, 3 Feb 2009 10:55:30 +0000 Subject: Gigabeat S: Get remote keymaps up to snuff and working. Do a couple tweaks on main unit ones. Cleanup keymap file a bit. Fix main button scanner to not clobber remote button. Fix a bug in actions.c where 'LAST_ITEM_IN_LIST' didn't really terminate scanning immediately. It would do an additional call into get_context_map and silently pick up ACTION_STD. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19909 a1c6a512-1295-4272-9138-f99709370657 --- firmware/target/arm/imx31/gigabeat-s/button-imx31.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'firmware/target') diff --git a/firmware/target/arm/imx31/gigabeat-s/button-imx31.c b/firmware/target/arm/imx31/gigabeat-s/button-imx31.c index 9c35fb13da..d2a46f2c9f 100644 --- a/firmware/target/arm/imx31/gigabeat-s/button-imx31.c +++ b/firmware/target/arm/imx31/gigabeat-s/button-imx31.c @@ -55,8 +55,13 @@ static __attribute__((interrupt("IRQ"))) void KPP_HANDLER(void) }; int col; - /* Power button is handled separately on PMIC */ + /* Power button is handled separately on PMIC, remote read in headphone + * jack driver. */ +#ifdef HAVE_HEADPHONE_DETECTION + int button = int_btn & (BUTTON_POWER | BUTTON_REMOTE); +#else int button = int_btn & BUTTON_POWER; +#endif int oldlevel = disable_irq_save(); @@ -110,9 +115,9 @@ static __attribute__((interrupt("IRQ"))) void KPP_HANDLER(void) else KPP_KPSR |= KPP_KPSR_KDIE; - restore_irq(oldlevel); - int_btn = button; + + restore_irq(oldlevel); } bool button_hold(void) -- cgit v1.2.3