On Wed, 2016-11-30 at 14:52 +0100, Andrew Lunn wrote: > On Wed, Nov 30, 2016 at 08:50:34AM +0000, Joakim Tjernlund wrote: > > I am trying to wrap my head around these two "devices" and have a hard time > > telling them apart. > > We are looking att adding a faily large switch(over PCIe) to our board and > > from what I can tell > > switchdev is the new way to do it but DSA is still there. Is it possible to > > just list > > how they differ? > > Hi Joakim
Hi Andrew, thanks for answering > > If the interface you use to send frames from the host to the switch is > PCIe, you probably want to use switchdev directly. OK, we will have a few ethernet I/F's connected too but I these should be used as normal interfaces just interfacing a switch. > > DSA devices all use a host Ethernet interface to send frames to the > switch. DSA sits under switchdev, and effectively provides a lot of > the common stuff needed for implementing switch drivers of this > sort. It creates the slave interfaces, links the MAC to the PHY, has > one uniform device tree binding which all DSA switches have, deals > with encapsulation/decapsulating frames sent over the master device, > etc. And switchdev can do all this over PCIe instead? Can you have a switch tree in switchdev too? We probably need to push a custom tag for final step (after the switch) and I think that should be doable with a custom VLAN driver over one/several of switchdev's virtual interfaces? Joakim