diff options
| author | Lorenzo Bianconi | 2025-10-24 15:10:08 +0000 |
|---|---|---|
| committer | Christian Marangi | 2026-05-14 18:34:46 +0000 |
| commit | ecb7f66949bc9c52f5dc506c58f49d9c358add7f (patch) | |
| tree | 495bbdb0bb08f1ccde69c1e37bce2c4af91770da | |
| parent | 0c77a7d8dd1bdec2e7c1158eadd36ab2743aa227 (diff) | |
| download | openwrt-ecb7f66949bc9c52f5dc506c58f49d9c358add7f.tar.gz | |
airoha: npu: Init BA memory region if provided via DTS
Initialize NPU Block Ack memory region if reserved via DTS.
Block Ack memory region is used by NPU MT7996 (Eagle) offloading.
Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Link: https://github.com/openwrt/openwrt/pull/22289
(cherry picked from commit 305f685f83fc1332102273cb09bb386ff1561d94)
[ fix conflict error ]
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
3 files changed, 40 insertions, 3 deletions
diff --git a/target/linux/airoha/dts/an7581.dtsi b/target/linux/airoha/dts/an7581.dtsi index ecbbc0845d..2ca192d32d 100644 --- a/target/linux/airoha/dts/an7581.dtsi +++ b/target/linux/airoha/dts/an7581.dtsi @@ -54,6 +54,11 @@ no-map; reg = <0x0 0x90c00000 0x0 0x6800>; }; + + npu_ba: npu-ba@90c06800 { + no-map; + reg = <0x0 0x90c06800 0x0 0x200000>; + }; }; psci { @@ -833,9 +838,9 @@ <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>; memory-region = <&npu_binary>, <&npu_pkt>, <&npu_txpkt>, - <&npu_txbufid>; + <&npu_txbufid>, <&npu_ba>; memory-region-names = "binary", "pkt", "tx-pkt", - "tx-bufid"; + "tx-bufid", "ba"; status = "disabled"; }; diff --git a/target/linux/airoha/patches-6.6/910-01-v7.0-net-airoha-npu-Init-BA-memory-region-if.patch b/target/linux/airoha/patches-6.6/910-01-v7.0-net-airoha-npu-Init-BA-memory-region-if.patch new file mode 100644 index 0000000000..9283e18de6 --- /dev/null +++ b/target/linux/airoha/patches-6.6/910-01-v7.0-net-airoha-npu-Init-BA-memory-region-if.patch @@ -0,0 +1,32 @@ +From 875a59c9a9e584d99d8e9e5aa8435ec9300bfe91 Mon Sep 17 00:00:00 2001 +From: Lorenzo Bianconi <lorenzo@kernel.org> +Date: Thu, 8 Jan 2026 16:05:08 +0100 +Subject: [PATCH] net: airoha: npu: Init BA memory region if provided via DTS + +Initialize NPU Block Ack memory region if reserved via DTS. +Block Ack memory region is used by NPU MT7996 (Eagle) offloading. + +Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> +Link: https://patch.msgid.link/20260108-airoha-ba-memory-region-v3-2-bf1814e5dcc4@kernel.org +Signed-off-by: Jakub Kicinski <kuba@kernel.org> +--- + drivers/net/ethernet/airoha/airoha_npu.c | 8 ++++++++ + 1 file changed, 8 insertions(+) + +--- a/drivers/net/ethernet/airoha/airoha_npu.c ++++ b/drivers/net/ethernet/airoha/airoha_npu.c +@@ -519,6 +519,14 @@ static int airoha_npu_wlan_init_memory(s + if (err) + return err; + ++ if (of_property_match_string(npu->dev->of_node, "memory-region-names", ++ "ba") >= 0) { ++ cmd = WLAN_FUNC_SET_WAIT_DRAM_BA_NODE_ADDR; ++ err = airoha_npu_wlan_set_reserved_memory(npu, 0, "ba", cmd); ++ if (err) ++ return err; ++ } ++ + cmd = WLAN_FUNC_SET_WAIT_IS_FORCE_TO_CPU; + return airoha_npu_wlan_msg_send(npu, 0, cmd, &val, sizeof(val), + GFP_KERNEL); diff --git a/target/linux/airoha/patches-6.6/910-02-v7.0-net-airoha-npu-Add-the-capability-to-read-firmware-n.patch b/target/linux/airoha/patches-6.6/910-02-v7.0-net-airoha-npu-Add-the-capability-to-read-firmware-n.patch index 108476f259..e5586b7f1b 100644 --- a/target/linux/airoha/patches-6.6/910-02-v7.0-net-airoha-npu-Add-the-capability-to-read-firmware-n.patch +++ b/target/linux/airoha/patches-6.6/910-02-v7.0-net-airoha-npu-Add-the-capability-to-read-firmware-n.patch @@ -108,7 +108,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org> } static irqreturn_t airoha_npu_mbox_handler(int irq, void *npu_instance) -@@ -783,6 +815,8 @@ module_platform_driver(airoha_npu_driver +@@ -791,6 +823,8 @@ module_platform_driver(airoha_npu_driver MODULE_FIRMWARE(NPU_EN7581_FIRMWARE_DATA); MODULE_FIRMWARE(NPU_EN7581_FIRMWARE_RV32); |