diff options
| -rw-r--r-- | drivers/gpu/drm/tegra/sor.c | 29 |
1 files changed, 23 insertions, 6 deletions
diff --git a/drivers/gpu/drm/tegra/sor.c b/drivers/gpu/drm/tegra/sor.c index 65088ddeeae9..7df7328f9fed 100644 --- a/drivers/gpu/drm/tegra/sor.c +++ b/drivers/gpu/drm/tegra/sor.c | |||
| @@ -1599,8 +1599,10 @@ static int tegra_sor_probe(struct platform_device *pdev) | |||
| 1599 | } | 1599 | } |
| 1600 | 1600 | ||
| 1601 | err = tegra_output_probe(&sor->output); | 1601 | err = tegra_output_probe(&sor->output); |
| 1602 | if (err < 0) | 1602 | if (err < 0) { |
| 1603 | dev_err(&pdev->dev, "failed to probe output: %d\n", err); | ||
| 1603 | return err; | 1604 | return err; |
| 1605 | } | ||
| 1604 | 1606 | ||
| 1605 | regs = platform_get_resource(pdev, IORESOURCE_MEM, 0); | 1607 | regs = platform_get_resource(pdev, IORESOURCE_MEM, 0); |
| 1606 | sor->regs = devm_ioremap_resource(&pdev->dev, regs); | 1608 | sor->regs = devm_ioremap_resource(&pdev->dev, regs); |
| @@ -1608,24 +1610,39 @@ static int tegra_sor_probe(struct platform_device *pdev) | |||
| 1608 | return PTR_ERR(sor->regs); | 1610 | return PTR_ERR(sor->regs); |
| 1609 | 1611 | ||
| 1610 | sor->rst = devm_reset_control_get(&pdev->dev, "sor"); | 1612 | sor->rst = devm_reset_control_get(&pdev->dev, "sor"); |
| 1611 | if (IS_ERR(sor->rst)) | 1613 | if (IS_ERR(sor->rst)) { |
| 1614 | dev_err(&pdev->dev, "failed to get reset control: %ld\n", | ||
| 1615 | PTR_ERR(sor->rst)); | ||
| 1612 | return PTR_ERR(sor->rst); | 1616 | return PTR_ERR(sor->rst); |
| 1617 | } | ||
| 1613 | 1618 | ||
| 1614 | sor->clk = devm_clk_get(&pdev->dev, NULL); | 1619 | sor->clk = devm_clk_get(&pdev->dev, NULL); |
| 1615 | if (IS_ERR(sor->clk)) | 1620 | if (IS_ERR(sor->clk)) { |
| 1621 | dev_err(&pdev->dev, "failed to get module clock: %ld\n", | ||
| 1622 | PTR_ERR(sor->clk)); | ||
| 1616 | return PTR_ERR(sor->clk); | 1623 | return PTR_ERR(sor->clk); |
| 1624 | } | ||
| 1617 | 1625 | ||
| 1618 | sor->clk_parent = devm_clk_get(&pdev->dev, "parent"); | 1626 | sor->clk_parent = devm_clk_get(&pdev->dev, "parent"); |
| 1619 | if (IS_ERR(sor->clk_parent)) | 1627 | if (IS_ERR(sor->clk_parent)) { |
| 1628 | dev_err(&pdev->dev, "failed to get parent clock: %ld\n", | ||
| 1629 | PTR_ERR(sor->clk_parent)); | ||
| 1620 | return PTR_ERR(sor->clk_parent); | 1630 | return PTR_ERR(sor->clk_parent); |
| 1631 | } | ||
| 1621 | 1632 | ||
| 1622 | sor->clk_safe = devm_clk_get(&pdev->dev, "safe"); | 1633 | sor->clk_safe = devm_clk_get(&pdev->dev, "safe"); |
| 1623 | if (IS_ERR(sor->clk_safe)) | 1634 | if (IS_ERR(sor->clk_safe)) { |
| 1635 | dev_err(&pdev->dev, "failed to get safe clock: %ld\n", | ||
| 1636 | PTR_ERR(sor->clk_safe)); | ||
| 1624 | return PTR_ERR(sor->clk_safe); | 1637 | return PTR_ERR(sor->clk_safe); |
| 1638 | } | ||
| 1625 | 1639 | ||
| 1626 | sor->clk_dp = devm_clk_get(&pdev->dev, "dp"); | 1640 | sor->clk_dp = devm_clk_get(&pdev->dev, "dp"); |
| 1627 | if (IS_ERR(sor->clk_dp)) | 1641 | if (IS_ERR(sor->clk_dp)) { |
| 1642 | dev_err(&pdev->dev, "failed to get DP clock: %ld\n", | ||
| 1643 | PTR_ERR(sor->clk_dp)); | ||
| 1628 | return PTR_ERR(sor->clk_dp); | 1644 | return PTR_ERR(sor->clk_dp); |
| 1645 | } | ||
| 1629 | 1646 | ||
| 1630 | INIT_LIST_HEAD(&sor->client.list); | 1647 | INIT_LIST_HEAD(&sor->client.list); |
| 1631 | sor->client.ops = &sor_client_ops; | 1648 | sor->client.ops = &sor_client_ops; |
