From mboxrd@z Thu Jan 1 00:00:00 1970 From: Hema HK Subject: [PATCH 6/7] usb: otg: TWL6030 Save the last event in otg_transceiver Date: Thu, 3 Feb 2011 15:19:46 +0530 Message-ID: <1296726587-10530-6-git-send-email-hemahk@ti.com> References: Return-path: In-Reply-To: Sender: linux-usb-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org To: linux-usb-u79uwXL29TY76Z2rM5mHXA@public.gmane.org Cc: linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Hema HK , Felipe Balbi List-Id: linux-omap@vger.kernel.org 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 Cc: Felipe Balbi --- [Reusing some part of the patch[1] posted by Arnaud Mandy] [1] http://permalink.gmane.org/gmane.linux.usb.general/37123 --- drivers/usb/otg/twl6030-usb.c | 3 +++ include/linux/usb/otg.h | 1 + 2 files changed, 4 insertions(+) Index: linux-2.6/drivers/usb/otg/twl6030-usb.c =================================================================== --- linux-2.6.orig/drivers/usb/otg/twl6030-usb.c +++ linux-2.6/drivers/usb/otg/twl6030-usb.c @@ -265,11 +265,13 @@ static irqreturn_t twl6030_usb_irq(int i 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) { @@ -302,6 +304,7 @@ static irqreturn_t twl6030_usbotg_irq(in 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 { Index: linux-2.6/include/linux/usb/otg.h =================================================================== --- linux-2.6.orig/include/linux/usb/otg.h +++ linux-2.6/include/linux/usb/otg.h @@ -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; -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html