1/* 2 * Device Tree Source for Keystone 2 Hawking 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 0x4000>; 19 linkram0 = <0x100000 0x8000>; 20 linkram1 = <0x0 0x10000>; 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 qmgr1 { 39 managed-queues = <0x2000 0x2000>; 40 reg = <0x2a60000 0x20000>, 41 <0x2a06400 0x400>, 42 <0x2a04000 0x1000>, 43 <0x2a05000 0x1000>, 44 <0x23aa0000 0x20000>, 45 <0x2aa0000 0x20000>; 46 reg-names = "peek", "status", "config", 47 "region", "push", "pop"; 48 }; 49 }; 50 queue-pools { 51 qpend { 52 qpend-0 { 53 qrange = <658 8>; 54 interrupts =<0 40 0xf04 0 41 0xf04 0 42 0xf04 55 0 43 0xf04 0 44 0xf04 0 45 0xf04 56 0 46 0xf04 0 47 0xf04>; 57 }; 58 qpend-1 { 59 qrange = <8704 16>; 60 interrupts = <0 48 0xf04 0 49 0xf04 0 50 0xf04 61 0 51 0xf04 0 52 0xf04 0 53 0xf04 62 0 54 0xf04 0 55 0xf04 0 56 0xf04 63 0 57 0xf04 0 58 0xf04 0 59 0xf04 64 0 60 0xf04 0 61 0xf04 0 62 0xf04 65 0 63 0xf04>; 66 qalloc-by-id; 67 }; 68 qpend-2 { 69 qrange = <8720 16>; 70 interrupts = <0 64 0xf04 0 65 0xf04 0 66 0xf04 71 0 59 0xf04 0 68 0xf04 0 69 0xf04 72 0 70 0xf04 0 71 0xf04 0 72 0xf04 73 0 73 0xf04 0 74 0xf04 0 75 0xf04 74 0 76 0xf04 0 77 0xf04 0 78 0xf04 75 0 79 0xf04>; 76 }; 77 }; 78 general-purpose { 79 gp-0 { 80 qrange = <4000 64>; 81 }; 82 netcp-tx { 83 qrange = <640 9>; 84 qalloc-by-id; 85 }; 86 netcpx-tx { 87 qrange = <8752 8>; 88 qalloc-by-id; 89 }; 90 }; 91 }; 92 descriptor-regions { 93 #address-cells = <1>; 94 #size-cells = <1>; 95 ranges; 96 region-12 { 97 id = <12>; 98 region-spec = <8192 128>; /* num_desc desc_size */ 99 link-index = <0x4000>; 100 }; 101 }; 102}; /* qmss */ 103 104knav_dmas: knav_dmas@0 { 105 compatible = "ti,keystone-navigator-dma"; 106 clocks = <&papllclk>; 107 #address-cells = <1>; 108 #size-cells = <1>; 109 ranges; 110 ti,navigator-cloud-address = <0x23a80000 0x23a90000 111 0x23aa0000 0x23ab0000>; 112 113 dma_gbe: dma_gbe@0 { 114 reg = <0x2004000 0x100>, 115 <0x2004400 0x120>, 116 <0x2004800 0x300>, 117 <0x2004c00 0x120>, 118 <0x2005000 0x400>; 119 reg-names = "global", "txchan", "rxchan", 120 "txsched", "rxflow"; 121 }; 122}; 123 124netcp: netcp@2000000 { 125 reg = <0x2620110 0x8>; 126 reg-names = "efuse"; 127 compatible = "ti,netcp-1.0"; 128 #address-cells = <1>; 129 #size-cells = <1>; 130 131 /* NetCP address range */ 132 ranges = <0 0x2000000 0x100000>; 133 134 clocks = <&papllclk>, <&clkcpgmac>, <&chipclk12>; 135 dma-coherent; 136 137 ti,navigator-dmas = <&dma_gbe 22>, 138 <&dma_gbe 23>, 139 <&dma_gbe 8>; 140 ti,navigator-dma-names = "netrx0", "netrx1", "nettx"; 141 142 netcp-devices { 143 ranges; 144 #address-cells = <1>; 145 #size-cells = <1>; 146 gbe@90000 { /* ETHSS */ 147 #address-cells = <1>; 148 #size-cells = <1>; 149 label = "netcp-gbe"; 150 compatible = "ti,netcp-gbe"; 151 reg = <0x90000 0x300>, <0x90400 0x400>, <0x90800 0x700>; 152 /* enable-ale; */ 153 tx-queue = <648>; 154 tx-channel = "nettx"; 155 156 interfaces { 157 gbe0: interface-0 { 158 slave-port = <0>; 159 link-interface = <1>; 160 phy-handle = <ðphy0>; 161 }; 162 gbe1: interface-1 { 163 slave-port = <1>; 164 link-interface = <1>; 165 phy-handle = <ðphy1>; 166 }; 167 }; 168 169 secondary-slave-ports { 170 port-2 { 171 slave-port = <2>; 172 link-interface = <2>; 173 }; 174 port-3 { 175 slave-port = <3>; 176 link-interface = <2>; 177 }; 178 }; 179 }; 180 }; 181 182 netcp-interfaces { 183 interface-0 { 184 rx-channel = "netrx0"; 185 rx-pool = <1024 12>; 186 tx-pool = <1024 12>; 187 rx-queue-depth = <128 128 0 0>; 188 rx-buffer-size = <1518 4096 0 0>; 189 rx-queue = <8704>; 190 tx-completion-queue = <8706>; 191 efuse-mac = <1>; 192 netcp-gbe = <&gbe0>; 193 194 }; 195 interface-1 { 196 rx-channel = "netrx1"; 197 rx-pool = <1024 12>; 198 tx-pool = <1024 12>; 199 rx-queue-depth = <128 128 0 0>; 200 rx-buffer-size = <1518 4096 0 0>; 201 rx-queue = <8705>; 202 tx-completion-queue = <8707>; 203 efuse-mac = <0>; 204 local-mac-address = [02 18 31 7e 3e 6f]; 205 netcp-gbe = <&gbe1>; 206 }; 207 }; 208}; 209