Florian Fainelli <f.faine...@gmail.com> writes: > On 27/04/16 16:15, Andrew Lunn wrote: >> On Wed, Apr 27, 2016 at 06:30:04PM -0400, Vivien Didelot wrote: >>> List DSA port structures in their switch structure, so that drivers can >>> iterate on them to retrieve information such as their ports membership. >> >> And this would be so much easier using a plan array. > > Agreed, I do not see much value in doing this at the moment. Even if you > have unused ports in a switch, allocating an array is a small price to > pay compared to directly indexing by port number. > > NAK from me unless there is a compelling reason for doing so.
The point of having a list is 1) get rid of the DSA_MAX_PORTS and have variable number of ports 2) lists make iteration easier with variable number of switchs/ports, e.g.: dsa_tree_for_each_switch(dst, ds) dsa_switch_for_each_port(ds, dp) /* do something with the port */; Anyway, I'm writing a proposal for a new design of DSA, in order to support the D in DSA. That way, we'll avoid reviewing details of the implementation and have a big picture of the necessary API changes. Thanks, Vivien