Knowledge of the clock setup delay should remain at the clock level (so it can be clock specific and CPU specific). Add the 100 milliseconds required clock delay for the USB host clock when it gets enabled. Signed-off-by: Florian Fainelli <florian@xxxxxxxxxxx> --- arch/mips/bcm63xx/clk.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/arch/mips/bcm63xx/clk.c b/arch/mips/bcm63xx/clk.c index b9e948d..a39aeb8 100644 --- a/arch/mips/bcm63xx/clk.c +++ b/arch/mips/bcm63xx/clk.c @@ -162,6 +162,11 @@ static void usbh_set(struct clk *clk, int enable) bcm_hwclock_set(CKCTL_6348_USBH_EN, enable); else if (BCMCPU_IS_6368()) bcm_hwclock_set(CKCTL_6368_USBH_EN, enable); + else + return; + + if (enable) + msleep(100); } static struct clk clk_usbh = { -- 1.7.10.4