aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/drivers/net/ethernet/mscc/ocelot.h
diff options
context:
space:
mode:
authorVladimir Oltean <vladimir.oltean@nxp.com>2020-10-29 04:27:37 +0200
committerJakub Kicinski <kuba@kernel.org>2020-10-30 18:25:56 -0700
commitbb8d53fd9414480e751ab7a8cf8ae75b12492048 (patch)
tree0b2c7ba360b30bd9d409725f2c517dad8669cade /drivers/net/ethernet/mscc/ocelot.h
parentnet: mscc: ocelot: remove the "new" variable in ocelot_port_mdb_add (diff)
downloadwireguard-linux-bb8d53fd9414480e751ab7a8cf8ae75b12492048.tar.xz
wireguard-linux-bb8d53fd9414480e751ab7a8cf8ae75b12492048.zip
net: mscc: ocelot: make entry_type a member of struct ocelot_multicast
This saves a re-classification of the MDB address on deletion. Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'drivers/net/ethernet/mscc/ocelot.h')
-rw-r--r--drivers/net/ethernet/mscc/ocelot.h17
1 files changed, 9 insertions, 8 deletions
diff --git a/drivers/net/ethernet/mscc/ocelot.h b/drivers/net/ethernet/mscc/ocelot.h
index abb407dff93c..7f8b34c49971 100644
--- a/drivers/net/ethernet/mscc/ocelot.h
+++ b/drivers/net/ethernet/mscc/ocelot.h
@@ -41,14 +41,6 @@ struct frame_info {
u32 timestamp; /* rew_val */
};
-struct ocelot_multicast {
- struct list_head list;
- unsigned char addr[ETH_ALEN];
- u16 vid;
- u16 ports;
- int pgid;
-};
-
struct ocelot_port_tc {
bool block_shared;
unsigned long offload_cnt;
@@ -87,6 +79,15 @@ enum macaccess_entry_type {
ENTRYTYPE_MACv6,
};
+struct ocelot_multicast {
+ struct list_head list;
+ enum macaccess_entry_type entry_type;
+ unsigned char addr[ETH_ALEN];
+ u16 vid;
+ u16 ports;
+ int pgid;
+};
+
int ocelot_port_fdb_do_dump(const unsigned char *addr, u16 vid,
bool is_static, void *data);
int ocelot_mact_learn(struct ocelot *ocelot, int port,