mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-25 16:31:13 +00:00
2c0cec1eb0
The backports introduced in commit d40756563c
("kernel: backport
phylink changes from mainline Linux") broke the mv88e6xxx DSA driver.
A backport to fix this was added to the kirkwood target, but as it is
used in multiple targets, and there's a kmod package for it, the fix
should be in generic backports.
This fixes the switch on the WatchGuard Firebox M300 when running the
6.1 testing kernel.
There is no need to backport the fix for the 6.6 kernel, as it was
included in 6.6.5.
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
28 lines
1.1 KiB
Diff
28 lines
1.1 KiB
Diff
From: Tobias Waldekranz <tobias@waldekranz.com>
|
|
Subject: [RFC net-next 7/7] net: dsa: mv88e6xxx: Request assisted learning on CPU port
|
|
Date: Sat, 16 Jan 2021 02:25:15 +0100
|
|
Archived-At: <https://lore.kernel.org/netdev/20210116012515.3152-8-tobias@waldekranz.com/>
|
|
|
|
While the hardware is capable of performing learning on the CPU port,
|
|
it requires alot of additions to the bridge's forwarding path in order
|
|
to handle multi-destination traffic correctly.
|
|
|
|
Until that is in place, opt for the next best thing and let DSA sync
|
|
the relevant addresses down to the hardware FDB.
|
|
|
|
Signed-off-by: Tobias Waldekranz <tobias@waldekranz.com>
|
|
---
|
|
drivers/net/dsa/mv88e6xxx/chip.c | 1 +
|
|
1 file changed, 1 insertion(+)
|
|
|
|
--- a/drivers/net/dsa/mv88e6xxx/chip.c
|
|
+++ b/drivers/net/dsa/mv88e6xxx/chip.c
|
|
@@ -7037,6 +7037,7 @@ static int mv88e6xxx_register_switch(str
|
|
ds->ops = &mv88e6xxx_switch_ops;
|
|
ds->ageing_time_min = chip->info->age_time_coeff;
|
|
ds->ageing_time_max = chip->info->age_time_coeff * U8_MAX;
|
|
+ ds->assisted_learning_on_cpu_port = true;
|
|
|
|
/* Some chips support up to 32, but that requires enabling the
|
|
* 5-bit port mode, which we do not support. 640k^W16 ought to
|