On Thu, Aug 13, 2015 at 05:01:57PM -0400, Vivien Didelot wrote: > Hi Andrew, > > On 15-08-13 22:16:08, Andrew Lunn wrote: > > On Thu, Aug 13, 2015 at 12:52:17PM -0400, Vivien Didelot wrote: > > > Add new functions in DSA drivers to access hardware VLAN entries through > > > SWITCHDEV_OBJ_PORT_VLAN objects: > > > > > > - port_pvid_get() and vlan_getnext() to dump a VLAN > > > - port_vlan_del() to exclude a port from a VLAN > > > - port_pvid_set() and port_vlan_add() to join a port to a VLAN > > > > > > The DSA infrastructure will ensure that each VLAN of the given range > > > does not already belong to another bridge. If it does, it will fallback > > > to software VLAN and won't program the hardware. > > > > > > Signed-off-by: Vivien Didelot <vivien.dide...@savoirfairelinux.com> > > > --- > > > include/net/dsa.h | 11 ++++ > > > net/dsa/slave.c | 158 > > > ++++++++++++++++++++++++++++++++++++++++++++++++++++++ > > > 2 files changed, 169 insertions(+) > > > > > > diff --git a/include/net/dsa.h b/include/net/dsa.h > > > index 6356f43..bd9b765 100644 > > > --- a/include/net/dsa.h > > > +++ b/include/net/dsa.h > > > @@ -298,6 +298,17 @@ struct dsa_switch_driver { > > > u8 state); > > > > > > /* > > > + * VLAN support > > > + */ > > > + int (*port_pvid_get)(struct dsa_switch *ds, int port, u16 *pvid); > > > + int (*port_pvid_set)(struct dsa_switch *ds, int port, u16 pvid); > > > + int (*port_vlan_add)(struct dsa_switch *ds, int port, u16 vid, > > > + bool untagged); > > > + int (*port_vlan_del)(struct dsa_switch *ds, int port, u16 vid); > > > @@ -794,6 +949,9 @@ static const struct net_device_ops > > > dsa_slave_netdev_ops = { > > > .ndo_netpoll_cleanup = dsa_slave_netpoll_cleanup, > > > .ndo_poll_controller = dsa_slave_poll_controller, > > > #endif > > > + .ndo_bridge_getlink = switchdev_port_bridge_getlink, > > > + .ndo_bridge_setlink = switchdev_port_bridge_setlink, > > > + .ndo_bridge_dellink = switchdev_port_bridge_dellink, > > > }; > > > > Do these changes belong here? > > Yes, these are used by switchdev to access bridge requests and exchange > SWITCHDEV_OBJ_PORT_VLAN objects with DSA, through the its switchdev_ops.
O.K, so if a v2 is needed, please mention this in the change log. It was not obvious to me. Thanks Andrew -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/