
On 6/1/23 12:00, Lukasz Majewski wrote:
After this change PHY ports are able to pass packets between them (and also to CPU port).
The Kconfig variable - CONFIG_MV88E61XX_PHY_PORTS - is used to get the PHY ports of the switch and generate proper mask.
Signed-off-by: Lukasz Majewski lukma@denx.de Reviewed-by: Ramon Fried rfried.dev@gmail.com
Was there a V0 before ? Or where did these RB tags come from ?
drivers/net/phy/mv88e61xx.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/drivers/net/phy/mv88e61xx.c b/drivers/net/phy/mv88e61xx.c index 31f9b57456d6..4aee83551beb 100644 --- a/drivers/net/phy/mv88e61xx.c +++ b/drivers/net/phy/mv88e61xx.c @@ -865,14 +865,19 @@ static int mv88e61xx_phy_setup(struct phy_device *phydev, u8 phy)
static int mv88e61xx_phy_config_port(struct phy_device *phydev, u8 phy) {
struct mv88e61xx_phy_priv *priv = phydev->priv;
u16 port_mask; int val;
val = mv88e61xx_port_enable(phydev, phy); if (val < 0) return val;
- val = mv88e61xx_port_set_vlan(phydev, phy,
1 << CONFIG_MV88E61XX_CPU_PORT);
- port_mask = PORT_MASK(priv->port_count) & CONFIG_MV88E61XX_PHY_PORTS;
- port_mask &= ~(1 << phy);
- port_mask |= (1 << CONFIG_MV88E61XX_CPU_PORT);
BIT() ?