diff options
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/plat-mxc/usb_common.c | 18 | ||||
-rw-r--r-- | arch/arm/plat-mxc/usb_wakeup.c | 9 | ||||
-rw-r--r-- | arch/arm/plat-mxs/usb_common.c | 15 | ||||
-rw-r--r-- | arch/arm/plat-mxs/usb_wakeup.c | 9 |
4 files changed, 24 insertions, 27 deletions
diff --git a/arch/arm/plat-mxc/usb_common.c b/arch/arm/plat-mxc/usb_common.c index 8cf601fe2328..69cbcfc01d6f 100644 --- a/arch/arm/plat-mxc/usb_common.c +++ b/arch/arm/plat-mxc/usb_common.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 2004-2010 Freescale Semiconductor, Inc. All Rights Reserved. + * Copyright (C) 2004-2011 Freescale Semiconductor, Inc. All Rights Reserved. */ /* @@ -872,18 +872,16 @@ void usbotg_uninit(struct fsl_usb2_platform_data *pdata) } EXPORT_SYMBOL(usbotg_uninit); -/* the debounce function is only used when OTG is enabled, - * if otg disabled, the ID pin is not used */ -void usb_debounce_id_pin(void) +/* + * This function is used to debounce the reading value for id/vbus at + * the register of otgsc + */ +void usb_debounce_id_vbus(void) { -#ifdef CONFIG_USB_OTG - /* Because the IC design needs to remove the glitch on ID so the otgsc bit 8 will - * be delayed max 2 ms to show the real ID pin value - */ mdelay(3); -#endif } -EXPORT_SYMBOL(usb_debounce_id_pin); +EXPORT_SYMBOL(usb_debounce_id_vbus); + int usb_host_wakeup_irq(struct device *wkup_dev) { int wakeup_req = 0; diff --git a/arch/arm/plat-mxc/usb_wakeup.c b/arch/arm/plat-mxc/usb_wakeup.c index 69354ebeaf01..24300fb4012d 100644 --- a/arch/arm/plat-mxc/usb_wakeup.c +++ b/arch/arm/plat-mxc/usb_wakeup.c @@ -32,7 +32,7 @@ struct wakeup_ctrl { static struct wakeup_ctrl *g_ctrl; extern int usb_event_is_otg_wakeup(void); -extern void usb_debounce_id_pin(void); +extern void usb_debounce_id_vbus(void); static void wakeup_clk_gate(struct fsl_usb2_wakeup_platform_data *pdata, bool on) { @@ -97,11 +97,10 @@ static void wakeup_event_handler(struct wakeup_ctrl *ctrl) int i; wakeup_clk_gate(ctrl->pdata, true); - /* if this is an wakeup event, we should debounce ID pin - * so we can get the correct ID value(ID status) here - * */ + + /* In order to get the real id/vbus value */ if (usb_event_is_otg_wakeup()) - usb_debounce_id_pin(); + usb_debounce_id_vbus(); for (i = 0; i < 3; i++) { struct fsl_usb2_platform_data *usb_pdata = pdata->usb_pdata[i]; diff --git a/arch/arm/plat-mxs/usb_common.c b/arch/arm/plat-mxs/usb_common.c index a3b18beb1be5..16ef4736b4d0 100644 --- a/arch/arm/plat-mxs/usb_common.c +++ b/arch/arm/plat-mxs/usb_common.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 2009-2010 Freescale Semiconductor, Inc. All Rights Reserved. + * Copyright (C) 2009-2011 Freescale Semiconductor, Inc. All Rights Reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -370,15 +370,16 @@ void fsl_usb_host_uninit(struct fsl_usb2_platform_data *pdata) } EXPORT_SYMBOL(fsl_usb_host_uninit); -void usb_debounce_id_pin(void) +/* + * This function is used to debounce the reading value for id/vbus at + * the register of otgsc + */ +void usb_debounce_id_vbus(void) { - - /* Because the IC design needs to remove the glitch on ID so the otgsc bit 8 will - * be delayed max 2 ms to show the real ID pin value - */ mdelay(3); } -EXPORT_SYMBOL(usb_debounce_id_pin); +EXPORT_SYMBOL(usb_debounce_id_vbus); + int usb_host_wakeup_irq(struct device *wkup_dev) { return 0; diff --git a/arch/arm/plat-mxs/usb_wakeup.c b/arch/arm/plat-mxs/usb_wakeup.c index 74223a88bbe4..ecefaeed519c 100644 --- a/arch/arm/plat-mxs/usb_wakeup.c +++ b/arch/arm/plat-mxs/usb_wakeup.c @@ -34,7 +34,7 @@ struct wakeup_ctrl { static struct wakeup_ctrl *g_ctrl; extern int usb_event_is_otg_wakeup(void); -extern void usb_debounce_id_pin(void); +extern void usb_debounce_id_vbus(void); static void wakeup_clk_gate(struct fsl_usb2_wakeup_platform_data *pdata, bool on) { @@ -94,11 +94,10 @@ static void wakeup_event_handler(struct wakeup_ctrl *ctrl) int i; wakeup_clk_gate(ctrl->pdata, true); - /* if this is an wakeup event, we should debounce ID pin - * so we can get the correct ID value(ID status) here - * */ + + /* In order to get the real id/vbus value */ if (usb_event_is_otg_wakeup()) - usb_debounce_id_pin(); + usb_debounce_id_vbus(); for (i = 0; i < 3; i++) { struct fsl_usb2_platform_data *usb_pdata = pdata->usb_pdata[i]; |