aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/dsa
diff options
context:
space:
mode:
authorJamie Lentin <jm@lentin.co.uk>2016-08-22 10:01:04 -0400
committerDavid S. Miller <davem@davemloft.net>2016-08-23 00:08:08 -0400
commitf027e0cc8255a8af8197835f2f44910dc63e2fa5 (patch)
tree70311be3e51976320ada27f2bef73c667ff76d90 /drivers/net/dsa
parent930188ceca5fb2f755d4b900a92a6c295f43a434 (diff)
net: mv88e6xxx: Enable PORT_CONTROL_FORWARD_UNKNOWN for DSA-tagged CPU ports
Without it, a mv88e6131 switch will not forward incoming unicast packets to the CPU port. Signed-off-by: Jamie Lentin <jm@lentin.co.uk> Reviewed-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/dsa')
-rw-r--r--drivers/net/dsa/mv88e6xxx/chip.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/dsa/mv88e6xxx/chip.c b/drivers/net/dsa/mv88e6xxx/chip.c
index 1d5f9576e62a..82d45165803c 100644
--- a/drivers/net/dsa/mv88e6xxx/chip.c
+++ b/drivers/net/dsa/mv88e6xxx/chip.c
@@ -2490,11 +2490,11 @@ static int mv88e6xxx_setup_port(struct mv88e6xxx_chip *chip, int port)
2490 if (dsa_is_cpu_port(ds, port)) { 2490 if (dsa_is_cpu_port(ds, port)) {
2491 if (mv88e6xxx_has(chip, MV88E6XXX_FLAG_EDSA)) 2491 if (mv88e6xxx_has(chip, MV88E6XXX_FLAG_EDSA))
2492 reg |= PORT_CONTROL_FRAME_ETHER_TYPE_DSA | 2492 reg |= PORT_CONTROL_FRAME_ETHER_TYPE_DSA |
2493 PORT_CONTROL_FORWARD_UNKNOWN |
2494 PORT_CONTROL_FORWARD_UNKNOWN_MC; 2493 PORT_CONTROL_FORWARD_UNKNOWN_MC;
2495 else 2494 else
2496 reg |= PORT_CONTROL_DSA_TAG; 2495 reg |= PORT_CONTROL_DSA_TAG;
2497 reg |= PORT_CONTROL_EGRESS_ADD_TAG; 2496 reg |= PORT_CONTROL_EGRESS_ADD_TAG |
2497 PORT_CONTROL_FORWARD_UNKNOWN;
2498 } 2498 }
2499 if (dsa_is_dsa_port(ds, port)) { 2499 if (dsa_is_dsa_port(ds, port)) {
2500 if (mv88e6xxx_6095_family(chip) || 2500 if (mv88e6xxx_6095_family(chip) ||