usb: otg: TWL6030 Save the last event in otg_transceiver
Save the last event in the otg_transceiver so that it can used in the musb driver and gadget driver to configure the musb and enable the vbus for host mode and OTG mode, if the device is connected during boot. Signed-off-by: Hema HK <hemahk@ti.com> Cc: Tony Lindgren <tony@atomide.com> Cc: Paul Walmsley <paul@pwsan.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
This commit is contained in:
parent
070b8ed96e
commit
647b2d9c61
2 changed files with 4 additions and 0 deletions
|
@ -262,11 +262,13 @@ static irqreturn_t twl6030_usb_irq(int irq, void *_twl)
|
|||
twl->otg.default_a = false;
|
||||
twl->otg.state = OTG_STATE_B_IDLE;
|
||||
twl->linkstat = status;
|
||||
twl->otg.last_event = status;
|
||||
blocking_notifier_call_chain(&twl->otg.notifier,
|
||||
status, twl->otg.gadget);
|
||||
} else {
|
||||
status = USB_EVENT_NONE;
|
||||
twl->linkstat = status;
|
||||
twl->otg.last_event = status;
|
||||
blocking_notifier_call_chain(&twl->otg.notifier,
|
||||
status, twl->otg.gadget);
|
||||
if (twl->asleep) {
|
||||
|
@ -299,6 +301,7 @@ static irqreturn_t twl6030_usbotg_irq(int irq, void *_twl)
|
|||
twl->otg.default_a = true;
|
||||
twl->otg.state = OTG_STATE_A_IDLE;
|
||||
twl->linkstat = status;
|
||||
twl->otg.last_event = status;
|
||||
blocking_notifier_call_chain(&twl->otg.notifier, status,
|
||||
twl->otg.gadget);
|
||||
} else {
|
||||
|
|
|
@ -66,6 +66,7 @@ struct otg_transceiver {
|
|||
|
||||
u8 default_a;
|
||||
enum usb_otg_state state;
|
||||
enum usb_xceiv_events last_event;
|
||||
|
||||
struct usb_bus *host;
|
||||
struct usb_gadget *gadget;
|
||||
|
|
Loading…
Reference in a new issue