aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/usb/otg.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/usb/otg.h')
-rw-r--r--include/linux/usb/otg.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/include/linux/usb/otg.h b/include/linux/usb/otg.h
index a1a1e7a73ec9..6e40718f5abe 100644
--- a/include/linux/usb/otg.h
+++ b/include/linux/usb/otg.h
@@ -66,6 +66,7 @@ struct otg_transceiver {
66 66
67 u8 default_a; 67 u8 default_a;
68 enum usb_otg_state state; 68 enum usb_otg_state state;
69 enum usb_xceiv_events last_event;
69 70
70 struct usb_bus *host; 71 struct usb_bus *host;
71 struct usb_gadget *gadget; 72 struct usb_gadget *gadget;
@@ -74,7 +75,7 @@ struct otg_transceiver {
74 void __iomem *io_priv; 75 void __iomem *io_priv;
75 76
76 /* for notification of usb_xceiv_events */ 77 /* for notification of usb_xceiv_events */
77 struct blocking_notifier_head notifier; 78 struct atomic_notifier_head notifier;
78 79
79 /* to pass extra port status to the root hub */ 80 /* to pass extra port status to the root hub */
80 u16 port_status; 81 u16 port_status;
@@ -234,13 +235,13 @@ otg_start_srp(struct otg_transceiver *otg)
234static inline int 235static inline int
235otg_register_notifier(struct otg_transceiver *otg, struct notifier_block *nb) 236otg_register_notifier(struct otg_transceiver *otg, struct notifier_block *nb)
236{ 237{
237 return blocking_notifier_chain_register(&otg->notifier, nb); 238 return atomic_notifier_chain_register(&otg->notifier, nb);
238} 239}
239 240
240static inline void 241static inline void
241otg_unregister_notifier(struct otg_transceiver *otg, struct notifier_block *nb) 242otg_unregister_notifier(struct otg_transceiver *otg, struct notifier_block *nb)
242{ 243{
243 blocking_notifier_chain_unregister(&otg->notifier, nb); 244 atomic_notifier_chain_unregister(&otg->notifier, nb);
244} 245}
245 246
246/* for OTG controller drivers (and maybe other stuff) */ 247/* for OTG controller drivers (and maybe other stuff) */