162306a36Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 262306a36Sopenharmony_ci# Copyright 2019 Linaro Ltd. 362306a36Sopenharmony_ci%YAML 1.2 462306a36Sopenharmony_ci--- 562306a36Sopenharmony_ci$id: http://devicetree.org/schemas/misc/intel,ixp4xx-ahb-queue-manager.yaml# 662306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml# 762306a36Sopenharmony_ci 862306a36Sopenharmony_cititle: Intel IXP4xx AHB Queue Manager 962306a36Sopenharmony_ci 1062306a36Sopenharmony_cimaintainers: 1162306a36Sopenharmony_ci - Linus Walleij <linus.walleij@linaro.org> 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_cidescription: | 1462306a36Sopenharmony_ci The IXP4xx AHB Queue Manager maintains queues as circular buffers in 1562306a36Sopenharmony_ci an 8KB embedded SRAM along with hardware pointers. It is used by both 1662306a36Sopenharmony_ci the XScale processor and the NPEs (Network Processing Units) in the 1762306a36Sopenharmony_ci IXP4xx for accelerating queues, especially for networking. Clients pick 1862306a36Sopenharmony_ci queues from the queue manager with foo-queue = <&qmgr N> where the 1962306a36Sopenharmony_ci &qmgr is a phandle to the queue manager and N is the queue resource 2062306a36Sopenharmony_ci number. The queue resources available and their specific purpose 2162306a36Sopenharmony_ci on a certain IXP4xx system will vary. 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_ciproperties: 2462306a36Sopenharmony_ci compatible: 2562306a36Sopenharmony_ci items: 2662306a36Sopenharmony_ci - const: intel,ixp4xx-ahb-queue-manager 2762306a36Sopenharmony_ci 2862306a36Sopenharmony_ci reg: 2962306a36Sopenharmony_ci maxItems: 1 3062306a36Sopenharmony_ci 3162306a36Sopenharmony_ci interrupts: 3262306a36Sopenharmony_ci items: 3362306a36Sopenharmony_ci - description: Interrupt for queues 0-31 3462306a36Sopenharmony_ci - description: Interrupt for queues 32-63 3562306a36Sopenharmony_ci 3662306a36Sopenharmony_cirequired: 3762306a36Sopenharmony_ci - compatible 3862306a36Sopenharmony_ci - reg 3962306a36Sopenharmony_ci - interrupts 4062306a36Sopenharmony_ci 4162306a36Sopenharmony_ciadditionalProperties: false 4262306a36Sopenharmony_ci 4362306a36Sopenharmony_ciexamples: 4462306a36Sopenharmony_ci - | 4562306a36Sopenharmony_ci #include <dt-bindings/interrupt-controller/irq.h> 4662306a36Sopenharmony_ci 4762306a36Sopenharmony_ci qmgr: queue-manager@60000000 { 4862306a36Sopenharmony_ci compatible = "intel,ixp4xx-ahb-queue-manager"; 4962306a36Sopenharmony_ci reg = <0x60000000 0x4000>; 5062306a36Sopenharmony_ci interrupts = <3 IRQ_TYPE_LEVEL_HIGH>, <4 IRQ_TYPE_LEVEL_HIGH>; 5162306a36Sopenharmony_ci }; 52