1f3f6743dSEmil MedveQorIQ DPAA Queue Manager Portals Device Tree Binding 2f3f6743dSEmil Medve 3f3f6743dSEmil MedveCopyright (C) 2008 - 2014 Freescale Semiconductor Inc. 4f3f6743dSEmil Medve 5f3f6743dSEmil MedveCONTENTS 6f3f6743dSEmil Medve 7f3f6743dSEmil Medve - QMan Portal 8f3f6743dSEmil Medve - Example 9f3f6743dSEmil Medve 10f3f6743dSEmil MedveQMan Portal Node 11f3f6743dSEmil Medve 12f3f6743dSEmil MedvePortals are memory mapped interfaces to QMan that allow low-latency, lock-less 13f3f6743dSEmil Medveinteraction by software running on processor cores, accelerators and network 14f3f6743dSEmil Medveinterfaces with the QMan 15f3f6743dSEmil Medve 16f3f6743dSEmil MedvePROPERTIES 17f3f6743dSEmil Medve 18f3f6743dSEmil Medve- compatible 19f3f6743dSEmil Medve Usage: Required 20f3f6743dSEmil Medve Value type: <stringlist> 21f3f6743dSEmil Medve Definition: Must include "fsl,qman-portal-<hardware revision>" 22f3f6743dSEmil Medve May include "fsl,<SoC>-qman-portal" or "fsl,qman-portal" 23f3f6743dSEmil Medve 24f3f6743dSEmil Medve- reg 25f3f6743dSEmil Medve Usage: Required 26f3f6743dSEmil Medve Value type: <prop-encoded-array> 27f3f6743dSEmil Medve Definition: Two regions. The first is the cache-enabled region of 28f3f6743dSEmil Medve the portal. The second is the cache-inhibited region of 29f3f6743dSEmil Medve the portal 30f3f6743dSEmil Medve 31f3f6743dSEmil Medve- interrupts 32f3f6743dSEmil Medve Usage: Required 33f3f6743dSEmil Medve Value type: <prop-encoded-array> 34f3f6743dSEmil Medve Definition: Standard property 35f3f6743dSEmil Medve 36f3f6743dSEmil Medve- fsl,liodn 37f3f6743dSEmil Medve Usage: See pamu.txt 38f3f6743dSEmil Medve Value type: <prop-encoded-array> 39f3f6743dSEmil Medve Definition: Two LIODN(s). DQRR LIODN (DLIODN) and Frame LIODN 40f3f6743dSEmil Medve (FLIODN) 41f3f6743dSEmil Medve 42f3f6743dSEmil Medve- fsl,iommu-parent 43f3f6743dSEmil Medve Usage: See pamu.txt 44f3f6743dSEmil Medve Value type: <phandle> 45f3f6743dSEmil Medve Definition: PAMU property used for dynamic LIODN assignment 46f3f6743dSEmil Medve 47f3f6743dSEmil Medve For additional details about the PAMU/LIODN binding(s) see pamu.txt 48f3f6743dSEmil Medve 49e9326deaSScott Wood- cell-index 50f3f6743dSEmil Medve Usage: Required 51f3f6743dSEmil Medve Value type: <u32> 52f3f6743dSEmil Medve Definition: The hardware index of the channel. This can also be 53f3f6743dSEmil Medve determined by dividing any of the channel's 8 work queue 54f3f6743dSEmil Medve IDs by 8 55f3f6743dSEmil Medve 56f3f6743dSEmil MedveIn addition to these properties the qman-portals should have sub-nodes to 57f3f6743dSEmil Medverepresent the HW devices/portals that are connected to the software portal 58f3f6743dSEmil Medvedescribed here 59f3f6743dSEmil Medve 60f3f6743dSEmil MedveThe currently supported sub-nodes are: 61f3f6743dSEmil Medve * fman0 62f3f6743dSEmil Medve * fman1 63f3f6743dSEmil Medve * pme 64f3f6743dSEmil Medve * crypto 65f3f6743dSEmil Medve 66f3f6743dSEmil MedveThese subnodes should have the following properties: 67f3f6743dSEmil Medve 68f3f6743dSEmil Medve- fsl,liodn 69f3f6743dSEmil Medve Usage: See pamu.txt 70f3f6743dSEmil Medve Value type: <prop-encoded-array> 71f3f6743dSEmil Medve Definition: PAMU property used for static LIODN assignment 72f3f6743dSEmil Medve 73f3f6743dSEmil Medve- fsl,iommu-parent 74f3f6743dSEmil Medve Usage: See pamu.txt 75f3f6743dSEmil Medve Value type: <phandle> 76f3f6743dSEmil Medve Definition: PAMU property used for dynamic LIODN assignment 77f3f6743dSEmil Medve 78f3f6743dSEmil Medve- dev-handle 79f3f6743dSEmil Medve Usage: Required 80f3f6743dSEmil Medve Value type: <phandle> 81f3f6743dSEmil Medve Definition: The phandle to the particular hardware device that this 82f3f6743dSEmil Medve portal is connected to. 83f3f6743dSEmil Medve 84f3f6743dSEmil MedveEXAMPLE 85f3f6743dSEmil Medve 86f3f6743dSEmil MedveThe example below shows a (P4080) QMan portals container/bus node with two portals 87f3f6743dSEmil Medve 88f3f6743dSEmil Medve qman-portals@ff4200000 { 89f3f6743dSEmil Medve #address-cells = <1>; 90f3f6743dSEmil Medve #size-cells = <1>; 91f3f6743dSEmil Medve compatible = "simple-bus"; 92f3f6743dSEmil Medve ranges = <0 0xf 0xf4200000 0x200000>; 93f3f6743dSEmil Medve 94f3f6743dSEmil Medve qman-portal@0 { 95f3f6743dSEmil Medve compatible = "fsl,qman-portal-1.2.0", "fsl,qman-portal"; 96f3f6743dSEmil Medve reg = <0 0x4000>, <0x100000 0x1000>; 97f3f6743dSEmil Medve interrupts = <104 2 0 0>; 98f3f6743dSEmil Medve fsl,liodn = <1 2>; 99f3f6743dSEmil Medve fsl,qman-channel-id = <0>; 100f3f6743dSEmil Medve 101f3f6743dSEmil Medve fman0 { 102f3f6743dSEmil Medve fsl,liodn = <0x21>; 103f3f6743dSEmil Medve dev-handle = <&fman0>; 104f3f6743dSEmil Medve }; 105f3f6743dSEmil Medve fman1 { 106f3f6743dSEmil Medve fsl,liodn = <0xa1>; 107f3f6743dSEmil Medve dev-handle = <&fman1>; 108f3f6743dSEmil Medve }; 109f3f6743dSEmil Medve crypto { 110f3f6743dSEmil Medve fsl,liodn = <0x41 0x66>; 111f3f6743dSEmil Medve dev-handle = <&crypto>; 112f3f6743dSEmil Medve }; 113f3f6743dSEmil Medve }; 114f3f6743dSEmil Medve qman-portal@4000 { 115f3f6743dSEmil Medve compatible = "fsl,qman-portal-1.2.0", "fsl,qman-portal"; 116f3f6743dSEmil Medve reg = <0x4000 0x4000>, <0x101000 0x1000>; 117f3f6743dSEmil Medve interrupts = <106 2 0 0>; 118f3f6743dSEmil Medve fsl,liodn = <3 4>; 119e9326deaSScott Wood cell-index = <1>; 120f3f6743dSEmil Medve 121f3f6743dSEmil Medve fman0 { 122f3f6743dSEmil Medve fsl,liodn = <0x22>; 123f3f6743dSEmil Medve dev-handle = <&fman0>; 124f3f6743dSEmil Medve }; 125f3f6743dSEmil Medve fman1 { 126f3f6743dSEmil Medve fsl,liodn = <0xa2>; 127f3f6743dSEmil Medve dev-handle = <&fman1>; 128f3f6743dSEmil Medve }; 129f3f6743dSEmil Medve crypto { 130f3f6743dSEmil Medve fsl,liodn = <0x42 0x67>; 131f3f6743dSEmil Medve dev-handle = <&crypto>; 132f3f6743dSEmil Medve }; 133f3f6743dSEmil Medve }; 134f3f6743dSEmil Medve }; 135