]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
drivers: net: ethernet: cpsw: add phy-mode support to cpsw driver
authorMugunthan V N <mugunthanvnm@ti.com>
Mon, 3 Jun 2013 20:10:10 +0000 (20:10 +0000)
committerDavid S. Miller <davem@davemloft.net>
Tue, 4 Jun 2013 21:17:22 +0000 (14:17 -0700)
Adding phy-mode support to cpsw driver and updating the cpsw binding
documentation.

Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Documentation/devicetree/bindings/net/cpsw.txt
drivers/net/ethernet/ti/cpsw.c

index 4f2ca6b4a182d3f9584c72b05414deacb085aebf..05d660e4ac6402f57be201105b94147c69776b53 100644 (file)
@@ -28,6 +28,8 @@ Optional properties:
 Slave Properties:
 Required properties:
 - phy_id               : Specifies slave phy id
+- phy-mode             : The interface between the SoC and the PHY (a string
+                         that of_get_phy_mode() can understand)
 - mac-address          : Specifies slave MAC address
 
 Optional properties:
@@ -58,11 +60,13 @@ Examples:
                cpts_clock_shift = <29>;
                cpsw_emac0: slave@0 {
                        phy_id = <&davinci_mdio>, <0>;
+                       phy-mode = "rgmii-txid";
                        /* Filled in by U-Boot */
                        mac-address = [ 00 00 00 00 00 00 ];
                };
                cpsw_emac1: slave@1 {
                        phy_id = <&davinci_mdio>, <1>;
+                       phy-mode = "rgmii-txid";
                        /* Filled in by U-Boot */
                        mac-address = [ 00 00 00 00 00 00 ];
                };
@@ -84,11 +88,13 @@ Examples:
                cpts_clock_shift = <29>;
                cpsw_emac0: slave@0 {
                        phy_id = <&davinci_mdio>, <0>;
+                       phy-mode = "rgmii-txid";
                        /* Filled in by U-Boot */
                        mac-address = [ 00 00 00 00 00 00 ];
                };
                cpsw_emac1: slave@1 {
                        phy_id = <&davinci_mdio>, <1>;
+                       phy-mode = "rgmii-txid";
                        /* Filled in by U-Boot */
                        mac-address = [ 00 00 00 00 00 00 ];
                };
index 89a4c40d6d8342b8737311121515f705fbdecbe6..a45f64eef8709b9d1ba3ec5196df4a3ba58fb740 100644 (file)
@@ -1554,6 +1554,8 @@ static int cpsw_probe_dt(struct cpsw_platform_data *data,
                if (mac_addr)
                        memcpy(slave_data->mac_addr, mac_addr, ETH_ALEN);
 
+               slave_data->phy_if = of_get_phy_mode(slave_node);
+
                if (data->dual_emac) {
                        if (of_property_read_u32(slave_node, "dual_emac_res_vlan",
                                                 &prop)) {