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