diff options
author | Christoph Muellner <christoph.muellner@theobroma-systems.com> | 2018-03-15 19:13:37 +0100 |
---|---|---|
committer | Christoph Muellner <christoph.muellner@theobroma-systems.com> | 2018-04-04 14:49:30 +0200 |
commit | 289b50696df036db1228d7247f8b8b743f3eda13 (patch) | |
tree | 541442c44e7e43a117d13a930a7cdb2684ba5431 /drivers/net/ethernet/apm/xgene/xgene_enet_sgmac.c | |
parent | b39982cacc3799111fa617ec14928ee19d8490bd (diff) |
[noupstream] Add gryphon support.
* arm64: dts: apm: Add serial 1 to shadowcat.dts
* arm64: dts: Add apm-gryphon.dts
* drivers: xgene: Allow to run the ethernet controller in MAC-to-MAC mode.
Signed-off-by: Christoph Muellner <christoph.muellner@theobroma-systems.com>
Diffstat (limited to 'drivers/net/ethernet/apm/xgene/xgene_enet_sgmac.c')
-rw-r--r-- | drivers/net/ethernet/apm/xgene/xgene_enet_sgmac.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/drivers/net/ethernet/apm/xgene/xgene_enet_sgmac.c b/drivers/net/ethernet/apm/xgene/xgene_enet_sgmac.c index b1a83fdbefb8..4134da1aa2e2 100644 --- a/drivers/net/ethernet/apm/xgene/xgene_enet_sgmac.c +++ b/drivers/net/ethernet/apm/xgene/xgene_enet_sgmac.c @@ -349,7 +349,8 @@ static void xgene_sgmac_init(struct xgene_enet_pdata *p) if (!(p->enet_id == XGENE_ENET2 && p->mdio_driver)) xgene_sgmac_reset(p); - xgene_sgmii_enable_autoneg(p); + if (p->mac_to_mac_speed == 0) + xgene_sgmii_enable_autoneg(p); xgene_sgmac_set_speed(p); xgene_sgmac_set_mac_addr(p); @@ -548,7 +549,13 @@ static void xgene_enet_link_state(struct work_struct *work) struct net_device *ndev = p->ndev; u32 link, poll_interval; - link = xgene_enet_link_status(p); + if (p->mac_to_mac_speed == 0) { + link = xgene_enet_link_status(p); + } else { + p->phy_speed = p->mac_to_mac_speed; + link = 1; + } + if (link) { if (!netif_carrier_ok(ndev)) { netif_carrier_on(ndev); |