net: dsa: list DSA links in the fabric
authorVivien Didelot <vivien.didelot@gmail.com>
Thu, 31 Oct 2019 02:09:13 +0000 (22:09 -0400)
committerDavid S. Miller <davem@davemloft.net>
Thu, 31 Oct 2019 21:26:38 +0000 (14:26 -0700)
commitc5f51765a1f60b701840544faf3ca63204b8dc3c
tree41309bd98e2d94c30e76b3ada52475d1bebb86dd
parent5c26c1d6dffaae126b98ee27feba6e8042cc619d
net: dsa: list DSA links in the fabric

Implement a new list of DSA links in the switch fabric itself, to
provide an alterative to the ds->rtable static arrays.

At the same time, provide a new dsa_routing_port() helper to abstract
the usage of ds->rtable in drivers. If there's no port to reach a
given device, return the first invalid port, ds->num_ports. This avoids
potential signedness errors or the need to define special values.

Signed-off-by: Vivien Didelot <vivien.didelot@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/dsa/mv88e6xxx/chip.c
include/net/dsa.h
net/dsa/dsa2.c