diff mbox

usb: musb: Check for NULL pointers when no OTG transceiver used

Message ID 1246022606-25923-1-git-send-email-ext-roger.quadros@nokia.com (mailing list archive)
State Rejected, archived
Delegated to: Felipe Balbi
Headers show

Commit Message

Roger Quadros June 26, 2009, 1:23 p.m. UTC
Add checks to prevent NULL pointer exception in case no
OTG transceiver has been selected. i.e. musb->xceiv == NULL

Signed-off-by: Roger Quadros <ext-roger.quadros@nokia.com>
---
 drivers/usb/musb/musb_core.c |    3 ++-
 drivers/usb/musb/omap2430.c  |    7 +++++--
 2 files changed, 7 insertions(+), 3 deletions(-)
diff mbox

Patch

diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c
index 554a414..2dd6fa9 100644
--- a/drivers/usb/musb/musb_core.c
+++ b/drivers/usb/musb/musb_core.c
@@ -1861,7 +1861,8 @@  static void musb_free(struct musb *musb)
 	}
 
 #ifdef CONFIG_USB_MUSB_OTG
-	put_device(musb->xceiv->dev);
+	if(musb->xceiv)
+		put_device(musb->xceiv->dev);
 #endif
 
 #ifdef CONFIG_USB_MUSB_HDRC_HCD
diff --git a/drivers/usb/musb/omap2430.c b/drivers/usb/musb/omap2430.c
index 3487520..3eb8d1c 100644
--- a/drivers/usb/musb/omap2430.c
+++ b/drivers/usb/musb/omap2430.c
@@ -312,9 +312,12 @@  int musb_platform_exit(struct musb *musb)
 
 	omap_vbus_power(musb, 0 /*off*/, 1);
 
-	musb_platform_suspend(musb);
+	if(musb->xceiv)
+		musb_platform_suspend(musb);
+
+	if(musb->clock)
+		clk_put(musb->clock);
 
-	clk_put(musb->clock);
 	musb->clock = 0;
 
 	return 0;