lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <507a09f6-8b6e-4800-8c90-f2b1662cafa2@broadcom.com>
Date: Tue, 3 Jun 2025 15:10:04 -0700
From: Florian Fainelli <florian.fainelli@...adcom.com>
To: Álvaro Fernández Rojas <noltari@...il.com>,
 jonas.gorski@...il.com, florian.fainelli@...adcom.com, andrew@...n.ch,
 olteanv@...il.com, davem@...emloft.net, edumazet@...gle.com,
 kuba@...nel.org, pabeni@...hat.com, vivien.didelot@...il.com,
 netdev@...r.kernel.org, linux-kernel@...r.kernel.org, dgcbueu@...il.com
Subject: Re: [RFC PATCH net-next v2 01/10] net: dsa: b53: add support for FDB
 operations on 5325/5365

On 6/3/25 13:48, Álvaro Fernández Rojas wrote:
> From: Florian Fainelli <f.fainelli@...il.com>
> 
> BCM5325 and BCM5365 are part of a much older generation of switches which,
> due to their limited number of ports and VLAN entries (up to 256) allowed
> a single 64-bit register to hold a full ARL entry.
> This requires a little bit of massaging when reading, writing and
> converting ARL entries in both directions.
> 
> Signed-off-by: Florian Fainelli <f.fainelli@...il.com>
> Signed-off-by: Álvaro Fernández Rojas <noltari@...il.com>
> ---

[snip]

>   static int b53_arl_op(struct b53_device *dev, int op, int port,
>   		      const unsigned char *addr, u16 vid, bool is_valid)
>   {
> @@ -1795,14 +1834,18 @@ static int b53_arl_op(struct b53_device *dev, int op, int port,
>   
>   	/* Perform a read for the given MAC and VID */
>   	b53_write48(dev, B53_ARLIO_PAGE, B53_MAC_ADDR_IDX, mac);
> -	b53_write16(dev, B53_ARLIO_PAGE, B53_VLAN_ID_IDX, vid);
> +	if (!is5325(dev))
> +		b53_write16(dev, B53_ARLIO_PAGE, B53_VLAN_ID_IDX, vid);

I used the 5325M-DS113-RDS datasheet for this code initially but the 
5325E-DS14-R datasheet shows that this register is defined. It's not 
clear to me how to differentiate the two kinds of switches. The 5325M 
would report itself as:

0x00406330

in the integrated PHY PHYSID1/2 registers, whereas a 5325E would report 
itself as 0x0143bc30. Maybe we can use that to key off the very first 
generation 5325 switches?
-- 
Florian


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ