Message ID | 20171027195519.5931-5-vivien.didelot@savoirfairelinux.com |
---|---|
State | Accepted, archived |
Delegated to: | David Miller |
Headers | show |
Series | net: dsa: add port parsing functions | expand |
diff --git a/net/dsa/dsa2.c b/net/dsa/dsa2.c index 960219d2f862..5b9dea81d617 100644 --- a/net/dsa/dsa2.c +++ b/net/dsa/dsa2.c @@ -478,14 +478,15 @@ static int dsa_cpu_parse(struct dsa_port *port, u32 index, if (!ethernet) return -EINVAL; ethernet_dev = of_find_net_device_by_node(ethernet); + if (!ethernet_dev) + return -EPROBE_DEFER; } else { ethernet_dev = dsa_dev_to_net_device(ds->cd->netdev[index]); + if (!ethernet_dev) + return -EPROBE_DEFER; dev_put(ethernet_dev); } - if (!ethernet_dev) - return -EPROBE_DEFER; - if (!dst->cpu_dp) { dst->cpu_dp = port; dst->cpu_dp->master = ethernet_dev;