1 /dts-v1/;
3 /* Keystone II policy containing reserving resources used by Linux Kernel */
5 / {
6 /* Valid instance list contains instance names used within TI example projects
7 * utilizing RM. The list can be modified as needed by applications integrating
8 * RM. For an RM instance to be given permissions the name used to initialize it
9 * must be present in this list */
10 valid-instances = "RM_Server",
11 "RM_Client0",
12 "RM_Client1",
13 "RM_Client2",
14 "RM_Client3",
15 "RM_Client4",
16 "RM_Client5",
17 "RM_Client6",
18 "RM_Client7";
20 qmss {
21 control-qm1 {
22 assignments = <0 1>, "iu = (*)";
23 };
25 linkram-control-qm1 {
26 assignments = <0 1>, "(*)"; /* Used by Kernel */
27 };
29 linkram-int-qm1 {
30 /* linux provided 0x14000 descriptors of linking RAM but uses 0x4000 to 0x6000 */
31 assignments = <0x00000000 0x00004000>, "iu = (*)";
32 };
33 linkram-ext-qm1 {
34 /* linux provided 0x14000 descriptors of linking RAM but uses 0x4000 to 0x6000 */
35 assignments = <0x00004000 0x00002000>, "(*)", /* used by Kernel */
36 <0x00006000 0x0000E000>, "iu = (*)";
37 };
39 memory-regions-qm1 {
40 assignments = <0 12>, "iu = (*)",
41 <12 3>, "(*)", /* Used by Kernel */
42 <15 49>, "iu = (*)";
43 };
45 LOW_PRIORITY_QUEUE-qm1 {
46 /* this is loosely coupled with accumulator-ch channels 32-47. These queues are
47 * just suggested to be paired with these channels, the accumulator can be sw
48 * configured to use any queue */
49 assignments = <0 128>, "iu = (*)", /* suggested for channels 32-35 */
50 <128 128>, " (*)", /* used by linux (accumulator-low-#); linux pairs these to channels 36-39 */
51 <256 256>, "iu = (*)"; /* suggested for channels 40-47 */
52 };
53 GIC400_QUEUE-qm1 {
54 assignments = <528 32>, "(*)"; /* Used by Kernel */
55 };
56 EDMA_0_QUEUE-qm1 {
57 assignments = <560 10>, "iu = (*)";
58 };
59 EDMA_1_QUEUE-qm1 {
60 assignments = <570 11>, "iu = (*)";
61 };
62 EDMA_2_QUEUE-qm1 {
63 assignments = <581 8>, "iu = (*)";
64 };
65 EDMA_3_QUEUE-qm1 {
66 assignments = <589 16>, "iu = (*)";
67 };
68 EDMA_4_QUEUE-qm1 {
69 assignments = <605 8>, "iu = (*)";
70 };
71 INTC_QUEUE-qm1 {
72 assignments = <652 6>, "iu = (*)"; /* Used by Kernel and DSP */
73 };
74 SOC_SET0_QUEUE-qm1 {
75 assignments = <658 8>, " (*)"; /* Used by Kernel */
76 };
77 INTC_SET2_QUEUE-qm1 {
78 assignments = <666 26>, "iu = (*)";
79 };
80 XGE_QUEUE-qm1 {
81 assignments = <692 8>, "iu = (*)"; /* Used by Kernel and DSP */
82 };
83 HIGH_PRIORITY_QUEUE-qm1 {
84 /* this is loosely coupled with accumulator-ch channels 0-15. These queues are
85 * just suggested to be paired with these channels, the accumulator can be sw
86 * configured to use any queue */
87 assignments = <704 16>, "iu = (*)", /* suggested for channels 0-15 */
88 <720 8>, "iu = (*)", /* Declared, but not used, by linux (accumulator-high.values). */
89 <728 8>, "iu = (*)"; /* suggested for channels 24-31 */
90 };
91 STARVATION_COUNTER_QUEUE-qm1 {
92 assignments = <736 64>, "iu = (*)";
93 };
94 INFRASTRUCTURE_QUEUE-qm1 {
95 assignments = <800 2>, "(*)", /* Used by Kernel */
96 <802 30>, "iu = (*)";
97 };
98 PASS_QUEUE-qm1 {
99 assignments = <896 21>, "iu = (*)"; /* used by both kernel and DSP */
100 };
101 GENERAL_PURPOSE_QUEUE-qm1 {
102 assignments = <1024 2976>, "iu = (*)",
103 <4000 64>, "(*)", /* Used by Kernel */
104 <4064 2336>, "iu = (*)",
106 /* 6400-6477 is taken by linux for qostree2, but DSP can transmit via "fastpath" queues */
107 <6400 72>, "u = (*)", /* qos queues for DSP (fastpath-best-effort, fastpath-hp, 4g-cos#, 3g-cos#, wifi-cos#) use (open by number) not init */
108 <6472 6>, "(*)", /* qos queues for linux (linux-best-effort, linux-cos#, linux-hp) - DSP can't use */
109 <6478 114>, "(*)", /* unconfigured QoS/Linux queues (qos-inputs-2) */
111 <6592 1408>, "iu = (*)",
113 /* 8000-8191 is taken by linux for qostree but DSP can transmit via "fastpath" queues */
114 <8000 72>, "u = (*)", /* qos queues for DSP (fastpath-best-effort, fastpath-hp, 4g-cos#, 3g-cos#, wifi-cos#) use (open by number) not init */
115 <8072 6>, "(*)", /* qos queues for linux (linux-best-effort, linux-cos#, linux-hp) - DSP can't use */
116 <8078 114>, "(*)"; /* unconfigured QoS/Linux queues (qos-inputs-1) */
117 };
119 firmware-pdsp {
120 assignments = <0 1>, " (*)", /* pdsp0: accumulator 0 downloaded by linux */
121 <1 1>, "iu = (*)", /* pdsp1: for em scheduler if event machine is used (not downloaded by linux) */
122 <2 1>, "iu = (*)", /* pdsp2: for accumulator 1 on second intd (not downloaded by linux) */
123 <3 1>, " (*)", /* pdsp3: qostree downloaded by linux */
124 <4 1>, "iu = (*)", /* pdsp4: for em scheduler if event machine is used (not downloaded by linux) */
125 <5 1>, "iu = (*)", /* pdsp5: for em scheduler if event machine is used (not downloaded by linux) */
126 <6 1>, "iu = (*)", /* pdsp6: for em router if event machine is used (not downloaded by linux) */
127 <7 1>, " (*)"; /* pdsp7: qostree2 downloaded by linux */
128 };
129 accumulator0-ch { /* accumulator using first INTD */
130 assignments = <0 16>, "iu = (*)", /* high priority 0-15 available for everyone */
131 <16 8>, "iu = (*)", /* declared but not used by linux, subject to change */
132 <24 8>, "iu = (*)", /* last 8 high priority are used by event machine, available in non EM use case */
133 <32 4>, "iu = (*)", /* first 4 low priority are used by event machine, available in non EM use case */
134 <36 4>, " (*)", /* next 4 low priority are used by linux (accumulator-low-#) */
135 <40 8>, "iu = (*)"; /* available for all */
136 };
137 accumulator1-ch { /* accumulator using second INTD */
138 assignments = <0 48>, "iu = (*)"; /* linux doesn't use it */
139 };
140 }; /* qmss */
142 cppi {
143 netcp-rx-ch {
144 assignments = <0 91>, "iu = (*)";
145 };
146 netcp-tx-ch {
147 assignments = <0 21>, "iu = (*)";
148 };
149 netcp-rx-flow-id {
150 assignments = <0 1>, "(*)", /* Used by kernel - netrx0 */
151 <1 7>, "iu = (*)",
152 <8 1>, "(*)", /* Used by kernel - netrx1 */
153 <9 21>, "iu = (*)",
154 <31 1>, "(*)"; /* Used by kernel - parx */
155 };
157 qmss-qm1-rx-ch {
158 assignments = <0 12>, "(*)", /* Used by kernel */
159 <12 20>, "iu = (*)";
160 };
161 qmss-qm1-tx-ch {
162 assignments = <0 12>, "(*)", /* Used by kernel */
163 <12 32>, "iu = (*)";
164 };
165 qmss-qm1-rx-flow-id {
166 assignments = <0 12>, "(*)", /* Used by kernel */
167 <12 52>, "iu = (*)";
168 };
170 netcp-local-rx-ch {
171 assignments = <0 91>, "iu = (*)";
172 };
173 netcp-local-tx-ch {
174 assignments = <0 21>, "iu = (*)";
175 };
176 netcp-local-rx-flow-id {
177 assignments = <0 32>, "iu = (*)";
178 };
180 xge-rx-ch {
181 assignments = <0 16>, " (*)"; /* initialized by kernel */
182 };
183 xge-tx-ch {
184 assignments = <0 8>, " (*)"; /* initialized by kernel, directly open the queues */
185 };
186 xge-rx-flow-id {
187 assignments = <0 1>, " (*)", /* used by kernel (xgerx0) */
188 <1 7>, "iu = (*)", /* available */
189 <8 1>, " (*)", /* used by kernel (xgerx1) */
190 <9 23>, "iu = (*)"; /* available */
191 };
192 }; /* cppi */
194 pa {
195 pa-lut {
196 assignments = <0 8>, "iu = (*)";
197 };
198 pa-firmware {
199 assignments = <0 1>, "(*)"; /* linux downloads PA firmware */
200 };
201 pa-32bUsrStats {
202 assignments = <64 320>, "iu = (*)",
203 <384 64>, " (*)"; /* used by linux */
204 };
205 pa-64bUsrStats {
206 assignments = <0 48>, "iu = (*)",
207 <48 16>, " (*)"; /* used by linux */
208 };
209 }; /* pa */
210 };