input: gpio_input: don't print debounce message unless flag is set
authorDima Zavin <dima@android.com>
Tue, 8 Nov 2011 21:03:11 +0000 (13:03 -0800)
committerDima Zavin <dima@android.com>
Wed, 9 Nov 2011 06:53:00 +0000 (22:53 -0800)
Change-Id: I29ccb32e795c5c3e4c51c3d3a209f5b55dfd7d94
Signed-off-by: Dima Zavin <dima@android.com>
drivers/input/misc/gpio_input.c
include/linux/gpio_event.h

index 904bd684449b0702590a242a045797e09461f60a..6a0c31510968566d678a09a7cadb8bf18929940b 100644 (file)
@@ -82,10 +82,11 @@ static enum hrtimer_restart gpio_event_input_timer_func(struct hrtimer *timer)
                if (key_state->debounce & DEBOUNCE_UNSTABLE) {
                        debounce = key_state->debounce = DEBOUNCE_UNKNOWN;
                        enable_irq(gpio_to_irq(key_entry->gpio));
-                       pr_info("gpio_keys_scan_keys: key %x-%x, %d "
-                               "(%d) continue debounce\n",
-                               ds->info->type, key_entry->code,
-                               i, key_entry->gpio);
+                       if (gpio_flags & GPIOEDF_PRINT_KEY_UNSTABLE)
+                               pr_info("gpio_keys_scan_keys: key %x-%x, %d "
+                                       "(%d) continue debounce\n",
+                                       ds->info->type, key_entry->code,
+                                       i, key_entry->gpio);
                }
                npolarity = !(gpio_flags & GPIOEDF_ACTIVE_HIGH);
                pressed = gpio_get_value(key_entry->gpio) ^ npolarity;
index 360b4ddb46a6b8a4010754ed6f4edb102b9015a5..2613fc5e4a93c050b11150f1488f0c8de8726ffe 100644 (file)
@@ -98,6 +98,7 @@ enum gpio_event_direct_flags {
 /*     GPIOEDF_USE_IRQ             = (1U << 2) | GPIOIDF_USE_DOWN_IRQ, */
        GPIOEDF_PRINT_KEYS          = 1U << 8,
        GPIOEDF_PRINT_KEY_DEBOUNCE  = 1U << 9,
+       GPIOEDF_PRINT_KEY_UNSTABLE  = 1U << 10,
 };
 
 struct gpio_event_direct_entry {