[PATCH] realtek: Trap all frames with switch as destination to CPU-port
Sander Vanheule
sander at svanheule.net
Mon Apr 25 11:40:59 PDT 2022
Hi Birger,
On Sun, 2022-04-24 at 20:37 +0200, Birger Koblitz wrote:
> This fixes a bug where frames sent to the switch itself were
> flooded to all ports unless the MAC address of the CPU-port
> was learned otherwise.
>
> Tested-by: Wenli Looi <wlooi at ucalgary.ca>
> Tested-by: Bjørn Mork <bjorn at mork.no>
> Signed-off-by: Birger Koblitz <git at birger-koblitz.de>
> ---
> This was previously sent as a patch with a wrong subject
> "[PATCH] realtek: do not reset SerDes on link change"
>
> .../linux/realtek/files-5.10/drivers/net/dsa/rtl83xx/dsa.c | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/target/linux/realtek/files-5.10/drivers/net/dsa/rtl83xx/dsa.c
> b/target/linux/realtek/files-5.10/drivers/net/dsa/rtl83xx/dsa.c
> index 4780632983..858b692640 100644
> --- a/target/linux/realtek/files-5.10/drivers/net/dsa/rtl83xx/dsa.c
> +++ b/target/linux/realtek/files-5.10/drivers/net/dsa/rtl83xx/dsa.c
> @@ -205,6 +205,12 @@ static int rtl83xx_setup(struct dsa_switch *ds)
>
> priv->r->l2_learning_setup();
>
> + // Make sure all frames sent to the switch's MAC are trapped to the CPU-port
> + if (priv->family_id == RTL8380_FAMILY_ID)
> + sw_w32(0x2, RTL838X_SPCL_TRAP_SWITCH_MAC_CTRL); // 0: FWD, 1: DROP, 2:
> TRAP2CPU
> + else
> + sw_w32(0x2, RTL839X_SPCL_TRAP_SWITCH_MAC_CTRL);
> +
> /* Enable MAC Polling PHY again */
> rtl83xx_enable_phy_polling(priv);
> pr_debug("Please wait until PHY is settled\n");
checkpatch.pl has some complaints:
WARNING: suspect code indent for conditional statements (8, 12)
#142: FILE: target/linux/realtek/files-5.10/drivers/net/dsa/rtl83xx/dsa.c:209:
+ if (priv->family_id == RTL8380_FAMILY_ID)
+ sw_w32(0x2, RTL838X_SPCL_TRAP_SWITCH_MAC_CTRL); // 0: FWD, 1: DROP, 2: TRAP2CPU
WARNING: suspect code indent for conditional statements (8, 12)
#144: FILE: target/linux/realtek/files-5.10/drivers/net/dsa/rtl83xx/dsa.c:211:
+ else
+ sw_w32(0x2, RTL839X_SPCL_TRAP_SWITCH_MAC_CTRL);
WARNING: Missing Signed-off-by: line by nominal patch author 'Birger Koblitz <mail at birger-koblitz.de>'
total: 0 errors, 3 warnings, 12 lines checked
Please indent with tabs, but you can ignore the third warning.
Best,
Sander
More information about the openwrt-devel
mailing list