USB: gpio_vbus: provide an appropriate debounce interval
authorShinya Kuribayashi <shinya.kuribayashi.px@renesas.com>
Thu, 10 May 2012 01:31:21 +0000 (10:31 +0900)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 1 Jun 2012 07:18:21 +0000 (15:18 +0800)
commit658b069b7c6b5d91cd89a24dde34ec91918f6e25
treee6a56718eaffb05a88d7251f2684d42bbc373a11
parentada3a3d0cb75f4cb015a2521badcffcf6d16ba45
USB: gpio_vbus: provide an appropriate debounce interval

commit 934ccec4da14dc0586dfe08b36166364bdd2181b upstream.

In commit c2344f13b59e007d782a3e591ebc551bc583a8b7 (USB: gpio_vbus:
add delayed vbus_session calls, 2009-01-24), usb_gadget_vbus_connect()
and ...disconnect() were extracted from the interrupt handler, so to
allow vbus_session handlers to deal with msleep() calls.

This patch takes the approach one step further.

USB2.0 specification (7.1.7.3 Connect and Disconnect Signaling) says
that the USB system software (shall) provide a debounce interval with
a minimum duration of 100 ms, which ensures that the electrical and
mechanical connection is stable before software attempts to reset
the attached device.

Signed-off-by: Shinya Kuribayashi <shinya.kuribayashi.px@renesas.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/otg/gpio_vbus.c