- printk(KERN_INFO "settle_time: %u\n", gpio_evmi->settle_time.tv.nsec);
- printk(KERN_INFO "poll_time: %u\n", gpio_evmi->poll_time.tv.nsec);
- printk(KERN_INFO "debounce_delay: %u\n", gpio_evmi->debounce_delay.tv.nsec);
- if (!gpio_evmi->debounce_delay.tv.nsec) {
- printk(KERN_INFO "Activating debounce!\n");
- gpio_evmi->debounce_delay.tv.nsec = 5 * NSEC_PER_MSEC;
- printk(KERN_INFO "debounce_delay: %u\n", gpio_evmi->debounce_delay.tv.nsec);
+ printk(KERN_INFO PREFIX "settle_time: %u\n", gpio_evmi->settle_time.tv.nsec);
+ printk(KERN_INFO PREFIX "poll_time: %u\n", gpio_evmi->poll_time.tv.nsec);
+ printk(KERN_INFO PREFIX "debounce_delay: %u\n", gpio_evmi->debounce_delay.tv.nsec);
+ printk(KERN_INFO PREFIX "flags: 0x%x\n", gpio_evmi->flags);
+
+ /* GPIOKPF_DEBOUNCE should already be set by GPIOKPF_REMOVE_PHANTOM_KEYS */
+ if (!(gpio_evmi->flags & GPIOKPF_DEBOUNCE)) {
+ printk(KERN_INFO PREFIX "Activating debounce\n");
+ gpio_evmi->flags |= GPIOKPF_DEBOUNCE;
+ printk(KERN_INFO PREFIX "flags: 0x%x\n", gpio_evmi->flags);
+ }
+
+ old_delay = gpio_evmi->debounce_delay.tv.nsec;
+
+ if (gpio_evmi->debounce_delay.tv.nsec != debounce_delay * NSEC_PER_MSEC) {
+ printk(KERN_INFO PREFIX "Changing debounce_delay\n");
+ gpio_evmi->debounce_delay.tv.nsec = debounce_delay * NSEC_PER_MSEC;
+ printk(KERN_INFO PREFIX "debounce_delay: %u\n", gpio_evmi->debounce_delay.tv.nsec);