net: dsa: mv88e6xxx: map destination addresses for 6185
authorVivien Didelot <vivien.didelot@savoirfairelinux.com>
Thu, 31 Mar 2016 20:53:45 +0000 (16:53 -0400)
committerDavid S. Miller <davem@davemloft.net>
Tue, 5 Apr 2016 01:31:35 +0000 (21:31 -0400)
The 88E6185 switch also has a MapDA bit in its Port Control 2 register.
When this bit is cleared, all frames are sent out to the CPU port.

Set this bit to rely on address databases (ATU) hits and direct frames
out of the correct ports, and thus allow hardware bridging.

Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/dsa/mv88e6xxx.c

index 75a4abc..0dda281 100644 (file)
@@ -2523,7 +2523,8 @@ static int mv88e6xxx_setup_port(struct dsa_switch *ds, int port)
        reg = 0;
        if (mv88e6xxx_6352_family(ds) || mv88e6xxx_6351_family(ds) ||
            mv88e6xxx_6165_family(ds) || mv88e6xxx_6097_family(ds) ||
-           mv88e6xxx_6095_family(ds) || mv88e6xxx_6320_family(ds))
+           mv88e6xxx_6095_family(ds) || mv88e6xxx_6320_family(ds) ||
+           mv88e6xxx_6185_family(ds))
                reg = PORT_CONTROL_2_MAP_DA;
 
        if (mv88e6xxx_6352_family(ds) || mv88e6xxx_6351_family(ds) ||