usb: otg_id: add suspend/resume interface
authorDima Zavin <dima@android.com>
Fri, 9 Sep 2011 16:25:05 +0000 (09:25 -0700)
committermgross <mark.gross@intel.com>
Wed, 9 Nov 2011 20:23:43 +0000 (12:23 -0800)
commitf36ded1f0d8e08665585ce000c78937953bb947d
tree9e584f479bd47ebde6f075b09a683ee56d60d3be
parent9c7a3304509c3b4e7a6c92cfd5309cee780fca16
usb: otg_id: add suspend/resume interface

It is possible that while one driver has already suspended,
another driver calls otg_id_notify() because it has not yet been
suspended. It would then be possible for the suspended driver's
detect callback to be called. This is undesirable.

Introduce new otg_id_suspend/otg_id_resume functions that
keep a suspended count, and if a notification happens while
someone is suspended, that notification is deferred until
all the drivers are resumed. If the notification happens before
the last driver is suspended, that suspend will be aborted
and once the final driver resumes through otg_id_resume, the
notification will be delivered.

Change-Id: I32fd32bec65e366e5f97a25c15255d94773b85b3
Signed-off-by: Dima Zavin <dima@android.com>
drivers/usb/otg/otg_id.c
include/linux/usb/otg_id.h