summaryrefslogtreecommitdiffstats
path: root/net/dsa
diff options
context:
space:
mode:
authorTobias Waldekranz <tobias@waldekranz.com>2015-02-05 14:54:09 +0100
committerDavid S. Miller <davem@davemloft.net>2015-02-08 07:07:37 +0100
commite04449fcf2cd63dec176355a028bd28b4d469be9 (patch)
tree09092393163b21a8f41f5dda29d7b9a9e082515f /net/dsa
parentdsa: do not dereference non-existing routing table (diff)
downloadlinux-e04449fcf2cd63dec176355a028bd28b4d469be9.tar.xz
linux-e04449fcf2cd63dec176355a028bd28b4d469be9.zip
dsa: correctly determine the number of switches in a system
The number of connected switches was sourced from the number of children to the DSA node, change it to the number of available children, skipping any disabled switches. Fixes: 5e95329b701c4 ("dsa: add device tree bindings to register DSA switches") Signed-off-by: Tobias Waldekranz <tobias@waldekranz.com> Acked-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/dsa')
-rw-r--r--net/dsa/dsa.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/dsa/dsa.c b/net/dsa/dsa.c
index 37317149f918..2173402d87e0 100644
--- a/net/dsa/dsa.c
+++ b/net/dsa/dsa.c
@@ -603,7 +603,7 @@ static int dsa_of_probe(struct platform_device *pdev)
pdev->dev.platform_data = pd;
pd->netdev = &ethernet_dev->dev;
- pd->nr_chips = of_get_child_count(np);
+ pd->nr_chips = of_get_available_child_count(np);
if (pd->nr_chips > DSA_MAX_SWITCHES)
pd->nr_chips = DSA_MAX_SWITCHES;