* Tony Lindgren <tony@xxxxxxxxxxx> [200227 02:05]: > + /* Check once after debounce time when no more keys down */ > + if (!new_keys_pressed) { > + usleep_range(OMAP4_DEBOUNCE_MS * 1000 * 2, > + OMAP4_DEBOUNCE_MS * 1000 * 3); > + new_keys_pressed = omap4_keypad_scan_keys(keypad_data); > + } So this can be outside the loop. And we actually need to clear the state looks like. I'll send out v2 series of these after some more debugging. Regards, Tony