[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAOiHx=nC5f9-2-XPCKBVuVsh93NSrmbSQJp8RqF3EObbEq+OOw@mail.gmail.com>
Date: Sat, 23 Aug 2025 17:27:02 +0200
From: Jonas Gorski <jonas.gorski@...il.com>
To: Andrew Lunn <andrew@...n.ch>
Cc: Florian Fainelli <florian.fainelli@...adcom.com>, Vladimir Oltean <olteanv@...il.com>,
"David S. Miller" <davem@...emloft.net>, Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>, netdev@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH net] net: dsa: b53: fix ageing time for BCM53101
Hi,
On Sat, Aug 23, 2025 at 5:00 PM Andrew Lunn <andrew@...n.ch> wrote:
>
> On Sat, Aug 23, 2025 at 11:06:16AM +0200, Jonas Gorski wrote:
> > For some reason Broadcom decided that BCM53101 uses 0.5s increments for
> > the ageing time register, but kept the field width the same [1]. Due to
> > this, the actual ageing time was always half of what was configured.
> >
> > Fix this by adapting the limits and value calculation for BCM53101.
> >
> > [1] https://github.com/Broadcom-Network-Switching-Software/OpenMDK/blob/master/cdk/PKG/chip/bcm53101/bcm53101_a0_defs.h#L28966
>
> Is line 28966 correct? In order to find a reference to age, i needed
> to search further in the file.
Hm, indeed, it's #30768. Not sure where that original line came from,
maybe I miss-clicked before copying the link in the address bar.
> Are these devices organised in families/generations. Are you sure this
> does not apply to:
>
> BCM53101_DEVICE_ID = 0x53101,
This is the chip for which I am fixing/changing it :)
> BCM53115_DEVICE_ID = 0x53115,
> BCM53125_DEVICE_ID = 0x53125,
> BCM53128_DEVICE_ID = 0x53128,
Yes, pretty sure:
$ grep -l -r "Specifies the aging time in 0.5 seconds" cdk/PKG/chip | sort
cdk/PKG/chip/bcm53101/bcm53101_a0_defs.h
$ grep -l -r "Specifies the aging time in seconds" cdk/PKG/chip | sort
cdk/PKG/chip/bcm53010/bcm53010_a0_defs.h
cdk/PKG/chip/bcm53020/bcm53020_a0_defs.h
cdk/PKG/chip/bcm53084/bcm53084_a0_defs.h
cdk/PKG/chip/bcm53115/bcm53115_a0_defs.h
cdk/PKG/chip/bcm53118/bcm53118_a0_defs.h
cdk/PKG/chip/bcm53125/bcm53125_a0_defs.h
cdk/PKG/chip/bcm53128/bcm53128_a0_defs.h
cdk/PKG/chip/bcm53134/bcm53134_a0_defs.h
cdk/PKG/chip/bcm53242/bcm53242_a0_defs.h
cdk/PKG/chip/bcm53262/bcm53262_a0_defs.h
cdk/PKG/chip/bcm53280/bcm53280_a0_defs.h
cdk/PKG/chip/bcm53280/bcm53280_b0_defs.h
cdk/PKG/chip/bcm53600/bcm53600_a0_defs.h
cdk/PKG/chip/bcm89500/bcm89500_a0_defs.h
This is also what the datasheets say (they sometimes disagree, but not
in this case).
There are a few chips supported by b53 for which I lack
datasheets/descriptions, so they may also have that issue. Mostly the
BCM7* and BCM58* families. Maybe Florian knows more there.
BCM538*/BCM539* are likely not affected, they are older than BCM53101.
Best regards,
Jonas
Powered by blists - more mailing lists