summaryrefslogtreecommitdiffstats
path: root/drivers/net/macb.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/macb.c')
-rw-r--r--drivers/net/macb.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/drivers/net/macb.c b/drivers/net/macb.c
index 4feeed0ba1..6864119bd5 100644
--- a/drivers/net/macb.c
+++ b/drivers/net/macb.c
@@ -48,7 +48,7 @@
#include <errno.h>
#include <asm/io.h>
#include <mach/board.h>
-#include <mach/clk.h>
+#include <linux/clk.h>
#include "macb.h"
@@ -412,6 +412,9 @@ static int macb_probe(struct device_d *dev)
unsigned long macb_hz;
u32 ncfgr;
struct at91_ether_platform_data *pdata;
+#if defined(CONFIG_ARCH_AT91)
+ struct clk *pclk;
+#endif
if (!dev->platform_data) {
printf("macb: no platform_data\n");
@@ -450,7 +453,13 @@ static int macb_probe(struct device_d *dev)
* Do some basic initialization so that we at least can talk
* to the PHY
*/
+#if defined(CONFIG_ARCH_AT91)
+ pclk = clk_get(dev, "macb_clk");
+ clk_enable(pclk);
+ macb_hz = clk_get_rate(pclk);
+#else
macb_hz = get_macb_pclk_rate(0);
+#endif
if (macb_hz < 20000000)
ncfgr = MACB_BF(CLK, MACB_CLK_DIV8);
else if (macb_hz < 40000000)