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 items: 29 - description: NPE0 (NPE-A) register range 30 - description: NPE1 (NPE-B) register range 31 - description: NPE2 (NPE-C) register range 32 33 crypto: 34 $ref: /schemas/crypto/intel,ixp4xx-crypto.yaml# 35 type: object 36 description: Optional node for the embedded crypto engine, the node 37 should be named with the instance number of the NPE engine used for 38 the crypto engine. 39 40required: 41 - compatible 42 - reg 43 44additionalProperties: false 45 46examples: 47 - | 48 npe: npe@c8006000 { 49 compatible = "intel,ixp4xx-network-processing-engine"; 50 reg = <0xc8006000 0x1000>, <0xc8007000 0x1000>, <0xc8008000 0x1000>; 51 52 crypto { 53 compatible = "intel,ixp4xx-crypto"; 54 intel,npe-handle = <&npe 2>; 55 queue-rx = <&qmgr 30>; 56 queue-txready = <&qmgr 29>; 57 }; 58 }; 59... 60