xref: /linux/Documentation/devicetree/bindings/firmware/intel,ixp4xx-network-processing-engine.yaml (revision d2912cb15bdda8ba4a5dd73396ad62641af2f520)
1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2# Copyright 2019 Linaro Ltd.
3%YAML 1.2
4---
5$id: "http://devicetree.org/schemas/firmware/intel-ixp4xx-network-processing-engine.yaml#"
6$schema: "http://devicetree.org/meta-schemas/core.yaml#"
7
8title: Intel IXP4xx Network Processing Engine
9
10maintainers:
11  - Linus Walleij <linus.walleij@linaro.org>
12
13description: |
14  On the IXP4xx SoCs, the Network Processing Engine (NPE) is a small
15  processor that can load a firmware to perform offloading of networking
16  and crypto tasks. It also manages the MDIO bus to the ethernet PHYs
17  on the IXP4xx platform. All IXP4xx platforms have three NPEs at
18  consecutive memory locations. They are all included in the same
19  device node since they are not independent of each other.
20
21properties:
22  compatible:
23    oneOf:
24      - items:
25          - const: intel,ixp4xx-network-processing-engine
26
27  reg:
28    minItems: 3
29    maxItems: 3
30    items:
31      - description: NPE0 register range
32      - description: NPE1 register range
33      - description: NPE2 register range
34
35required:
36  - compatible
37  - reg
38
39examples:
40  - |
41    npe@c8006000 {
42         compatible = "intel,ixp4xx-network-processing-engine";
43         reg = <0xc8006000 0x1000>, <0xc8007000 0x1000>, <0xc8008000 0x1000>;
44    };
45