[PATCH v1 2/6] net: mv88e61xx: Configure PHY ports to also pass packets between them

Marek Vasut marek.vasut at mailbox.org
Thu Jun 1 12:35:40 CEST 2023


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 at denx.de>
> Reviewed-by: Ramon Fried <rfried.dev at 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() ?


More information about the U-Boot mailing list