[PATCH 02/13] MIPS: BCM63XX: add USB device clock enable delay to clock code

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This patch adds the required 10 micro seconds delay to the USB device
clock enable operation. Put this where the correct clock knowledege is,
which is in the clock code, and remove this delay from the bcm63xx_udc
gadget driver where it was before.

Signed-off-by: Florian Fainelli <florian@xxxxxxxxxxx>
---
 arch/mips/bcm63xx/clk.c          |    5 +++++
 drivers/usb/gadget/bcm63xx_udc.c |    1 -
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/arch/mips/bcm63xx/clk.c b/arch/mips/bcm63xx/clk.c
index a39aeb8..1f1a6c1 100644
--- a/arch/mips/bcm63xx/clk.c
+++ b/arch/mips/bcm63xx/clk.c
@@ -182,6 +182,11 @@ static void usbd_set(struct clk *clk, int enable)
 		bcm_hwclock_set(CKCTL_6328_USBD_EN, enable);
 	else if (BCMCPU_IS_6368())
 		bcm_hwclock_set(CKCTL_6368_USBD_EN, enable);
+	else
+		return;
+
+	if (enable)
+		udelay(10);
 }
 
 static struct clk clk_usbd = {
diff --git a/drivers/usb/gadget/bcm63xx_udc.c b/drivers/usb/gadget/bcm63xx_udc.c
index 47a4993..ad17533 100644
--- a/drivers/usb/gadget/bcm63xx_udc.c
+++ b/drivers/usb/gadget/bcm63xx_udc.c
@@ -386,7 +386,6 @@ static inline void set_clocks(struct bcm63xx_udc *udc, bool is_enabled)
 	if (is_enabled) {
 		clk_enable(udc->usbh_clk);
 		clk_enable(udc->usbd_clk);
-		udelay(10);
 	} else {
 		clk_disable(udc->usbd_clk);
 		clk_disable(udc->usbh_clk);
-- 
1.7.10.4



[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux