diff options
author | Olof Johansson <olof@lixom.net> | 2014-01-09 03:07:32 -0500 |
---|---|---|
committer | Olof Johansson <olof@lixom.net> | 2014-01-09 03:07:32 -0500 |
commit | 64576e439709738c0f55ab60cdba0ad18d5aa24e (patch) | |
tree | 031394615b00dacbcec5c9e4b99f4494992ce375 /drivers/usb | |
parent | 3d7e0207ced354d1647195f53bcc670f9756c649 (diff) | |
parent | c0f8a48723d1e7ec48f65c72f880bc49edea9a4a (diff) |
Merge branch 'qcom/drivers' into next/drivers
* qcom/drivers:
tty: serial: Limit msm_serial_hs driver to platforms that use it
mmc: msm_sdcc: Limit driver to platforms that use it
usb: phy: msm: Move mach dependent code to platform data
Signed-off-by: Olof Johansson <olof@lixom.net>
Diffstat (limited to 'drivers/usb')
-rw-r--r-- | drivers/usb/phy/phy-msm-usb.c | 35 |
1 files changed, 15 insertions, 20 deletions
diff --git a/drivers/usb/phy/phy-msm-usb.c b/drivers/usb/phy/phy-msm-usb.c index e9d4cd960ecd..9a47d4403e86 100644 --- a/drivers/usb/phy/phy-msm-usb.c +++ b/drivers/usb/phy/phy-msm-usb.c | |||
@@ -40,8 +40,6 @@ | |||
40 | #include <linux/usb/msm_hsusb_hw.h> | 40 | #include <linux/usb/msm_hsusb_hw.h> |
41 | #include <linux/regulator/consumer.h> | 41 | #include <linux/regulator/consumer.h> |
42 | 42 | ||
43 | #include <mach/clk.h> | ||
44 | |||
45 | #define MSM_USB_BASE (motg->regs) | 43 | #define MSM_USB_BASE (motg->regs) |
46 | #define DRIVER_NAME "msm_otg" | 44 | #define DRIVER_NAME "msm_otg" |
47 | 45 | ||
@@ -308,33 +306,30 @@ static void ulpi_init(struct msm_otg *motg) | |||
308 | 306 | ||
309 | static int msm_otg_link_clk_reset(struct msm_otg *motg, bool assert) | 307 | static int msm_otg_link_clk_reset(struct msm_otg *motg, bool assert) |
310 | { | 308 | { |
311 | int ret; | 309 | int ret = 0; |
310 | |||
311 | if (!motg->pdata->link_clk_reset) | ||
312 | return ret; | ||
313 | |||
314 | ret = motg->pdata->link_clk_reset(motg->clk, assert); | ||
315 | if (ret) | ||
316 | dev_err(motg->phy.dev, "usb link clk reset %s failed\n", | ||
317 | assert ? "assert" : "deassert"); | ||
312 | 318 | ||
313 | if (assert) { | ||
314 | ret = clk_reset(motg->clk, CLK_RESET_ASSERT); | ||
315 | if (ret) | ||
316 | dev_err(motg->phy.dev, "usb hs_clk assert failed\n"); | ||
317 | } else { | ||
318 | ret = clk_reset(motg->clk, CLK_RESET_DEASSERT); | ||
319 | if (ret) | ||
320 | dev_err(motg->phy.dev, "usb hs_clk deassert failed\n"); | ||
321 | } | ||
322 | return ret; | 319 | return ret; |
323 | } | 320 | } |
324 | 321 | ||
325 | static int msm_otg_phy_clk_reset(struct msm_otg *motg) | 322 | static int msm_otg_phy_clk_reset(struct msm_otg *motg) |
326 | { | 323 | { |
327 | int ret; | 324 | int ret = 0; |
328 | 325 | ||
329 | ret = clk_reset(motg->phy_reset_clk, CLK_RESET_ASSERT); | 326 | if (!motg->pdata->phy_clk_reset) |
330 | if (ret) { | ||
331 | dev_err(motg->phy.dev, "usb phy clk assert failed\n"); | ||
332 | return ret; | 327 | return ret; |
333 | } | 328 | |
334 | usleep_range(10000, 12000); | 329 | ret = motg->pdata->phy_clk_reset(motg->phy_reset_clk); |
335 | ret = clk_reset(motg->phy_reset_clk, CLK_RESET_DEASSERT); | ||
336 | if (ret) | 330 | if (ret) |
337 | dev_err(motg->phy.dev, "usb phy clk deassert failed\n"); | 331 | dev_err(motg->phy.dev, "usb phy clk reset failed\n"); |
332 | |||
338 | return ret; | 333 | return ret; |
339 | } | 334 | } |
340 | 335 | ||