summaryrefslogtreecommitdiff
path: root/firmware/drivers/button.c
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/drivers/button.c')
-rw-r--r--firmware/drivers/button.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/firmware/drivers/button.c b/firmware/drivers/button.c
index 66c7e978fb..cbb6d58f7b 100644
--- a/firmware/drivers/button.c
+++ b/firmware/drivers/button.c
@@ -30,6 +30,7 @@
30#include "adc.h" 30#include "adc.h"
31#include "serial.h" 31#include "serial.h"
32#include "power.h" 32#include "power.h"
33#include "system.h"
33 34
34struct event_queue button_queue; 35struct event_queue button_queue;
35 36
@@ -256,10 +257,10 @@ static int button_flip(int button)
256 */ 257 */
257void button_set_flip(bool flip) 258void button_set_flip(bool flip)
258{ 259{
259 if (flip != flipped) /* not the curent setting */ 260 if (flip != flipped) /* not the current setting */
260 { 261 {
261 /* avoid race condition with the button_tick() */ 262 /* avoid race condition with the button_tick() */
262 int oldlevel = set_irq_level(15); 263 int oldlevel = set_irq_level(HIGHEST_IRQ_LEVEL);
263 lastbtn = button_flip(lastbtn); 264 lastbtn = button_flip(lastbtn);
264 flipped = flip; 265 flipped = flip;
265 set_irq_level(oldlevel); 266 set_irq_level(oldlevel);