clk: make devm_clk_get() available to other drivers

Currently, devm_clk_get() is implemented for only one driver.
Because some other drivers will use it, move it to device
core driver.

Signed-off-by: Alexandre Bailon <abailon@baylibre.com>
diff --git a/drivers/core/device.c b/drivers/core/device.c
index 05dadf9..83b00f8 100644
--- a/drivers/core/device.c
+++ b/drivers/core/device.c
@@ -883,3 +883,23 @@
 	return lists_bind_fdt(parent, node, NULL, false);
 }
 #endif
+
+struct clk *devm_clk_get(struct udevice *dev, const char *id)
+{
+        struct clk *clk;
+        int ret;
+
+        clk = devm_kzalloc(dev, sizeof(*clk), GFP_KERNEL);
+        if (!clk) {
+                debug("%s: can't allocate clock\n", __func__);
+                return ERR_PTR(-ENOMEM);
+        }
+
+       ret = clk_get_by_name(dev, id, clk);
+        if (ret < 0) {
+                debug("%s: can't get clock (ret = %d)!\n", __func__, ret);
+                return ERR_PTR(ret);
+        }
+
+       return clk;
+}
diff --git a/drivers/mtd/nand/raw/brcmnand/brcmnand_compat.c b/drivers/mtd/nand/raw/brcmnand/brcmnand_compat.c
index 96b27e6..ec9df10 100644
--- a/drivers/mtd/nand/raw/brcmnand/brcmnand_compat.c
+++ b/drivers/mtd/nand/raw/brcmnand/brcmnand_compat.c
@@ -3,26 +3,6 @@
 #include <common.h>
 #include "brcmnand_compat.h"
 
-struct clk *devm_clk_get(struct udevice *dev, const char *id)
-{
-	struct clk *clk;
-	int ret;
-
-	clk = devm_kzalloc(dev, sizeof(*clk), GFP_KERNEL);
-	if (!clk) {
-		debug("%s: can't allocate clock\n", __func__);
-		return ERR_PTR(-ENOMEM);
-	}
-
-	ret = clk_get_by_name(dev, id, clk);
-	if (ret < 0) {
-		debug("%s: can't get clock (ret = %d)!\n", __func__, ret);
-		return ERR_PTR(ret);
-	}
-
-	return clk;
-}
-
 int clk_prepare_enable(struct clk *clk)
 {
 	return clk_enable(clk);
diff --git a/drivers/mtd/nand/raw/brcmnand/brcmnand_compat.h b/drivers/mtd/nand/raw/brcmnand/brcmnand_compat.h
index 02cab0f..c33d542 100644
--- a/drivers/mtd/nand/raw/brcmnand/brcmnand_compat.h
+++ b/drivers/mtd/nand/raw/brcmnand/brcmnand_compat.h
@@ -5,8 +5,7 @@
 
 #include <clk.h>
 #include <dm.h>
-
-struct clk *devm_clk_get(struct udevice *dev, const char *id);
+#include <dm/device.h>
 int clk_prepare_enable(struct clk *clk);
 void clk_disable_unprepare(struct clk *clk);
 
diff --git a/include/dm/device.h b/include/dm/device.h
index 27a6d7b..25da9b2 100644
--- a/include/dm/device.h
+++ b/include/dm/device.h
@@ -948,6 +948,8 @@
 	kfree(ptr);
 }
 
+struct clk *devm_clk_get(struct udevice *dev, const char *id);
+
 #endif /* ! CONFIG_DEVRES */
 
 /*