diff options
| author | Lorenzo Bianconi <lorenzo@kernel.org> | 2025-11-13 18:19:38 +0100 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2025-12-01 11:45:55 +0100 |
| commit | f0e2a04f0fd09c938596fd2fa68248a7be77c38e (patch) | |
| tree | bb9d7943f31418fe92e7d8e17a3ae9c455f0360d /drivers/net | |
| parent | 0243034486355d0694a75042c68c852b1e373ae4 (diff) | |
| download | linux-f0e2a04f0fd09c938596fd2fa68248a7be77c38e.tar.gz linux-f0e2a04f0fd09c938596fd2fa68248a7be77c38e.tar.bz2 linux-f0e2a04f0fd09c938596fd2fa68248a7be77c38e.zip | |
net: airoha: Do not loopback traffic to GDM2 if it is available on the device
[ Upstream commit 8e0a754b0836d996802713bbebc87bc1cc17925c ]
Airoha_eth driver forwards offloaded uplink traffic (packets received
on GDM1 and forwarded to GDM{3,4}) to GDM2 in order to apply hw QoS.
This is correct if the device does not support a dedicated GDM2 port.
In this case, in order to enable hw offloading for uplink traffic,
the packets should be sent to GDM{3,4} directly.
Fixes: 9cd451d414f6 ("net: airoha: Add loopback support for GDM2")
Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Link: https://patch.msgid.link/20251113-airoha-hw-offload-gdm2-fix-v1-1-7e4ca300872f@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'drivers/net')
| -rw-r--r-- | drivers/net/ethernet/airoha/airoha_ppe.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/ethernet/airoha/airoha_ppe.c b/drivers/net/ethernet/airoha/airoha_ppe.c index 62e46a8d7e3c..20e77cdb86d0 100644 --- a/drivers/net/ethernet/airoha/airoha_ppe.c +++ b/drivers/net/ethernet/airoha/airoha_ppe.c @@ -281,7 +281,7 @@ static int airoha_ppe_foe_entry_prepare(struct airoha_eth *eth, if (!airoha_is_valid_gdm_port(eth, port)) return -EINVAL; - if (dsa_port >= 0) + if (dsa_port >= 0 || eth->ports[1]) pse_port = port->id == 4 ? FE_PSE_PORT_GDM4 : port->id; else |
