Message ID | 20200116184153.12301-1-olteanv@gmail.com |
---|---|
State | Accepted |
Delegated to: | David Miller |
Headers | show |
Series | [v2,net-next] net: dsa: felix: Don't error out on disabled ports with no phy-mode | expand |
On 1/16/20 10:41 AM, Vladimir Oltean wrote: > From: Vladimir Oltean <vladimir.oltean@nxp.com> > > The felix_parse_ports_node function was tested only on device trees > where all ports were enabled. Fix this check so that the driver > continues to probe only with the ports where status is not "disabled", > as expected. > > Fixes: bdeced75b13f ("net: dsa: felix: Add PCS operations for PHYLINK") > Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
On Thu, Jan 16, 2020 at 08:41:53PM +0200, Vladimir Oltean wrote: > From: Vladimir Oltean <vladimir.oltean@nxp.com> > > The felix_parse_ports_node function was tested only on device trees > where all ports were enabled. Fix this check so that the driver > continues to probe only with the ports where status is not "disabled", > as expected. > > Fixes: bdeced75b13f ("net: dsa: felix: Add PCS operations for PHYLINK") > Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> Reviewed-by: Andrew Lunn <andrew@lunn.ch> Andrew
From: Vladimir Oltean <olteanv@gmail.com> Date: Thu, 16 Jan 2020 20:41:53 +0200 > From: Vladimir Oltean <vladimir.oltean@nxp.com> > > The felix_parse_ports_node function was tested only on device trees > where all ports were enabled. Fix this check so that the driver > continues to probe only with the ports where status is not "disabled", > as expected. > > Fixes: bdeced75b13f ("net: dsa: felix: Add PCS operations for PHYLINK") > Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> > --- > Changes in v2: > - Use for_each_available_child_of_node instead of open-coding the > of_device_is_available check. Applied.
diff --git a/drivers/net/dsa/ocelot/felix.c b/drivers/net/dsa/ocelot/felix.c index feccb6201660..269cc6953d47 100644 --- a/drivers/net/dsa/ocelot/felix.c +++ b/drivers/net/dsa/ocelot/felix.c @@ -323,7 +323,7 @@ static int felix_parse_ports_node(struct felix *felix, struct device *dev = felix->ocelot.dev; struct device_node *child; - for_each_child_of_node(ports_node, child) { + for_each_available_child_of_node(ports_node, child) { phy_interface_t phy_mode; u32 port; int err;