diff options
-rw-r--r-- | drivers/phy/phy-ti-pipe3.c | 24 |
1 files changed, 15 insertions, 9 deletions
diff --git a/drivers/phy/phy-ti-pipe3.c b/drivers/phy/phy-ti-pipe3.c index f141237131c3..baa3f78d62bc 100644 --- a/drivers/phy/phy-ti-pipe3.c +++ b/drivers/phy/phy-ti-pipe3.c | |||
@@ -294,16 +294,22 @@ static int ti_pipe3_probe(struct platform_device *pdev) | |||
294 | 294 | ||
295 | phy->dev = &pdev->dev; | 295 | phy->dev = &pdev->dev; |
296 | 296 | ||
297 | phy->wkupclk = devm_clk_get(phy->dev, "wkupclk"); | 297 | if (!of_device_is_compatible(node, "ti,phy-pipe3-sata")) { |
298 | if (IS_ERR(phy->wkupclk)) { | 298 | |
299 | dev_err(&pdev->dev, "unable to get wkupclk\n"); | 299 | phy->wkupclk = devm_clk_get(phy->dev, "wkupclk"); |
300 | return PTR_ERR(phy->wkupclk); | 300 | if (IS_ERR(phy->wkupclk)) { |
301 | } | 301 | dev_err(&pdev->dev, "unable to get wkupclk\n"); |
302 | return PTR_ERR(phy->wkupclk); | ||
303 | } | ||
302 | 304 | ||
303 | phy->refclk = devm_clk_get(phy->dev, "refclk"); | 305 | phy->refclk = devm_clk_get(phy->dev, "refclk"); |
304 | if (IS_ERR(phy->refclk)) { | 306 | if (IS_ERR(phy->refclk)) { |
305 | dev_err(&pdev->dev, "unable to get refclk\n"); | 307 | dev_err(&pdev->dev, "unable to get refclk\n"); |
306 | return PTR_ERR(phy->refclk); | 308 | return PTR_ERR(phy->refclk); |
309 | } | ||
310 | } else { | ||
311 | phy->wkupclk = ERR_PTR(-ENODEV); | ||
312 | phy->refclk = ERR_PTR(-ENODEV); | ||
307 | } | 313 | } |
308 | 314 | ||
309 | phy->sys_clk = devm_clk_get(phy->dev, "sysclk"); | 315 | phy->sys_clk = devm_clk_get(phy->dev, "sysclk"); |