Completed and tested routines that automatically reserve linux resources
[keystone-rtos/rm-lld.git] / device / tci6614-global-resources-mixed.dts
1 /dts-v1/;
3 / {
4     device-name = "TCI6614";
5     
6     /* Device Resource Definitions */
8         /* TODO: where do following get defined in the linux DTB
9                          #define ARM_LINUX_CPPI_QMSS_TX_CH_NUM           12
10                          #define ARM_LINUX_CPPI_QMSS_RX_CH_NUM           12
11                          #define ARM_LINUX_CPPI_QMSS_FLOW                12
12         */
13         
14     qmss {
15         pdsps {
16                 allocator = "integer";
17                 resource-range = <0 2>;
18         };
19         memory-regions {
20                         allocator = "integer";
21                         resource-range = <0 20>;
22                         linux-dtb-alias = "hwqueue@2a00000", "regions", "region-12", "id", "end", <0>, "end";
23         };
24         link-ram {
25             allocator = "tree";
26             resource-range = <0x00000000 0xFFFFFFFF>;
27         };
28         accumulator-ch {
29             allocator = "integer";
30             resource-range = <0 48>;
31                 /* Each new line specifies a different path.  The last string in the line
32                  * must result in a property tied to a value */
33                 linux-dtb-alias = "hwqueue@2a00000", "queues", "accumulator-low-0", "accumulator", "end", <1>, "end",
34                                                   "hwqueue@2a00000", "queues", "accumulator-low-1", "accumulator", "end", <1>, "end",
35                                                   "hwqueue@2a00000", "queues", "accumulator-low-2", "accumulator", "end", <1>, "end",
36                                                   "hwqueue@2a00000", "queues", "accumulator-low-3", "accumulator", "end", <1>, "end",
37                                                   "hwqueue@2a00000", "queues", "accumulator-high", "accumulator", "end", <1>, "end";            
38         };
39         qos-cluster {
40                         allocator = "integer";
41                         resource-range = <0 8>;
42         };
43         qos-queue {
44                         allocator = "integer";
45                         resource-range = <0 64>;
46         };        
48         /* Queue definitions based on csl_qm_queue.h */
49         low-prio-queue {
50                 allocator = "tree";
51                 resource-range = <0 512>;
52                 /* Each new line specifies a different path. */
53                 linux-dtb-alias = "hwqueue@2a00000", "queues", "accumulator-low-0", "values", "end", <0>, <1>, "end",
54                                                   "hwqueue@2a00000", "queues", "accumulator-low-1", "values", "end", <0>, <1>, "end",
55                                                   "hwqueue@2a00000", "queues", "accumulator-low-2", "values", "end", <0>, <1>, "end",
56                                                   "hwqueue@2a00000", "queues", "accumulator-low-3", "values", "end", <0>, <1>, "end";
57         };
58         aif-queue {
59                 allocator = "tree";
60                 resource-range = <512 128>;
61         };
62         pass-queue {
63                 allocator = "integer";
64                 resource-range = <640 9>;
65         };     
66         intc-queue {
67                 allocator = "integer";
68                 resource-range = <662 10>;
69         };
70         srio-queue {
71                 allocator = "integer";
72                 resource-range = <672 16>;
73                 linux-dtb-alias = "hwqueue@2a00000", "queues", "riotx", "values", "end", <0>, <1>, "end";
74         }; 
75         fftc-a-queue {
76                 allocator = "integer";
77                 resource-range = <688 4>;
78         };
79         fftc-b-queue {
80                 allocator = "integer";
81                 resource-range = <692 4>;
82         };
83         bcp-queue {
84                 allocator = "integer";
85                 resource-range = <864 8>;
86         };
87         high-prio-queue {
88                 allocator = "integer";
89                 resource-range = <704 32>;
90                 linux-dtb-alias = "hwqueue@2a00000", "queues", "accumulator-high", "values", "end", <0>, <1>, "end";
91         };
92         starvation-queue {
93                 allocator = "tree";
94                 resource-range = <736 64>;
95         };
96         infra-queue {
97                 allocator = "integer";
98                 resource-range = <800 32>;
99                 linux-dtb-alias = "hwqueue@2a00000", "queues", "infradma", "values", "end", <0>, <1>, "end";
100         };
101         traffic-shaping-queue {
102                 allocator = "integer";
103                 resource-range = <832 32>;
104         };
105         gp-queue {
106                 allocator = "tree";
107                 resource-range = <896 7296>;
108                 linux-dtb-alias = "hwqueue@2a00000", "queues", "general", "values", "end", <0>, <1>, "end";
109         };          
110     }; /* qmss */
112     /* CPPI channel and flow ID ranges based on tci6614 cppi_device.c */
113     cppi {
114         srio-rx-ch {
115                 allocator = "integer";
116                 resource-range = <0 16>;
117         };
118         srio-tx-ch {
119                 allocator = "integer";
120                 resource-range = <0 16>;
121         };
122         srio-rx-flow-id {
123                 allocator = "integer";
124                 resource-range = <0 20>;
125         };   
127         aif-rx-ch {
128                 allocator = "tree";
129                 resource-range = <0 129>;
130         };
131         aif-tx-ch {
132                 allocator = "tree";
133                 resource-range = <0 129>;
134         };
135         aif-rx-flow-id {
136                 allocator = "tree";
137                 resource-range = <0 129>;
138         };      
140         fftc-a-rx-ch {
141                 allocator = "integer";
142                 resource-range = <0 4>;
143         };
144         fftc-a-tx-ch {
145                 allocator = "integer";
146                 resource-range = <0 4>;
147         };
148         fftc-a-rx-flow-id {
149                 allocator = "integer";
150                 resource-range = <0 8>;
151         };   
153         fftc-b-rx-ch {
154                 allocator = "integer";
155                 resource-range = <0 4>;
156         };
157         fftc-b-tx-ch {
158                 allocator = "integer";
159                 resource-range = <0 4>;
160         };
161         fftc-b-rx-flow-id {
162                 allocator = "integer";
163                 resource-range = <0 8>;
164         };   
166         pass-rx-ch {
167                 allocator = "integer";
168                 resource-range = <0 23>;
169         };
170         pass-tx-ch {
171                 allocator = "integer";
172                 resource-range = <0 9>;
173         };
174         pass-rx-flow-id {
175                 allocator = "integer";
176                 resource-range = <0 32>;
177         };   
179         qmss-rx-ch {
180                 allocator = "integer";
181                 resource-range = <0 32>;
182         };
183         qmss-tx-ch {
184                 allocator = "integer";
185                 resource-range = <0 32>;
186         };
187         qmss-rx-flow-id {
188                 allocator = "tree";
189                 resource-range = <0 64>;
190         };   
192         bcp-rx-ch {
193                 allocator = "integer";
194                 resource-range = <0 8>;
195         };
196         bcp-tx-ch {
197                 allocator = "integer";
198                 resource-range = <0 8>;
199         };
200         bcp-rx-flow-id {
201                 allocator = "tree";
202                 resource-range = <0 64>;
203         };           
204     }; /* cppi */
206     pa-lut {
207         allocator = "integer";   
208         resource-range = <0 5>;
209     };    
210 };