kernel: update 3.14 to 3.14.18
[openwrt.git] / target / linux / sunxi / patches-3.14 / 120-dt-sun7i-add-gmac-clocknode.patch
1 From 3e1660161aacc5aeeebb09a0c8d91ad01399e5cd Mon Sep 17 00:00:00 2001
2 From: Chen-Yu Tsai <wens@csie.org>
3 Date: Mon, 10 Feb 2014 18:35:48 +0800
4 Subject: [PATCH] ARM: dts: sun7i: Add GMAC clock node to sun7i DTSI
5
6 The GMAC uses 1 of 2 sources for its transmit clock, depending on the
7 PHY interface mode. Add both sources as dummy clocks, and as parents
8 to the GMAC clock node.
9
10 Signed-off-by: Chen-Yu Tsai <wens@csie.org>
11 ---
12  arch/arm/boot/dts/sun7i-a20.dtsi | 28 ++++++++++++++++++++++++++++
13  1 file changed, 28 insertions(+)
14
15 --- a/arch/arm/boot/dts/sun7i-a20.dtsi
16 +++ b/arch/arm/boot/dts/sun7i-a20.dtsi
17 @@ -330,6 +330,34 @@
18                 };
19  
20                 /*
21 +                * The following two are dummy clocks, placeholders used in the gmac_tx
22 +                * clock. The gmac driver will choose one parent depending on the PHY
23 +                * interface mode, using clk_set_rate auto-reparenting.
24 +                * The actual TX clock rate is not controlled by the gmac_tx clock.
25 +                */
26 +               mii_phy_tx_clk: clk@2 {
27 +                       #clock-cells = <0>;
28 +                       compatible = "fixed-clock";
29 +                       clock-frequency = <25000000>;
30 +                       clock-output-names = "mii_phy_tx";
31 +               };
32 +
33 +               gmac_int_tx_clk: clk@3 {
34 +                       #clock-cells = <0>;
35 +                       compatible = "fixed-clock";
36 +                       clock-frequency = <125000000>;
37 +                       clock-output-names = "gmac_int_tx";
38 +               };
39 +
40 +               gmac_tx_clk: clk@01c20164 {
41 +                       #clock-cells = <0>;
42 +                       compatible = "allwinner,sun7i-a20-gmac-clk";
43 +                       reg = <0x01c20164 0x4>;
44 +                       clocks = <&mii_phy_tx_clk>, <&gmac_int_tx_clk>;
45 +                       clock-output-names = "gmac_tx";
46 +               };
47 +
48 +               /*
49                  * Dummy clock used by output clocks
50                  */
51                 osc24M_32k: clk@1 {