All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] net: davinci_mdio: enable and disable clock
@ 2012-08-02 19:43 ` Daniel Mack
  0 siblings, 0 replies; 19+ messages in thread
From: Daniel Mack @ 2012-08-02 19:43 UTC (permalink / raw)
  To: linux-arm-kernel

Make the driver control the device clocks. Appearantly, the Davinci
platform probes this driver with the clock all powered up, but on OMAP,
this isn't the case.

Signed-off-by: Daniel Mack <zonque@gmail.com>
---
 drivers/net/ethernet/ti/davinci_mdio.c | 16 ++++++++++++++--
 1 file changed, 14 insertions(+), 2 deletions(-)

diff --git a/drivers/net/ethernet/ti/davinci_mdio.c b/drivers/net/ethernet/ti/davinci_mdio.c
index cd7ee20..b4b6015 100644
--- a/drivers/net/ethernet/ti/davinci_mdio.c
+++ b/drivers/net/ethernet/ti/davinci_mdio.c
@@ -332,6 +332,8 @@ static int __devinit davinci_mdio_probe(struct platform_device *pdev)
 		goto bail_out;
 	}
 
+	clk_enable(data->clk);
+
 	dev_set_drvdata(dev, data);
 	data->dev = dev;
 	spin_lock_init(&data->lock);
@@ -379,8 +381,11 @@ bail_out:
 	if (data->bus)
 		mdiobus_free(data->bus);
 
-	if (data->clk)
+	if (data->clk) {
+		clk_disable(data->clk);
 		clk_put(data->clk);
+	}
+
 	pm_runtime_put_sync(&pdev->dev);
 	pm_runtime_disable(&pdev->dev);
 
@@ -397,8 +402,11 @@ static int __devexit davinci_mdio_remove(struct platform_device *pdev)
 	if (data->bus)
 		mdiobus_free(data->bus);
 
-	if (data->clk)
+	if (data->clk) {
+		clk_disable(data->clk);
 		clk_put(data->clk);
+	}
+
 	pm_runtime_put_sync(&pdev->dev);
 	pm_runtime_disable(&pdev->dev);
 
@@ -427,6 +435,8 @@ static int davinci_mdio_suspend(struct device *dev)
 	data->suspended = true;
 	spin_unlock(&data->lock);
 
+	clk_disable(data->clk);
+
 	return 0;
 }
 
@@ -435,6 +445,8 @@ static int davinci_mdio_resume(struct device *dev)
 	struct davinci_mdio_data *data = dev_get_drvdata(dev);
 	u32 ctrl;
 
+	clk_enable(data->clk);
+
 	spin_lock(&data->lock);
 	pm_runtime_put_sync(data->dev);
 
-- 
1.7.11.2

^ permalink raw reply related	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2012-08-03  5:53 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-08-02 19:43 [PATCH 1/2] net: davinci_mdio: enable and disable clock Daniel Mack
2012-08-02 19:43 ` Daniel Mack
2012-08-02 19:43 ` [PATCH 2/2] net: davinci_mdio: add DT bindings Daniel Mack
2012-08-02 19:43   ` Daniel Mack
2012-08-02 19:53 ` [PATCH 1/2] net: davinci_mdio: enable and disable clock Russell King - ARM Linux
2012-08-02 19:53   ` Russell King - ARM Linux
2012-08-02 20:17   ` Daniel Mack
2012-08-02 20:17     ` Daniel Mack
2012-08-02 20:20 ` Paul Walmsley
2012-08-02 20:20   ` Paul Walmsley
2012-08-02 20:28   ` Daniel Mack
2012-08-02 20:28     ` Daniel Mack
2012-08-03  5:16 ` Vaibhav Hiremath
2012-08-03  5:16   ` Vaibhav Hiremath
2012-08-03  5:16   ` Vaibhav Hiremath
2012-08-03  5:22   ` Daniel Mack
2012-08-03  5:22     ` Daniel Mack
2012-08-03  5:53     ` Hiremath, Vaibhav
2012-08-03  5:53       ` Hiremath, Vaibhav

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.