Home | History | Annotate | Download | only in dts
      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 
     11 qmss: 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 	};
     76 	descriptor-regions {
     77 		#address-cells = <1>;
     78 		#size-cells = <1>;
     79 		ranges;
     80 		region-12 {
     81 			id = <12>;
     82 			region-spec = <8192 128>;	/* num_desc desc_size */
     83 			link-index = <0x4000>;
     84 		};
     85 	};
     86 }; /* qmss */
     87 
     88 knav_dmas: knav_dmas@0 {
     89 	compatible = "ti,keystone-navigator-dma";
     90 	clocks = <&papllclk>;
     91 	#address-cells = <1>;
     92 	#size-cells = <1>;
     93 	ranges;
     94 	ti,navigator-cloud-address = <0x23a80000 0x23a90000>;
     95 
     96 	dma_gbe: dma_gbe@0 {
     97 		reg = <0x26186000 0x100>,
     98 			  <0x26187000 0x2a0>,
     99 			  <0x26188000 0xb60>,
    100 			  <0x26186100 0x80>,
    101 			  <0x26189000 0x1000>;
    102 		reg-names = "global", "txchan", "rxchan",
    103 				"txsched", "rxflow";
    104 	};
    105 };
    106 
    107 netcp: netcp@26000000 {
    108 	reg = <0x2620110 0x8>;
    109 	reg-names = "efuse";
    110 	compatible = "ti,netcp-1.0";
    111 	#address-cells = <1>;
    112 	#size-cells = <1>;
    113 
    114 	/* NetCP address range */
    115 	ranges = <0 0x26000000 0x1000000>;
    116 
    117 	clocks = <&papllclk>, <&clkcpgmac>, <&chipclk12>;
    118 	dma-coherent;
    119 
    120 	ti,navigator-dmas = <&dma_gbe 0>,
    121 			<&dma_gbe 8>,
    122 			<&dma_gbe 0>;
    123 	ti,navigator-dma-names = "netrx0", "netrx1", "nettx";
    124 
    125 	netcp-devices {
    126 		#address-cells = <1>;
    127 		#size-cells = <1>;
    128 		ranges;
    129 		gbe@200000 { /* ETHSS */
    130 			label = "netcp-gbe";
    131 			compatible = "ti,netcp-gbe-5";
    132 			reg = <0x200000 0x900>, <0x220000 0x20000>;
    133 			/* enable-ale; */
    134 			tx-queue = <896>;
    135 			tx-channel = "nettx";
    136 
    137 			interfaces {
    138 				gbe0: interface-0 {
    139 					slave-port = <0>;
    140 					link-interface	= <1>;
    141 					phy-handle	= <&ethphy0>;
    142 				};
    143 				gbe1: interface-1 {
    144 					slave-port = <1>;
    145 					link-interface	= <1>;
    146 					phy-handle	= <&ethphy1>;
    147 				};
    148 			};
    149 
    150 			secondary-slave-ports {
    151 				port-2 {
    152 					slave-port = <2>;
    153 					link-interface	= <2>;
    154 				};
    155 				port-3 {
    156 					slave-port = <3>;
    157 					link-interface	= <2>;
    158 				};
    159 			};
    160 		};
    161 	};
    162 
    163 	netcp-interfaces {
    164 		interface-0 {
    165 			rx-channel = "netrx0";
    166 			rx-pool = <1024 12>;
    167 			tx-pool = <1024 12>;
    168 			rx-queue-depth = <128 128 0 0>;
    169 			rx-buffer-size = <1518 4096 0 0>;
    170 			rx-queue = <528>;
    171 			tx-completion-queue = <530>;
    172 			efuse-mac = <1>;
    173 			netcp-gbe = <&gbe0>;
    174 
    175 		};
    176 		interface-1 {
    177 			rx-channel = "netrx1";
    178 			rx-pool = <1024 12>;
    179 			tx-pool = <1024 12>;
    180 			rx-queue-depth = <128 128 0 0>;
    181 			rx-buffer-size = <1518 4096 0 0>;
    182 			rx-queue = <529>;
    183 			tx-completion-queue = <531>;
    184 			efuse-mac = <0>;
    185 			local-mac-address = [02 18 31 7e 3e 7f];
    186 			netcp-gbe = <&gbe1>;
    187 		};
    188 	};
    189 };
    190