0001 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
0002 # Copyright 2019 Linaro Ltd.
0003 %YAML 1.2
0004 ---
0005 $id: "http://devicetree.org/schemas/misc/intel,ixp4xx-ahb-queue-manager.yaml#"
0006 $schema: "http://devicetree.org/meta-schemas/core.yaml#"
0007
0008 title: Intel IXP4xx AHB Queue Manager
0009
0010 maintainers:
0011 - Linus Walleij <linus.walleij@linaro.org>
0012
0013 description: |
0014 The IXP4xx AHB Queue Manager maintains queues as circular buffers in
0015 an 8KB embedded SRAM along with hardware pointers. It is used by both
0016 the XScale processor and the NPEs (Network Processing Units) in the
0017 IXP4xx for accelerating queues, especially for networking. Clients pick
0018 queues from the queue manager with foo-queue = <&qmgr N> where the
0019 &qmgr is a phandle to the queue manager and N is the queue resource
0020 number. The queue resources available and their specific purpose
0021 on a certain IXP4xx system will vary.
0022
0023 properties:
0024 compatible:
0025 items:
0026 - const: intel,ixp4xx-ahb-queue-manager
0027
0028 reg:
0029 maxItems: 1
0030
0031 interrupts:
0032 items:
0033 - description: Interrupt for queues 0-31
0034 - description: Interrupt for queues 32-63
0035
0036 required:
0037 - compatible
0038 - reg
0039 - interrupts
0040
0041 additionalProperties: false
0042
0043 examples:
0044 - |
0045 #include <dt-bindings/interrupt-controller/irq.h>
0046
0047 qmgr: queue-manager@60000000 {
0048 compatible = "intel,ixp4xx-ahb-queue-manager";
0049 reg = <0x60000000 0x4000>;
0050 interrupts = <3 IRQ_TYPE_LEVEL_HIGH>, <4 IRQ_TYPE_LEVEL_HIGH>;
0051 };