xref: /linux/Documentation/devicetree/bindings/net/airoha,en7581-npu.yaml (revision 1a9239bb4253f9076b5b4b2a1a4e8d7defd77a95)
1*266f7a0fSLorenzo Bianconi# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2*266f7a0fSLorenzo Bianconi%YAML 1.2
3*266f7a0fSLorenzo Bianconi---
4*266f7a0fSLorenzo Bianconi$id: http://devicetree.org/schemas/net/airoha,en7581-npu.yaml#
5*266f7a0fSLorenzo Bianconi$schema: http://devicetree.org/meta-schemas/core.yaml#
6*266f7a0fSLorenzo Bianconi
7*266f7a0fSLorenzo Bianconititle: Airoha Network Processor Unit for EN7581 SoC
8*266f7a0fSLorenzo Bianconi
9*266f7a0fSLorenzo Bianconimaintainers:
10*266f7a0fSLorenzo Bianconi  - Lorenzo Bianconi <lorenzo@kernel.org>
11*266f7a0fSLorenzo Bianconi
12*266f7a0fSLorenzo Bianconidescription:
13*266f7a0fSLorenzo Bianconi  The Airoha Network Processor Unit (NPU) provides a configuration interface
14*266f7a0fSLorenzo Bianconi  to implement wired and wireless hardware flow offloading programming Packet
15*266f7a0fSLorenzo Bianconi  Processor Engine (PPE) flow table.
16*266f7a0fSLorenzo Bianconi
17*266f7a0fSLorenzo Bianconiproperties:
18*266f7a0fSLorenzo Bianconi  compatible:
19*266f7a0fSLorenzo Bianconi    enum:
20*266f7a0fSLorenzo Bianconi      - airoha,en7581-npu
21*266f7a0fSLorenzo Bianconi
22*266f7a0fSLorenzo Bianconi  reg:
23*266f7a0fSLorenzo Bianconi    maxItems: 1
24*266f7a0fSLorenzo Bianconi
25*266f7a0fSLorenzo Bianconi  interrupts:
26*266f7a0fSLorenzo Bianconi    items:
27*266f7a0fSLorenzo Bianconi      - description: mbox host irq line
28*266f7a0fSLorenzo Bianconi      - description: watchdog0 irq line
29*266f7a0fSLorenzo Bianconi      - description: watchdog1 irq line
30*266f7a0fSLorenzo Bianconi      - description: watchdog2 irq line
31*266f7a0fSLorenzo Bianconi      - description: watchdog3 irq line
32*266f7a0fSLorenzo Bianconi      - description: watchdog4 irq line
33*266f7a0fSLorenzo Bianconi      - description: watchdog5 irq line
34*266f7a0fSLorenzo Bianconi      - description: watchdog6 irq line
35*266f7a0fSLorenzo Bianconi      - description: watchdog7 irq line
36*266f7a0fSLorenzo Bianconi      - description: wlan irq line0
37*266f7a0fSLorenzo Bianconi      - description: wlan irq line1
38*266f7a0fSLorenzo Bianconi      - description: wlan irq line2
39*266f7a0fSLorenzo Bianconi      - description: wlan irq line3
40*266f7a0fSLorenzo Bianconi      - description: wlan irq line4
41*266f7a0fSLorenzo Bianconi      - description: wlan irq line5
42*266f7a0fSLorenzo Bianconi
43*266f7a0fSLorenzo Bianconi  memory-region:
44*266f7a0fSLorenzo Bianconi    maxItems: 1
45*266f7a0fSLorenzo Bianconi    description:
46*266f7a0fSLorenzo Bianconi      Memory used to store NPU firmware binary.
47*266f7a0fSLorenzo Bianconi
48*266f7a0fSLorenzo Bianconirequired:
49*266f7a0fSLorenzo Bianconi  - compatible
50*266f7a0fSLorenzo Bianconi  - reg
51*266f7a0fSLorenzo Bianconi  - interrupts
52*266f7a0fSLorenzo Bianconi  - memory-region
53*266f7a0fSLorenzo Bianconi
54*266f7a0fSLorenzo BianconiadditionalProperties: false
55*266f7a0fSLorenzo Bianconi
56*266f7a0fSLorenzo Bianconiexamples:
57*266f7a0fSLorenzo Bianconi  - |
58*266f7a0fSLorenzo Bianconi    #include <dt-bindings/interrupt-controller/arm-gic.h>
59*266f7a0fSLorenzo Bianconi    #include <dt-bindings/interrupt-controller/irq.h>
60*266f7a0fSLorenzo Bianconi    soc {
61*266f7a0fSLorenzo Bianconi      #address-cells = <2>;
62*266f7a0fSLorenzo Bianconi      #size-cells = <2>;
63*266f7a0fSLorenzo Bianconi
64*266f7a0fSLorenzo Bianconi      npu@1e900000 {
65*266f7a0fSLorenzo Bianconi        compatible = "airoha,en7581-npu";
66*266f7a0fSLorenzo Bianconi        reg = <0 0x1e900000 0 0x313000>;
67*266f7a0fSLorenzo Bianconi        interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>,
68*266f7a0fSLorenzo Bianconi                     <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>,
69*266f7a0fSLorenzo Bianconi                     <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
70*266f7a0fSLorenzo Bianconi                     <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>,
71*266f7a0fSLorenzo Bianconi                     <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>,
72*266f7a0fSLorenzo Bianconi                     <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>,
73*266f7a0fSLorenzo Bianconi                     <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>,
74*266f7a0fSLorenzo Bianconi                     <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>,
75*266f7a0fSLorenzo Bianconi                     <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>,
76*266f7a0fSLorenzo Bianconi                     <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
77*266f7a0fSLorenzo Bianconi                     <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>,
78*266f7a0fSLorenzo Bianconi                     <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>,
79*266f7a0fSLorenzo Bianconi                     <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>,
80*266f7a0fSLorenzo Bianconi                     <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>,
81*266f7a0fSLorenzo Bianconi                     <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>;
82*266f7a0fSLorenzo Bianconi        memory-region = <&npu_binary>;
83*266f7a0fSLorenzo Bianconi      };
84*266f7a0fSLorenzo Bianconi    };
85