linux-stable/net/dsa
Vladimir Oltean 9f5548e421 net: dsa: tag_sja1105: fix MAC DA patching from meta frames
[ Upstream commit 1dcf6efd5f ]

The SJA1105 manual says that at offset 4 into the meta frame payload we
have "MAC destination byte 2" and at offset 5 we have "MAC destination
byte 1". These are counted from the LSB, so byte 1 is h_dest[ETH_HLEN-2]
aka h_dest[4] and byte 2 is h_dest[ETH_HLEN-3] aka h_dest[3].

The sja1105_meta_unpack() function decodes these the other way around,
so a frame with MAC DA 01:80:c2:11:22:33 is received by the network
stack as having 01:80:c2:22:11:33.

Fixes: e53e18a6fe ("net: dsa: sja1105: Receive and decode meta frames")
Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Reviewed-by: Simon Horman <simon.horman@corigine.com>
Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-07-27 08:44:10 +02:00
..
dsa.c net: dsa: Add devlink port regions support to DSA 2020-10-04 14:38:53 -07:00
dsa2.c net: dsa: Add missing of_node_put() in dsa_port_parse_of 2022-03-23 09:13:28 +01:00
dsa_priv.h net: dsa: Utilize __vlan_find_dev_deep_rcu() 2020-10-02 13:36:07 -07:00
Kconfig net: dsa: tag_rtl4_a: Implement Realtek 4 byte A tag 2020-07-08 15:36:19 -07:00
Makefile net: dsa: tag_rtl4_a: Implement Realtek 4 byte A tag 2020-07-08 15:36:19 -07:00
master.c net: dsa: fix a crash if ->get_sset_count() fails 2021-06-03 09:00:38 +02:00
port.c net: dsa: Add missing of_node_put() in dsa_port_link_register_of 2022-05-09 09:05:02 +02:00
slave.c net: dsa: destroy the phylink instance on any error in dsa_slave_phy_setup 2021-09-22 12:27:58 +02:00
switch.c net: dsa: properly check for the bridge_leave methods in dsa_switch_bridge_leave() 2021-07-25 14:36:20 +02:00
tag_8021q.c net: dsa: tag_8021q: fix the VLAN IDs used for encoding sub-VLANs 2021-06-10 13:39:17 +02:00
tag_ar9331.c net: dsa: tag_ar9331: let DSA core deal with TX reallocation 2021-03-17 17:06:22 +01:00
tag_brcm.c net: dsa: tag_brcm: let DSA core deal with TX reallocation 2021-03-17 17:06:21 +01:00
tag_dsa.c net: dsa: tag_dsa: let DSA core deal with TX reallocation 2021-03-17 17:06:21 +01:00
tag_edsa.c net: dsa: tag_edsa: let DSA core deal with TX reallocation 2021-03-17 17:06:21 +01:00
tag_gswip.c net: dsa: tag_gswip: let DSA core deal with TX reallocation 2021-03-17 17:06:22 +01:00
tag_ksz.c net: dsa: ksz: Check return value 2022-12-14 11:32:01 +01:00
tag_lan9303.c net: dsa: tag_lan9303: let DSA core deal with TX reallocation 2021-03-17 17:06:21 +01:00
tag_mtk.c net: dsa: tag_mtk: fix 802.1ad VLAN egress 2021-03-17 17:06:22 +01:00
tag_ocelot.c net: dsa: tag_ocelot: let DSA core deal with TX reallocation 2021-03-17 17:06:21 +01:00
tag_qca.c net: dsa: tag_qca: let DSA core deal with TX reallocation 2021-03-17 17:06:21 +01:00
tag_rtl4_a.c net: dsa: tag_rtl4_a: Fix egress tags 2021-09-22 12:28:04 +02:00
tag_sja1105.c net: dsa: tag_sja1105: fix MAC DA patching from meta frames 2023-07-27 08:44:10 +02:00
tag_trailer.c net: dsa: trailer: don't allocate additional memory for padding/tagging 2021-03-17 17:06:21 +01:00