[PATCH net v5 4/6] net: dsa: mt7530: fix handling of LLDP frames

Arınç ÜNAL arinc.unal at arinc9.com
Thu Jun 15 23:21:40 PDT 2023


On 16 June 2023 08:44:32 GMT+03:00, Frank Wunderlich <frank-w at public-files.de> wrote:
>Am 16. Juni 2023 04:53:25 MESZ schrieb arinc9.unal at gmail.com:
>>From: Arınç ÜNAL <arinc.unal at arinc9.com>
>>
>>LLDP frames are link-local frames, therefore they must be trapped to the
>>CPU port. Currently, the MT753X switches treat LLDP frames as regular
>>multicast frames, therefore flooding them to user ports. To fix this, set
>>LLDP frames to be trapped to the CPU port(s).
>>
>>Fixes: b8f126a8d543 ("net-next: dsa: add dsa support for Mediatek MT7530 switch")
>>Signed-off-by: Arınç ÜNAL <arinc.unal at arinc9.com>
>>---
>> drivers/net/dsa/mt7530.c | 8 ++++++++
>> drivers/net/dsa/mt7530.h | 5 +++++
>> 2 files changed, 13 insertions(+)
>>
>>diff --git a/drivers/net/dsa/mt7530.c b/drivers/net/dsa/mt7530.c
>>index 7b72cf3a0e30..c85876fd9107 100644
>>--- a/drivers/net/dsa/mt7530.c
>>+++ b/drivers/net/dsa/mt7530.c
>>@@ -2266,6 +2266,10 @@ mt7530_setup(struct dsa_switch *ds)
>> 	mt7530_rmw(priv, MT753X_BPC, MT753X_BPDU_PORT_FW_MASK,
>> 		   MT753X_BPDU_CPU_ONLY);
>> 
>>+	/* Trap LLDP frames with :0E MAC DA to the CPU port */
>>+	mt7530_rmw(priv, MT753X_RGAC2, MT753X_R0E_PORT_FW_MASK,
>>+		   MT753X_R0E_PORT_FW(MT753X_BPDU_CPU_ONLY));
>>+
>> 	/* Enable and reset MIB counters */
>> 	mt7530_mib_reset(ds);
>> 
>>@@ -2369,6 +2373,10 @@ mt7531_setup_common(struct dsa_switch *ds)
>> 	mt7530_rmw(priv, MT753X_BPC, MT753X_BPDU_PORT_FW_MASK,
>> 		   MT753X_BPDU_CPU_ONLY);
>> 
>>+	/* Trap LLDP frames with :0E MAC DA to the CPU port(s) */
>>+	mt7530_rmw(priv, MT753X_RGAC2, MT753X_R0E_PORT_FW_MASK,
>>+		   MT753X_R0E_PORT_FW(MT753X_BPDU_CPU_ONLY));
>>+
>> 	/* Enable and reset MIB counters */
>> 	mt7530_mib_reset(ds);
>> 
>
>
>I though these 2 hunks should go into some common function

Like I said, I will do that on my net-next patch series.

Arınç



More information about the Linux-mediatek mailing list