aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/cortina
diff options
context:
space:
mode:
authorLinus Walleij <linus.walleij@linaro.org>2018-07-11 21:32:43 +0200
committerDavid S. Miller <davem@davemloft.net>2018-07-12 17:39:15 -0700
commit60cc7767b901dd1e3f70755c3d2505556ba487c2 (patch)
treef8ee2eff219f12f685a0ab3a9937f16ccd8bd016 /drivers/net/ethernet/cortina
parentnet: gemini: Improve connection prints (diff)
downloadlinux-dev-60cc7767b901dd1e3f70755c3d2505556ba487c2.tar.xz
linux-dev-60cc7767b901dd1e3f70755c3d2505556ba487c2.zip
net: gemini: Allow multiple ports to instantiate
The code was not tested with two ports actually in use at the same time. (I blame this on lack of actual hardware using that feature.) Now after locating a system using both ports, add necessary fix to make both ports come up. Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/cortina')
-rw-r--r--drivers/net/ethernet/cortina/gemini.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/net/ethernet/cortina/gemini.c b/drivers/net/ethernet/cortina/gemini.c
index 7b880878f22b..bd4602ebcea1 100644
--- a/drivers/net/ethernet/cortina/gemini.c
+++ b/drivers/net/ethernet/cortina/gemini.c
@@ -1789,7 +1789,10 @@ static int gmac_open(struct net_device *netdev)
phy_start(netdev->phydev);
err = geth_resize_freeq(port);
- if (err) {
+ /* It's fine if it's just busy, the other port has set up
+ * the freeq in that case.
+ */
+ if (err && (err != -EBUSY)) {
netdev_err(netdev, "could not resize freeq\n");
goto err_stop_phy;
}