@@ -269,6 +269,8 @@ static int usbtll_omap_probe(struct platform_device *pdev)
269
269
270
270
if (IS_ERR (tll -> ch_clk [i ]))
271
271
dev_dbg (dev , "can't get clock : %s\n" , clkname );
272
+ else
273
+ clk_prepare (tll -> ch_clk [i ]);
272
274
}
273
275
274
276
pm_runtime_put_sync (dev );
@@ -301,9 +303,12 @@ static int usbtll_omap_remove(struct platform_device *pdev)
301
303
tll_dev = NULL ;
302
304
spin_unlock (& tll_lock );
303
305
304
- for (i = 0 ; i < tll -> nch ; i ++ )
305
- if (!IS_ERR (tll -> ch_clk [i ]))
306
+ for (i = 0 ; i < tll -> nch ; i ++ ) {
307
+ if (!IS_ERR (tll -> ch_clk [i ])) {
308
+ clk_unprepare (tll -> ch_clk [i ]);
306
309
clk_put (tll -> ch_clk [i ]);
310
+ }
311
+ }
307
312
308
313
pm_runtime_disable (& pdev -> dev );
309
314
return 0 ;
@@ -420,7 +425,7 @@ int omap_tll_enable(struct usbhs_omap_platform_data *pdata)
420
425
if (IS_ERR (tll -> ch_clk [i ]))
421
426
continue ;
422
427
423
- r = clk_prepare_enable (tll -> ch_clk [i ]);
428
+ r = clk_enable (tll -> ch_clk [i ]);
424
429
if (r ) {
425
430
dev_err (tll_dev ,
426
431
"Error enabling ch %d clock: %d\n" , i , r );
@@ -448,7 +453,7 @@ int omap_tll_disable(struct usbhs_omap_platform_data *pdata)
448
453
for (i = 0 ; i < tll -> nch ; i ++ ) {
449
454
if (omap_usb_mode_needs_tll (pdata -> port_mode [i ])) {
450
455
if (!IS_ERR (tll -> ch_clk [i ]))
451
- clk_disable_unprepare (tll -> ch_clk [i ]);
456
+ clk_disable (tll -> ch_clk [i ]);
452
457
}
453
458
}
454
459
0 commit comments