diff options
Diffstat (limited to 'target/linux/generic/files/drivers/net/phy/ar8216.c')
-rw-r--r-- | target/linux/generic/files/drivers/net/phy/ar8216.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/target/linux/generic/files/drivers/net/phy/ar8216.c b/target/linux/generic/files/drivers/net/phy/ar8216.c index 683241cf1c..5ace4e0b15 100644 --- a/target/linux/generic/files/drivers/net/phy/ar8216.c +++ b/target/linux/generic/files/drivers/net/phy/ar8216.c @@ -1204,7 +1204,7 @@ ar8xxx_sw_set_vid(struct switch_dev *dev, const struct switch_attr *attr, { struct ar8xxx_priv *priv = swdev_to_ar8xxx(dev); - if (val->port_vlan >= AR8X16_MAX_VLANS) + if (val->port_vlan >= dev->vlans) return -EINVAL; priv->vlan_id[val->port_vlan] = val->value.i; @@ -1237,7 +1237,7 @@ ar8xxx_sw_get_ports(struct switch_dev *dev, struct switch_val *val) u8 ports; int i; - if (val->port_vlan >= AR8X16_MAX_VLANS) + if (val->port_vlan >= dev->vlans) return -EINVAL; ports = priv->vlan_table[val->port_vlan]; @@ -1277,7 +1277,7 @@ ar8xxx_sw_set_ports(struct switch_dev *dev, struct switch_val *val) /* make sure that an untagged port does not * appear in other vlans */ - for (j = 0; j < AR8X16_MAX_VLANS; j++) { + for (j = 0; j < dev->vlans; j++) { if (j == val->port_vlan) continue; priv->vlan_table[j] &= ~(1 << p->id); @@ -1356,7 +1356,7 @@ ar8xxx_sw_hw_apply(struct switch_dev *dev) if (!priv->init) { /* calculate the port destination masks and load vlans * into the vlan translation unit */ - for (j = 0; j < AR8X16_MAX_VLANS; j++) { + for (j = 0; j < dev->vlans; j++) { u8 vp = priv->vlan_table[j]; if (!vp) @@ -1409,7 +1409,7 @@ ar8xxx_sw_reset_switch(struct switch_dev *dev) memset(&priv->vlan, 0, sizeof(struct ar8xxx_priv) - offsetof(struct ar8xxx_priv, vlan)); - for (i = 0; i < AR8X16_MAX_VLANS; i++) + for (i = 0; i < dev->vlans; i++) priv->vlan_id[i] = i; /* Configure all ports */ |