Subsequent patches will need to access the default port VLAN. Since this
VLAN will exist throughout the lifetime of the port, simply store it in
the port's struct.

Signed-off-by: Ido Schimmel <ido...@mellanox.com>
Reviewed-by: Petr Machata <pe...@mellanox.com>
---
 drivers/net/ethernet/mellanox/mlxsw/spectrum.c | 1 +
 drivers/net/ethernet/mellanox/mlxsw/spectrum.h | 1 +
 2 files changed, 2 insertions(+)

diff --git a/drivers/net/ethernet/mellanox/mlxsw/spectrum.c 
b/drivers/net/ethernet/mellanox/mlxsw/spectrum.c
index ec3eb9a5f170..7d79827f6e04 100644
--- a/drivers/net/ethernet/mellanox/mlxsw/spectrum.c
+++ b/drivers/net/ethernet/mellanox/mlxsw/spectrum.c
@@ -3196,6 +3196,7 @@ static int mlxsw_sp_port_create(struct mlxsw_sp 
*mlxsw_sp, u8 local_port,
                err = PTR_ERR(mlxsw_sp_port_vlan);
                goto err_port_vlan_create;
        }
+       mlxsw_sp_port->default_vlan = mlxsw_sp_port_vlan;
 
        mlxsw_sp_port_switchdev_init(mlxsw_sp_port);
        mlxsw_sp->ports[local_port] = mlxsw_sp_port;
diff --git a/drivers/net/ethernet/mellanox/mlxsw/spectrum.h 
b/drivers/net/ethernet/mellanox/mlxsw/spectrum.h
index a669aed690cb..4e11915d676a 100644
--- a/drivers/net/ethernet/mellanox/mlxsw/spectrum.h
+++ b/drivers/net/ethernet/mellanox/mlxsw/spectrum.h
@@ -242,6 +242,7 @@ struct mlxsw_sp_port {
        } periodic_hw_stats;
        struct mlxsw_sp_port_sample *sample;
        struct list_head vlans_list;
+       struct mlxsw_sp_port_vlan *default_vlan;
        struct mlxsw_sp_qdisc *root_qdisc;
        struct mlxsw_sp_qdisc *tclass_qdiscs;
        unsigned acl_rule_count;
-- 
2.20.0

Reply via email to