net: dsa: mv88e6xxx: provide a PHY setup helper
authorVivien Didelot <vivien.didelot@savoirfairelinux.com>
Fri, 26 May 2017 22:03:05 +0000 (18:03 -0400)
committerDavid S. Miller <davem@davemloft.net>
Wed, 31 May 2017 16:34:59 +0000 (12:34 -0400)
Similarly to the VTU, PVT and ATU setup, provide a mv88e6xxx_phy_setup
helper which wraps mv88e6xxx_ppu_enable, so that no more PPU-related
functions are exposed outside of phy.c.

Thus make mv88e6xxx_ppu_enable static.

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

index 742c0eae7fa3802d776e0f3a2f14dd2d8c5d8ce2..7f5f44f8938983ea052326b4aee482457df1acad 100644 (file)
@@ -2034,13 +2034,6 @@ static int mv88e6xxx_g1_setup(struct mv88e6xxx_chip *chip)
        u32 upstream_port = dsa_upstream_port(ds);
        int err;
 
-       /* Enable the PHY Polling Unit if present, don't discard any packets,
-        * and mask all interrupt sources.
-        */
-       err = mv88e6xxx_ppu_enable(chip);
-       if (err)
-               return err;
-
        if (chip->info->ops->g1_set_cpu_port) {
                err = chip->info->ops->g1_set_cpu_port(chip, upstream_port);
                if (err)
@@ -2140,6 +2133,10 @@ static int mv88e6xxx_setup(struct dsa_switch *ds)
                        goto unlock;
        }
 
+       err = mv88e6xxx_phy_setup(chip);
+       if (err)
+               goto unlock;
+
        err = mv88e6xxx_vtu_setup(chip);
        if (err)
                goto unlock;
index 0d3e8aaedf506eaad01813103e81419ac0dc1a77..b865b1e2b103441233b5bda688275023ff613b90 100644 (file)
@@ -124,7 +124,7 @@ static int mv88e6xxx_ppu_disable(struct mv88e6xxx_chip *chip)
        return chip->info->ops->ppu_disable(chip);
 }
 
-int mv88e6xxx_ppu_enable(struct mv88e6xxx_chip *chip)
+static int mv88e6xxx_ppu_enable(struct mv88e6xxx_chip *chip)
 {
        if (!chip->info->ops->ppu_enable)
                return 0;
@@ -241,3 +241,8 @@ void mv88e6xxx_phy_destroy(struct mv88e6xxx_chip *chip)
        if (chip->info->ops->ppu_enable && chip->info->ops->ppu_disable)
                mv88e6xxx_ppu_state_destroy(chip);
 }
+
+int mv88e6xxx_phy_setup(struct mv88e6xxx_chip *chip)
+{
+       return mv88e6xxx_ppu_enable(chip);
+}
index 0961d781b72665ebb13cd4e620a790efda9b6e1a..dfa98549dfcd890db27b0baccb376c90f4bceb60 100644 (file)
@@ -30,8 +30,8 @@ int mv88e6xxx_phy_ppu_read(struct mv88e6xxx_chip *chip, struct mii_bus *bus,
                           int addr, int reg, u16 *val);
 int mv88e6xxx_phy_ppu_write(struct mv88e6xxx_chip *chip, struct mii_bus *bus,
                            int addr, int reg, u16 val);
-int mv88e6xxx_ppu_enable(struct mv88e6xxx_chip *chip);
 void mv88e6xxx_phy_init(struct mv88e6xxx_chip *chip);
 void mv88e6xxx_phy_destroy(struct mv88e6xxx_chip *chip);
+int mv88e6xxx_phy_setup(struct mv88e6xxx_chip *chip);
 
 #endif /*_MV88E6XXX_PHY_H */