[openwrt/openwrt] airoha: an7583: add NPU nodes and enable kernel config

LEDE Commits lede-commits at lists.infradead.org
Mon Nov 10 09:35:55 PST 2025


ansuel pushed a commit to openwrt/openwrt.git, branch openwrt-24.10:
https://git.openwrt.org/4391bf8729afe24c2d0ff1c7bfa17b1780e96fa6

commit 4391bf8729afe24c2d0ff1c7bfa17b1780e96fa6
Author: Christian Marangi <ansuelsmth at gmail.com>
AuthorDate: Thu Oct 23 16:23:42 2025 +0200

    airoha: an7583: add NPU nodes and enable kernel config
    
    Add relevant nodes for NPU support for Airoha AN7583 and enable the
    kernel config to enable support in the Airoha Ethernet driver.
    
    NPU firmware is scheduled to be upstreamed to linux-firmware and will be
    added once present upstream.
    
    Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
    (cherry picked from commit 8758b58f25dac29a9cbf60e153143bdc124e582c)
---
 target/linux/airoha/an7583/config-6.6       |  1 +
 target/linux/airoha/dts/an7583-evb-emmc.dts |  4 ++++
 target/linux/airoha/dts/an7583-evb.dts      |  4 ++++
 target/linux/airoha/dts/an7583.dtsi         | 26 ++++++++++++++++++++++++++
 4 files changed, 35 insertions(+)

diff --git a/target/linux/airoha/an7583/config-6.6 b/target/linux/airoha/an7583/config-6.6
index b95bfa67c6..4d137e2202 100644
--- a/target/linux/airoha/an7583/config-6.6
+++ b/target/linux/airoha/an7583/config-6.6
@@ -242,6 +242,7 @@ CONFIG_NEED_DMA_MAP_STATE=y
 CONFIG_NEED_SG_DMA_LENGTH=y
 CONFIG_NET_AIROHA=y
 CONFIG_NET_AIROHA_FLOW_STATS=y
+CONFIG_NET_AIROHA_NPU=y
 CONFIG_NET_DEVLINK=y
 CONFIG_NET_DSA=y
 CONFIG_NET_DSA_MT7530=y
diff --git a/target/linux/airoha/dts/an7583-evb-emmc.dts b/target/linux/airoha/dts/an7583-evb-emmc.dts
index df5ee5bde0..6477832a20 100644
--- a/target/linux/airoha/dts/an7583-evb-emmc.dts
+++ b/target/linux/airoha/dts/an7583-evb-emmc.dts
@@ -227,6 +227,10 @@
 	};
 };
 
+&npu {
+	status = "okay";
+};
+
 &eth {
 	status = "okay";
 	nvmem-cells = <&mac_factory_2c0000>;
diff --git a/target/linux/airoha/dts/an7583-evb.dts b/target/linux/airoha/dts/an7583-evb.dts
index 30f1cf0800..95ac20e727 100644
--- a/target/linux/airoha/dts/an7583-evb.dts
+++ b/target/linux/airoha/dts/an7583-evb.dts
@@ -84,6 +84,10 @@
 	status = "okay";
 };
 
+&npu {
+	status = "okay";
+};
+
 &eth {
 	status = "okay";
 };
diff --git a/target/linux/airoha/dts/an7583.dtsi b/target/linux/airoha/dts/an7583.dtsi
index 43e60ebf66..49a0616a39 100644
--- a/target/linux/airoha/dts/an7583.dtsi
+++ b/target/linux/airoha/dts/an7583.dtsi
@@ -546,6 +546,30 @@
 			interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
 		};
 
+		npu: npu at 1e900000 {
+			compatible = "airoha,an7583-npu";
+			reg = <0x0 0x1e900000 0x0 0x313000>;
+			interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>,
+				     <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>,
+				     <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
+				     <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>,
+				     <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>,
+				     <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>,
+				     <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>,
+				     <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>,
+				     <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>,
+				     <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
+				     <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>,
+				     <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>,
+				     <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>,
+				     <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>,
+				     <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>;
+			memory-region = <&npu_binary>;
+			memory-region-names = "binary";
+
+			status = "disabled";
+		};
+
 		pon_pcs: pcs at 1fa08000 {
 			compatible = "airoha,an7583-pcs-pon";
 			reg = <0x0 0x1fa08000 0x0 0x1000>,
@@ -620,6 +644,8 @@
 			memory-region = <&qdma0_buf>, <&qdma1_buf>;
 			memory-region-names = "qdma0-buf", "qdma1-buf";
 
+			airoha,npu = <&npu>;
+
 			status = "disabled";
 
 			#address-cells = <1>;




More information about the lede-commits mailing list