diff options
author | Neil Armstrong <narmstrong@baylibre.com> | 2015-09-22 11:57:04 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-09-24 01:06:27 +0300 |
commit | 1bb6aa56bb388ac4f7dba226aa55142fa8c65361 (patch) | |
tree | d5895eeca810512d17b1f62d695c1b14727fb7c3 | |
parent | b6bd9b5448a9362e3ca33b21f1461baa5500520f (diff) | |
download | linux-1bb6aa56bb388ac4f7dba226aa55142fa8c65361.tar.xz |
net: davinci_emac: Add support for fixed-link PHY
In case the DaVinci Emac is directly connected to a
non-mdio PHY/device, it should be possible to provide
a fixed link configuration in the DT.
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Tested-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | drivers/net/ethernet/ti/davinci_emac.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/net/ethernet/ti/davinci_emac.c b/drivers/net/ethernet/ti/davinci_emac.c index 39a54b27db66..33bd3b902304 100644 --- a/drivers/net/ethernet/ti/davinci_emac.c +++ b/drivers/net/ethernet/ti/davinci_emac.c @@ -1861,8 +1861,12 @@ davinci_emac_of_get_pdata(struct platform_device *pdev, struct emac_priv *priv) pdata->no_bd_ram = of_property_read_bool(np, "ti,davinci-no-bd-ram"); priv->phy_node = of_parse_phandle(np, "phy-handle", 0); - if (!priv->phy_node) - pdata->phy_id = NULL; + if (!priv->phy_node) { + if (!of_phy_is_fixed_link(np)) + pdata->phy_id = NULL; + else if (of_phy_register_fixed_link(np) >= 0) + priv->phy_node = of_node_get(np); + } auxdata = pdev->dev.platform_data; if (auxdata) { |