1*0e8011faSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*0e8011faSEmmanuel Vadot%YAML 1.2 3*0e8011faSEmmanuel Vadot--- 4*0e8011faSEmmanuel Vadot$id: http://devicetree.org/schemas/soc/fsl/fsl,qman.yaml# 5*0e8011faSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*0e8011faSEmmanuel Vadot 7*0e8011faSEmmanuel Vadottitle: QorIQ DPAA Queue Manager 8*0e8011faSEmmanuel Vadot 9*0e8011faSEmmanuel Vadotmaintainers: 10*0e8011faSEmmanuel Vadot - Frank Li <Frank.Li@nxp.com> 11*0e8011faSEmmanuel Vadot 12*0e8011faSEmmanuel Vadotdescription: 13*0e8011faSEmmanuel Vadot The Queue Manager is part of the Data-Path Acceleration Architecture (DPAA). QMan 14*0e8011faSEmmanuel Vadot supports queuing and QoS scheduling of frames to CPUs, network interfaces and 15*0e8011faSEmmanuel Vadot DPAA logic modules, maintains packet ordering within flows. Besides providing 16*0e8011faSEmmanuel Vadot flow-level queuing, is also responsible for congestion management functions such 17*0e8011faSEmmanuel Vadot as RED/WRED, congestion notifications and tail discards. This binding covers the 18*0e8011faSEmmanuel Vadot CCSR space programming model 19*0e8011faSEmmanuel Vadot 20*0e8011faSEmmanuel Vadotproperties: 21*0e8011faSEmmanuel Vadot compatible: 22*0e8011faSEmmanuel Vadot oneOf: 23*0e8011faSEmmanuel Vadot - const: fsl,qman 24*0e8011faSEmmanuel Vadot - items: 25*0e8011faSEmmanuel Vadot - enum: 26*0e8011faSEmmanuel Vadot - fsl,ls1043a-qman 27*0e8011faSEmmanuel Vadot - fsl,ls1046a-qman 28*0e8011faSEmmanuel Vadot - const: fsl,qman 29*0e8011faSEmmanuel Vadot reg: 30*0e8011faSEmmanuel Vadot items: 31*0e8011faSEmmanuel Vadot - description: | 32*0e8011faSEmmanuel Vadot Registers region within the CCSR address space 33*0e8011faSEmmanuel Vadot 34*0e8011faSEmmanuel Vadot The QMan revision information is located in the QMAN_IP_REV_1/2 35*0e8011faSEmmanuel Vadot registers which are located at offsets 0xbf8 and 0xbfc 36*0e8011faSEmmanuel Vadot 37*0e8011faSEmmanuel Vadot interrupts: 38*0e8011faSEmmanuel Vadot items: 39*0e8011faSEmmanuel Vadot - description: The error interrupt 40*0e8011faSEmmanuel Vadot 41*0e8011faSEmmanuel Vadot fsl,qman-portals: 42*0e8011faSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle 43*0e8011faSEmmanuel Vadot description: ref fsl,qman-port.yaml 44*0e8011faSEmmanuel Vadot 45*0e8011faSEmmanuel Vadot fsl,liodn: 46*0e8011faSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-array 47*0e8011faSEmmanuel Vadot description: 48*0e8011faSEmmanuel Vadot See pamu.txt, PAMU property used for static LIODN assignment 49*0e8011faSEmmanuel Vadot 50*0e8011faSEmmanuel Vadot fsl,iommu-parent: 51*0e8011faSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle 52*0e8011faSEmmanuel Vadot description: 53*0e8011faSEmmanuel Vadot See pamu.txt, PAMU property used for dynamic LIODN assignment 54*0e8011faSEmmanuel Vadot 55*0e8011faSEmmanuel Vadot clocks: 56*0e8011faSEmmanuel Vadot maxItems: 1 57*0e8011faSEmmanuel Vadot description: 58*0e8011faSEmmanuel Vadot Reference input clock. Its frequency is half of the platform clock 59*0e8011faSEmmanuel Vadot 60*0e8011faSEmmanuel Vadot memory-region: 61*0e8011faSEmmanuel Vadot maxItems: 2 62*0e8011faSEmmanuel Vadot description: 63*0e8011faSEmmanuel Vadot List of phandles referencing the QMan private memory nodes (described 64*0e8011faSEmmanuel Vadot below). The qman-fqd node must be first followed by qman-pfdr node. 65*0e8011faSEmmanuel Vadot Only used on ARM Devices connected to a QMan instance via Direct Connect 66*0e8011faSEmmanuel Vadot Portals (DCP) must link to the respective QMan instance. 67*0e8011faSEmmanuel Vadot 68*0e8011faSEmmanuel Vadot fsl,qman: 69*0e8011faSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-array 70*0e8011faSEmmanuel Vadot description: 71*0e8011faSEmmanuel Vadot List of phandle and DCP index pairs, to the QMan instance 72*0e8011faSEmmanuel Vadot to which this device is connected via the DCP 73*0e8011faSEmmanuel Vadot 74*0e8011faSEmmanuel Vadotrequired: 75*0e8011faSEmmanuel Vadot - compatible 76*0e8011faSEmmanuel Vadot - reg 77*0e8011faSEmmanuel Vadot - interrupts 78*0e8011faSEmmanuel Vadot 79*0e8011faSEmmanuel VadotadditionalProperties: false 80*0e8011faSEmmanuel Vadot 81*0e8011faSEmmanuel Vadotexamples: 82*0e8011faSEmmanuel Vadot - | 83*0e8011faSEmmanuel Vadot #include <dt-bindings/interrupt-controller/irq.h> 84*0e8011faSEmmanuel Vadot 85*0e8011faSEmmanuel Vadot qman: qman@318000 { 86*0e8011faSEmmanuel Vadot compatible = "fsl,qman"; 87*0e8011faSEmmanuel Vadot reg = <0x318000 0x1000>; 88*0e8011faSEmmanuel Vadot interrupts = <16 IRQ_TYPE_EDGE_FALLING 1 3>; 89*0e8011faSEmmanuel Vadot fsl,liodn = <0x16>; 90*0e8011faSEmmanuel Vadot fsl,qman-portals = <&qportals>; 91*0e8011faSEmmanuel Vadot memory-region = <&qman_fqd &qman_pfdr>; 92*0e8011faSEmmanuel Vadot clocks = <&platform_pll 1>; 93*0e8011faSEmmanuel Vadot }; 94