[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