Refreshed automatically with `make target/linux/refresh V=s`. Signed-off-by: Kenneth Kasilag <kenneth@kasilag.me> Link: https://github.com/openwrt/openwrt/pull/21019 Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
65 lines
2.4 KiB
Diff
65 lines
2.4 KiB
Diff
From 360d745a5319f09849a94dee0974c8ead721e392 Mon Sep 17 00:00:00 2001
|
|
From: Lorenzo Bianconi <lorenzo@kernel.org>
|
|
Date: Sun, 12 Apr 2026 19:13:12 +0200
|
|
Subject: [PATCH 1/4] net: airoha: Rely on net_device pointer in
|
|
airoha_dev_setup_tc_block signature
|
|
|
|
Remove airoha_gdm_port dependency in airoha_dev_setup_tc_block routine
|
|
signature and rely on net_device pointer instead. Please note this patch
|
|
does not introduce any logical change and it is a preliminary patch to
|
|
support multiple net_devices connected to the GDM3 or GDM4 ports via an
|
|
external hw arbiter.
|
|
|
|
Tested-by: Xuegang Lu <xuegang.lu@airoha.com>
|
|
Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
|
|
Link: https://patch.msgid.link/20260412-airoha-multi-serdes-preliminary-patch-v1-1-08d5b670ca8f@kernel.org
|
|
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|
---
|
|
drivers/net/ethernet/airoha/airoha_eth.c | 10 +++++-----
|
|
1 file changed, 5 insertions(+), 5 deletions(-)
|
|
|
|
--- a/drivers/net/ethernet/airoha/airoha_eth.c
|
|
+++ b/drivers/net/ethernet/airoha/airoha_eth.c
|
|
@@ -2752,7 +2752,7 @@ static int airoha_dev_setup_tc_block_cb(
|
|
}
|
|
}
|
|
|
|
-static int airoha_dev_setup_tc_block(struct airoha_gdm_port *port,
|
|
+static int airoha_dev_setup_tc_block(struct net_device *dev,
|
|
struct flow_block_offload *f)
|
|
{
|
|
flow_setup_cb_t *cb = airoha_dev_setup_tc_block_cb;
|
|
@@ -2765,12 +2765,12 @@ static int airoha_dev_setup_tc_block(str
|
|
f->driver_block_list = &block_cb_list;
|
|
switch (f->command) {
|
|
case FLOW_BLOCK_BIND:
|
|
- block_cb = flow_block_cb_lookup(f->block, cb, port->dev);
|
|
+ block_cb = flow_block_cb_lookup(f->block, cb, dev);
|
|
if (block_cb) {
|
|
flow_block_cb_incref(block_cb);
|
|
return 0;
|
|
}
|
|
- block_cb = flow_block_cb_alloc(cb, port->dev, port->dev, NULL);
|
|
+ block_cb = flow_block_cb_alloc(cb, dev, dev, NULL);
|
|
if (IS_ERR(block_cb))
|
|
return PTR_ERR(block_cb);
|
|
|
|
@@ -2779,7 +2779,7 @@ static int airoha_dev_setup_tc_block(str
|
|
list_add_tail(&block_cb->driver_list, &block_cb_list);
|
|
return 0;
|
|
case FLOW_BLOCK_UNBIND:
|
|
- block_cb = flow_block_cb_lookup(f->block, cb, port->dev);
|
|
+ block_cb = flow_block_cb_lookup(f->block, cb, dev);
|
|
if (!block_cb)
|
|
return -ENOENT;
|
|
|
|
@@ -2878,7 +2878,7 @@ static int airoha_dev_tc_setup(struct ne
|
|
return airoha_tc_setup_qdisc_htb(port, type_data);
|
|
case TC_SETUP_BLOCK:
|
|
case TC_SETUP_FT:
|
|
- return airoha_dev_setup_tc_block(port, type_data);
|
|
+ return airoha_dev_setup_tc_block(dev, type_data);
|
|
default:
|
|
return -EOPNOTSUPP;
|
|
}
|