summaryrefslogtreecommitdiff
path: root/arch/arm/mach-mx5/usb_h2.c
diff options
context:
space:
mode:
authorPeter Chen <peter.chen@freescale.com>2010-10-25 15:39:24 +0800
committerAlejandro Gonzalez <alex.gonzalez@digi.com>2011-01-17 14:57:00 +0100
commit21e73ca0d40a708f038ba4a0e264ee2c68b37b62 (patch)
tree03a5b53fc30cbdfa5d2d24e9ba6ed74f2d304bb0 /arch/arm/mach-mx5/usb_h2.c
parentbdca086c795469ba898fde4f7db3b00c5b589757 (diff)
ENGR00132894 usb: clk_get should not be called at IRQ context
The old implementation will clk_get/clk_put for each clk on/off operation. As some clk on/off operation would be IRQ context. So, it will ocurr the error like "schedule at atomic context". The new implementation will only call clk_get at usb initialization, and clk_put at usb de-initialization. The driver's clock on/off will only call clk_enable/clk_disable. Signed-off-by: Peter Chen <peter.chen@freescale.com>
Diffstat (limited to 'arch/arm/mach-mx5/usb_h2.c')
-rw-r--r--arch/arm/mach-mx5/usb_h2.c5
1 files changed, 0 insertions, 5 deletions
diff --git a/arch/arm/mach-mx5/usb_h2.c b/arch/arm/mach-mx5/usb_h2.c
index 57384f89be02..9acbbf18dd1a 100644
--- a/arch/arm/mach-mx5/usb_h2.c
+++ b/arch/arm/mach-mx5/usb_h2.c
@@ -98,11 +98,6 @@ static int fsl_usb_host_init_ext(struct platform_device *pdev)
clk_enable(usb_clk);
clk_put(usb_clk);
- /*derive clock from oscillator */
- usb_clk = clk_get(NULL, "usb_utmi_clk");
- clk_disable(usb_clk);
- clk_put(usb_clk);
-
/* on mx53, there is a hardware limitation that when switch the host2's clk mode
* ,usb phy1 clk must be on, after finish switching this clk can be off */
if (cpu_is_mx53()) {