diff options
author | Vivien Didelot <vivien.didelot@savoirfairelinux.com> | 2015-08-06 01:44:04 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-08-09 22:48:09 -0700 |
commit | 55045ddded0f39d84c2ca019508973be8c595a78 (patch) | |
tree | 54dbc997258825838c981688ff66f113499138de /include/net/dsa.h | |
parent | 890248261a18c7ae22923095dfadea2c0a2a304a (diff) | |
download | linux-55045ddded0f39d84c2ca019508973be8c595a78.tar.gz linux-55045ddded0f39d84c2ca019508973be8c595a78.tar.bz2 linux-55045ddded0f39d84c2ca019508973be8c595a78.zip |
net: dsa: add support for switchdev FDB objects
Remove the fdb_{add,del,getnext} function pointer in favor of new
port_fdb_{add,del,getnext}.
Implement the switchdev_port_obj_{add,del,dump} functions in DSA to
support the SWITCHDEV_OBJ_PORT_FDB objects.
Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/dsa.h')
-rw-r--r-- | include/net/dsa.h | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/include/net/dsa.h b/include/net/dsa.h index fbca63ba8f73..091d35f77180 100644 --- a/include/net/dsa.h +++ b/include/net/dsa.h @@ -296,12 +296,16 @@ struct dsa_switch_driver { u32 br_port_mask); int (*port_stp_update)(struct dsa_switch *ds, int port, u8 state); - int (*fdb_add)(struct dsa_switch *ds, int port, - const unsigned char *addr, u16 vid); - int (*fdb_del)(struct dsa_switch *ds, int port, - const unsigned char *addr, u16 vid); - int (*fdb_getnext)(struct dsa_switch *ds, int port, - unsigned char *addr, bool *is_static); + + /* + * Forwarding database + */ + int (*port_fdb_add)(struct dsa_switch *ds, int port, u16 vid, + const u8 addr[ETH_ALEN]); + int (*port_fdb_del)(struct dsa_switch *ds, int port, u16 vid, + const u8 addr[ETH_ALEN]); + int (*port_fdb_getnext)(struct dsa_switch *ds, int port, u16 *vid, + u8 addr[ETH_ALEN], bool *is_static); }; void register_switch_driver(struct dsa_switch_driver *type); |