net: dsa/mv88e6352: Add support for MV88E6176
authorGuenter Roeck <linux@roeck-us.net>
Wed, 29 Oct 2014 17:44:57 +0000 (10:44 -0700)
committerDavid S. Miller <davem@davemloft.net>
Thu, 30 Oct 2014 18:54:10 +0000 (14:54 -0400)
MV88E6176 is mostly compatible to MV88E6352 and is documented
in the same functional specification. Add support for it.

Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/dsa/Kconfig
drivers/net/dsa/mv88e6352.c

index 0987c336e517933bb68723ca7a3c8740295a28db..2d1a55e980daab7ae41cda2eda866c7b64ad45aa 100644 (file)
@@ -46,12 +46,13 @@ config NET_DSA_MV88E6171
          chip.
 
 config NET_DSA_MV88E6352
-       tristate "Marvell 88E6352 ethernet switch chip support"
+       tristate "Marvell 88E6176/88E6352 ethernet switch chip support"
        select NET_DSA
        select NET_DSA_MV88E6XXX
        select NET_DSA_TAG_EDSA
        ---help---
-         This enables support for the Marvell 88E6352 ethernet switch chip.
+         This enables support for the Marvell 88E6176 and 88E6352 ethernet
+         switch chips.
 
 config NET_DSA_BCM_SF2
        tristate "Broadcom Starfighter 2 Ethernet switch support"
index 43a58262a03d20f2909a8a94fbdfea2745d79b78..f17364ff8f3fa04bf3ef67d05105b6355e5d80e5 100644 (file)
@@ -73,6 +73,8 @@ static char *mv88e6352_probe(struct device *host_dev, int sw_addr)
 
        ret = __mv88e6xxx_reg_read(bus, sw_addr, REG_PORT(0), 0x03);
        if (ret >= 0) {
+               if ((ret & 0xfff0) == 0x1760)
+                       return "Marvell 88E6176";
                if (ret == 0x3521)
                        return "Marvell 88E6352 (A0)";
                if (ret == 0x3522)