Commit 766ab0de authored by Heiner Kallweit's avatar Heiner Kallweit Committed by Vinod Koul
Browse files

phy: amlogic: use devm_clk_get_enabled() to simplify the code



Simplify the code by using devm_clk_get_enabled().

Signed-off-by: default avatarHeiner Kallweit <hkallweit1@gmail.com>
Reviewed-by: default avatarNeil Armstrong <narmstrong@baylibre.com>
Link: https://lore.kernel.org/r/9308a2a3-e828-bd9d-ab83-a68376aab5c3@gmail.com


Signed-off-by: default avatarVinod Koul <vkoul@kernel.org>
parent 2e9bffc4
Loading
Loading
Loading
Loading
+6 −26
Original line number Diff line number Diff line
@@ -388,7 +388,6 @@ static int phy_g12a_usb3_pcie_probe(struct platform_device *pdev)
	struct phy_g12a_usb3_pcie_priv *priv;
	struct phy_provider *phy_provider;
	void __iomem *base;
	int ret;

	priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);
	if (!priv)
@@ -408,43 +407,24 @@ static int phy_g12a_usb3_pcie_probe(struct platform_device *pdev)
	if (IS_ERR(priv->regmap_cr))
		return PTR_ERR(priv->regmap_cr);

	priv->clk_ref = devm_clk_get(dev, "ref_clk");
	priv->clk_ref = devm_clk_get_enabled(dev, "ref_clk");
	if (IS_ERR(priv->clk_ref))
		return PTR_ERR(priv->clk_ref);

	ret = clk_prepare_enable(priv->clk_ref);
	if (ret)
		return ret;

	priv->reset = devm_reset_control_array_get_exclusive(dev);
	if (IS_ERR(priv->reset)) {
		ret = PTR_ERR(priv->reset);
		goto err_disable_clk_ref;
	}
	if (IS_ERR(priv->reset))
		return PTR_ERR(priv->reset);

	priv->phy = devm_phy_create(dev, np, &phy_g12a_usb3_pcie_ops);
	if (IS_ERR(priv->phy)) {
		ret = PTR_ERR(priv->phy);
		dev_err_probe(dev, ret, "failed to create PHY\n");
		goto err_disable_clk_ref;
	}
	if (IS_ERR(priv->phy))
		return dev_err_probe(dev, PTR_ERR(priv->phy), "failed to create PHY\n");

	phy_set_drvdata(priv->phy, priv);
	dev_set_drvdata(dev, priv);

	phy_provider = devm_of_phy_provider_register(dev,
						     phy_g12a_usb3_pcie_xlate);
	if (IS_ERR(phy_provider)) {
		ret = PTR_ERR(phy_provider);
		goto err_disable_clk_ref;
	}

	return 0;

err_disable_clk_ref:
	clk_disable_unprepare(priv->clk_ref);

	return ret;
	return PTR_ERR_OR_ZERO(phy_provider);
}

static const struct of_device_id phy_g12a_usb3_pcie_of_match[] = {