1c66ec88fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2c66ec88fSEmmanuel Vadot# Copyright 2019 Linaro Ltd. 3c66ec88fSEmmanuel Vadot%YAML 1.2 4c66ec88fSEmmanuel Vadot--- 5*aa1a8ff2SEmmanuel Vadot$id: http://devicetree.org/schemas/misc/intel,ixp4xx-ahb-queue-manager.yaml# 6*aa1a8ff2SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 7c66ec88fSEmmanuel Vadot 8c66ec88fSEmmanuel Vadottitle: Intel IXP4xx AHB Queue Manager 9c66ec88fSEmmanuel Vadot 10c66ec88fSEmmanuel Vadotmaintainers: 11c66ec88fSEmmanuel Vadot - Linus Walleij <linus.walleij@linaro.org> 12c66ec88fSEmmanuel Vadot 13c66ec88fSEmmanuel Vadotdescription: | 14c66ec88fSEmmanuel Vadot The IXP4xx AHB Queue Manager maintains queues as circular buffers in 15c66ec88fSEmmanuel Vadot an 8KB embedded SRAM along with hardware pointers. It is used by both 16c66ec88fSEmmanuel Vadot the XScale processor and the NPEs (Network Processing Units) in the 17c66ec88fSEmmanuel Vadot IXP4xx for accelerating queues, especially for networking. Clients pick 18c66ec88fSEmmanuel Vadot queues from the queue manager with foo-queue = <&qmgr N> where the 19c66ec88fSEmmanuel Vadot &qmgr is a phandle to the queue manager and N is the queue resource 20c66ec88fSEmmanuel Vadot number. The queue resources available and their specific purpose 21c66ec88fSEmmanuel Vadot on a certain IXP4xx system will vary. 22c66ec88fSEmmanuel Vadot 23c66ec88fSEmmanuel Vadotproperties: 24c66ec88fSEmmanuel Vadot compatible: 25c66ec88fSEmmanuel Vadot items: 26c66ec88fSEmmanuel Vadot - const: intel,ixp4xx-ahb-queue-manager 27c66ec88fSEmmanuel Vadot 28c66ec88fSEmmanuel Vadot reg: 29c66ec88fSEmmanuel Vadot maxItems: 1 30c66ec88fSEmmanuel Vadot 31c66ec88fSEmmanuel Vadot interrupts: 32c66ec88fSEmmanuel Vadot items: 33c66ec88fSEmmanuel Vadot - description: Interrupt for queues 0-31 34c66ec88fSEmmanuel Vadot - description: Interrupt for queues 32-63 35c66ec88fSEmmanuel Vadot 36c66ec88fSEmmanuel Vadotrequired: 37c66ec88fSEmmanuel Vadot - compatible 38c66ec88fSEmmanuel Vadot - reg 39c66ec88fSEmmanuel Vadot - interrupts 40c66ec88fSEmmanuel Vadot 41c66ec88fSEmmanuel VadotadditionalProperties: false 42c66ec88fSEmmanuel Vadot 43c66ec88fSEmmanuel Vadotexamples: 44c66ec88fSEmmanuel Vadot - | 45c66ec88fSEmmanuel Vadot #include <dt-bindings/interrupt-controller/irq.h> 46c66ec88fSEmmanuel Vadot 47c66ec88fSEmmanuel Vadot qmgr: queue-manager@60000000 { 48c66ec88fSEmmanuel Vadot compatible = "intel,ixp4xx-ahb-queue-manager"; 49c66ec88fSEmmanuel Vadot reg = <0x60000000 0x4000>; 50c66ec88fSEmmanuel Vadot interrupts = <3 IRQ_TYPE_LEVEL_HIGH>, <4 IRQ_TYPE_LEVEL_HIGH>; 51c66ec88fSEmmanuel Vadot }; 52