diff options
author | Tom Rini <trini@konsulko.com> | 2018-04-15 08:42:37 -0400 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2018-04-15 08:42:37 -0400 |
commit | df13a44377b36f438d15de06b07ad4645b89cf4f (patch) | |
tree | c25c837a617fa82826f15237b8f8ff6b81723af0 /drivers/net/zynq_gem.c | |
parent | 6d0409f256127000a9b32f94d1b52a6ee83382bf (diff) | |
parent | 16879cd25a4089cde2f3393fb09567df53402679 (diff) |
Merge git://git.denx.de/u-boot-net
Diffstat (limited to 'drivers/net/zynq_gem.c')
-rw-r--r-- | drivers/net/zynq_gem.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/net/zynq_gem.c b/drivers/net/zynq_gem.c index 1390c36c61..dd36a8c22a 100644 --- a/drivers/net/zynq_gem.c +++ b/drivers/net/zynq_gem.c @@ -182,6 +182,7 @@ struct zynq_gem_priv { int phy_of_handle; struct mii_dev *bus; struct clk clk; + u32 max_speed; bool int_pcs; }; @@ -341,6 +342,12 @@ static int zynq_phy_init(struct udevice *dev) priv->phydev->supported &= supported | ADVERTISED_Pause | ADVERTISED_Asym_Pause; + if (priv->max_speed) { + ret = phy_set_supported(priv->phydev, priv->max_speed); + if (ret) + return ret; + } + priv->phydev->advertising = priv->phydev->supported; if (priv->phy_of_handle > 0) @@ -704,6 +711,8 @@ static int zynq_gem_ofdata_to_platdata(struct udevice *dev) } priv->interface = pdata->phy_interface; + priv->max_speed = fdtdec_get_uint(gd->fdt_blob, priv->phy_of_handle, + "max-speed", SPEED_1000); priv->int_pcs = fdtdec_get_bool(gd->fdt_blob, node, "is-internal-pcspma"); |