With a proper fix for Kirkwood ethernet IP MAC address clock gating
issue, we can now remove the clock gating workaround that always
enabled ethernet clocks.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselba...@gmail.com>
---
Changelog:
v2->v3:
- make use of new public clk_is_enabled, adds dependency to [1]
- add warning about gated clock && missing MAC property
  (Suggested by Jason Gunthorpe)
v1->v2:
- check for gated clock before accessing eth registers
  (Suggested by Andrew Lunn)

[1] http://www.spinics.net/lists/arm-kernel/msg277392.html

Cc: Jason Cooper <ja...@lakedaemon.net>
Cc: Andrew Lunn <and...@lunn.ch>
Cc: Russell King <li...@arm.linux.org.uk>
Cc: Grant Likely <grant.lik...@linaro.org>
Cc: Benjamin Herrenschmidt <b...@kernel.crashing.org>
Cc: Jason Gunthorpe <jguntho...@obsidianresearch.com>
Cc: Ezequiel Garcia <ezequiel.gar...@free-electrons.com>
Cc: Mike Turquette <mturque...@linaro.org>
Cc: linux-arm-ker...@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
---
 arch/arm/mach-kirkwood/board-dt.c |   14 --------------
 1 file changed, 14 deletions(-)

diff --git a/arch/arm/mach-kirkwood/board-dt.c 
b/arch/arm/mach-kirkwood/board-dt.c
index 28e952b..6925de8 100644
--- a/arch/arm/mach-kirkwood/board-dt.c
+++ b/arch/arm/mach-kirkwood/board-dt.c
@@ -41,7 +41,6 @@ static void __init kirkwood_legacy_clk_init(void)
        struct device_node *np = of_find_compatible_node(
                NULL, NULL, "marvell,kirkwood-gating-clock");
        struct of_phandle_args clkspec;
-       struct clk *clk;
 
        clkspec.np = np;
        clkspec.args_count = 1;
@@ -53,19 +52,6 @@ static void __init kirkwood_legacy_clk_init(void)
        clkspec.args[0] = CGC_BIT_PEX1;
        orion_clkdev_add("1", "pcie",
                         of_clk_get_from_provider(&clkspec));
-
-       /*
-        * The ethernet interfaces forget the MAC address assigned by
-        * u-boot if the clocks are turned off. Until proper DT support
-        * is available we always enable them for now.
-        */
-       clkspec.args[0] = CGC_BIT_GE0;
-       clk = of_clk_get_from_provider(&clkspec);
-       clk_prepare_enable(clk);
-
-       clkspec.args[0] = CGC_BIT_GE1;
-       clk = of_clk_get_from_provider(&clkspec);
-       clk_prepare_enable(clk);
 }
 
 #define MV643XX_ETH_MAC_ADDR_LOW       0x0414
-- 
1.7.10.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to