1/* 2 * Device Tree Source for Keystone 2 Lamarr Netcp driver 3 * 4 * Copyright 2015 Texas Instruments, Inc. 5 * 6 * This program is free software; you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License version 2 as 8 * published by the Free Software Foundation. 9 */ 10 11qmss: qmss@2a40000 { 12 compatible = "ti,keystone-navigator-qmss"; 13 dma-coherent; 14 #address-cells = <1>; 15 #size-cells = <1>; 16 clocks = <&chipclk13>; 17 ranges; 18 queue-range = <0 0x2000>; 19 linkram0 = <0x100000 0x4000>; 20 linkram1 = <0x70000000 0x10000>; /* 1MB OSR mem */ 21 22 qmgrs { 23 #address-cells = <1>; 24 #size-cells = <1>; 25 ranges; 26 qmgr0 { 27 managed-queues = <0 0x2000>; 28 reg = <0x2a40000 0x20000>, 29 <0x2a06000 0x400>, 30 <0x2a02000 0x1000>, 31 <0x2a03000 0x1000>, 32 <0x23a80000 0x20000>, 33 <0x2a80000 0x20000>; 34 reg-names = "peek", "status", "config", 35 "region", "push", "pop"; 36 }; 37 }; 38 queue-pools { 39 qpend { 40 qpend-0 { 41 qrange = <658 8>; 42 interrupts =<0 40 0xf04 0 41 0xf04 0 42 0xf04 43 0 43 0xf04 0 44 0xf04 0 45 0xf04 44 0 46 0xf04 0 47 0xf04>; 45 }; 46 qpend-1 { 47 qrange = <528 16>; 48 interrupts = <0 48 0xf04 0 49 0xf04 0 50 0xf04 49 0 51 0xf04 0 52 0xf04 0 53 0xf04 50 0 54 0xf04 0 55 0xf04 0 56 0xf04 51 0 57 0xf04 0 58 0xf04 0 59 0xf04 52 0 60 0xf04 0 61 0xf04 0 62 0xf04 53 0 63 0xf04>; 54 qalloc-by-id; 55 }; 56 qpend-2 { 57 qrange = <544 16>; 58 interrupts = <0 64 0xf04 0 65 0xf04 0 66 0xf04 59 0 59 0xf04 0 68 0xf04 0 69 0xf04 60 0 70 0xf04 0 71 0xf04 0 72 0xf04 61 0 73 0xf04 0 74 0xf04 0 75 0xf04 62 0 76 0xf04 0 77 0xf04 0 78 0xf04 63 0 79 0xf04>; 64 }; 65 }; 66 general-purpose { 67 gp-0 { 68 qrange = <4000 64>; 69 }; 70 netcp-tx { 71 qrange = <896 128>; 72 qalloc-by-id; 73 }; 74 }; 75 accumulator { 76 acc-low-0 { 77 qrange = <480 32>; 78 accumulator = <0 47 16 2 50>; 79 interrupts = <0 226 0xf01>; 80 multi-queue; 81 }; 82 }; 83 }; 84 85 descriptor-regions { 86 #address-cells = <1>; 87 #size-cells = <1>; 88 ranges; 89 region-12 { 90 id = <12>; 91 region-spec = <8192 128>; /* num_desc desc_size */ 92 link-index = <0x4000>; 93 }; 94 }; 95 96 pdsps { 97 #address-cells = <1>; 98 #size-cells = <1>; 99 ranges; 100 pdsp0@0x2a10000 { 101 reg = <0x2a10000 0x1000 /*iram */ 102 0x2a0f000 0x100 /*reg*/ 103 0x2a0c000 0x3c8 /*intd */ 104 0x2a20000 0x4000>; /*cmd*/ 105 id = <0>; 106 }; 107 }; 108 109}; /* qmss */ 110 111knav_dmas: knav_dmas@0 { 112 compatible = "ti,keystone-navigator-dma"; 113 clocks = <&papllclk>; 114 #address-cells = <1>; 115 #size-cells = <1>; 116 ranges; 117 ti,navigator-cloud-address = <0x23a80000 0x23a90000>; 118 119 dma_gbe: dma_gbe@0 { 120 reg = <0x26186000 0x100>, 121 <0x26187000 0x2a0>, 122 <0x26188000 0xb60>, 123 <0x26186100 0x80>, 124 <0x26189000 0x1000>; 125 reg-names = "global", "txchan", "rxchan", 126 "txsched", "rxflow"; 127 }; 128}; 129 130netcp: netcp@26000000 { 131 reg = <0x2620110 0x8>; 132 reg-names = "efuse"; 133 compatible = "ti,netcp-1.0"; 134 #address-cells = <1>; 135 #size-cells = <1>; 136 137 /* NetCP address range */ 138 ranges = <0 0x26000000 0x1000000>; 139 140 clocks = <&clkosr>, <&papllclk>, <&clkcpgmac>, <&chipclk12>; 141 dma-coherent; 142 143 ti,navigator-dmas = <&dma_gbe 0>, 144 <&dma_gbe 8>, 145 <&dma_gbe 0>; 146 ti,navigator-dma-names = "netrx0", "netrx1", "nettx"; 147 148 netcp-devices { 149 #address-cells = <1>; 150 #size-cells = <1>; 151 ranges; 152 gbe@200000 { /* ETHSS */ 153 label = "netcp-gbe"; 154 compatible = "ti,netcp-gbe-5"; 155 reg = <0x200000 0x900>, <0x220000 0x20000>; 156 /* enable-ale; */ 157 tx-queue = <896>; 158 tx-channel = "nettx"; 159 160 interfaces { 161 gbe0: interface-0 { 162 slave-port = <0>; 163 link-interface = <1>; 164 phy-handle = <ðphy0>; 165 }; 166 gbe1: interface-1 { 167 slave-port = <1>; 168 link-interface = <1>; 169 phy-handle = <ðphy1>; 170 }; 171 }; 172 173 secondary-slave-ports { 174 port-2 { 175 slave-port = <2>; 176 link-interface = <2>; 177 }; 178 port-3 { 179 slave-port = <3>; 180 link-interface = <2>; 181 }; 182 }; 183 }; 184 }; 185 186 netcp-interfaces { 187 interface-0 { 188 rx-channel = "netrx0"; 189 rx-pool = <1024 12>; 190 tx-pool = <1024 12>; 191 rx-queue-depth = <128 128 0 0>; 192 rx-buffer-size = <1518 4096 0 0>; 193 rx-queue = <528>; 194 tx-completion-queue = <530>; 195 efuse-mac = <1>; 196 netcp-gbe = <&gbe0>; 197 198 }; 199 interface-1 { 200 rx-channel = "netrx1"; 201 rx-pool = <1024 12>; 202 tx-pool = <1024 12>; 203 rx-queue-depth = <128 128 0 0>; 204 rx-buffer-size = <1518 4096 0 0>; 205 rx-queue = <529>; 206 tx-completion-queue = <531>; 207 efuse-mac = <0>; 208 local-mac-address = [02 18 31 7e 3e 7f]; 209 netcp-gbe = <&gbe1>; 210 }; 211 }; 212}; 213