Thread (33 messages) flat view 33 messages, 4 authors, 2025-06-03

Re: [RFC PATCH 09/10] net: dsa: b53: fix b53_imp_vlan_setup for BCM5325

From: Álvaro Fernández Rojas <hidden>
Date: 2025-06-03 10:12:37
Also in: lkml

Hi Florian,

El lun, 2 jun 2025 a las 20:11, Florian Fainelli
([off-list ref]) escribió:
On 5/31/25 03:13, Álvaro Fernández Rojas wrote:
quoted
CPU port should be B53_CPU_PORT instead of B53_CPU_PORT_25 for
B53_PVLAN_PORT_MASK register.

Fixes: ff39c2d68679 ("net: dsa: b53: Add bridge support")
Signed-off-by: Álvaro Fernández Rojas <redacted>
---
  drivers/net/dsa/b53/b53_common.c | 4 ++++
  1 file changed, 4 insertions(+)
diff --git a/drivers/net/dsa/b53/b53_common.c b/drivers/net/dsa/b53/b53_common.c
index d5216ea2c984..802020eaea44 100644
--- a/drivers/net/dsa/b53/b53_common.c
+++ b/drivers/net/dsa/b53/b53_common.c
@@ -543,6 +543,10 @@ void b53_imp_vlan_setup(struct dsa_switch *ds, int cpu_port)
      unsigned int i;
      u16 pvlan;

+     /* BCM5325 CPU port is at 8 */
+     if ((is5325(dev) || is5365(dev)) && cpu_port == B53_CPU_PORT_25)
+             cpu_port = B53_CPU_PORT;
Don't we get to that point only if we have invalid Device Tree settings?
In which case wouldn't a WARN_ON() be more adequate?
I just copied the same code that's already present on b53_enable_cpu_port:
https://github.com/torvalds/linux/blob/master/drivers/net/dsa/b53/b53_common.c#L753-L755

I believe that the correct configuration should have the CPU port at
#5, but certain registers expect it at #8:
https://github.com/openwrt/openwrt/blob/cc5421128e44effd5df05227cec4d4c5d05be8dc/target/linux/bmips/dts/bcm6358-huawei-hg556a-b.dts#L155-L204
--
Florian
Best regards,
Álvaro.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help