]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - keystone-rtos/rm-lld.git/blob - device/k2e/policy_dsp_arm.dts
Updated GRL and policies with latest Linux DTB. Also, corrected regular expression...
[keystone-rtos/rm-lld.git] / device / k2e / policy_dsp_arm.dts
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";
19         
20     qmss {
21         control-qm1 {
22             assignments = <0 1>, "iu = (*)";
23         };
24         
25         linkram-control-qm1 {
26             assignments = <0 1>, "(*)";             /* Used by Kernel */
27         };
28         
29         linkram-qm1 {
30             /* linux provided 0x18000 descriptors of linking RAM but uses 0x4000 to 0x6000 */
31             assignments = <0x00000000 0x00004000>, "iu = (*)",
32                           <0x00004000 0x00002000>, "(*)", /* Used by Kernel */
33                           <0x00006000 0x00012000>, "iu = (*)";
34         };
35         
36         memory-regions-qm1 {
37             assignments = <0  12>, "iu = (*)",
38                           <12 3>,  "(*)",             /* Used by Kernel */
39                           <15 49>, "iu = (*)";
40         };
42         LOW_PRIORITY_QUEUE-qm1 {
43             /* this is loosely coupled with accumulator-ch channels 32-47.  These queues are
44              * just suggested to be paired with these channels, the accumulator can be sw
45              * configured to use any queue */
46             assignments = <0 128>,   "iu = (*)", /* suggested for channels 32-35 */
47                           <128 128>, "     (*)", /* used by linux (accumulator-low-#); linux pairs these to channels 36-39 */
48                           <256 256>, "iu = (*)"; /* suggested for channels 40-47 */
49         };
50         GIC400_QUEUE-qm1 {
51             assignments = <528 32>,   "(*)";             /* Used by Kernel */
52         };
53         EDMA_0_QUEUE-qm1 {
54             assignments = <560 10>, "iu = (*)";
55         };
56         EDMA_1_QUEUE-qm1 {
57             assignments = <570 11>, "iu = (*)";
58         };
59         EDMA_2_QUEUE-qm1 {
60             assignments = <581 8>, "iu = (*)";
61         };
62         EDMA_3_QUEUE-qm1 {
63             assignments = <589 16>, "iu = (*)";
64         };
65         EDMA_4_QUEUE-qm1 {
66             assignments = <605 8>, "iu = (*)";
67         };
68         INTC_QUEUE-qm1 {
69             assignments = <652 6>,     "(*)";             /* Used by Kernel */
70         }; 
71         XGE_QUEUE-qm1 {
72             assignments = <692 8>, "iu = (*)";
73         };
74         HIGH_PRIORITY_QUEUE-qm1 {
75             /* this is loosely coupled with accumulator-ch channels 0-15.  These queues are
76              * just suggested to be paired with these channels, the accumulator can be sw
77              * configured to use any queue */
78             assignments = <704 16>, "iu = (*)", /* suggested for channels 0-15 */
79                           <720 8>,  "iu = (*)", /* Declared, but not used, by linux (accumulator-high.values). */ 
80                           <728 8>,  "iu = (*)"; /* suggested for channels 24-31 */
81         };       
82         STARVATION_COUNTER_QUEUE-qm1 {
83             assignments = <736 64>, "iu = (*)";
84         };  
85         INFRASTRUCTURE_QUEUE-qm1 {
86             assignments = <800  12>,   "(*)",             /* Used by Kernel */
87                           <812  20>,   "iu = (*)";
88         }; 
89         PASS_QUEUE-qm1 {
90             assignments = <896 128>, "iu = (*)";       /* used by both kernel and DSP */
91         };
92         GENERAL_PURPOSE_QUEUE-qm1 {
93             assignments = <1024 2976>,  "iu = (*)",
94                           <4000 64>,    "(*)",       /* Used by Kernel */
95                           <4064 2336>,  "iu = (*)",
97                           /* 6400-6477 is taken by linux for qostree2, but DSP can transmit via "fastpath" queues */
98                           <6400 72>,    "u = (*)",   /* qos queues for DSP (fastpath-best-effort, fastpath-hp, 4g-cos#, 3g-cos#, wifi-cos#) use (open by number) not init */
99                           <6472 6>,     "(*)",       /* qos queues for linux (linux-best-effort, linux-cos#, linux-hp) - DSP can't use */
100                           <6478 114>,   "(*)",       /* unconfigured QoS/Linux queues (qos-inputs-2) */
102                           <6592 1408>,  "iu = (*)",
104                           /* 8000-8191 is taken by linux for qostree but DSP can transmit via "fastpath" queues */
105                           <8000 72>,    "u = (*)",   /* qos queues for DSP (fastpath-best-effort, fastpath-hp, 4g-cos#, 3g-cos#, wifi-cos#) use (open by number) not init */
106                           <8072 6>,     "(*)",       /* qos queues for linux (linux-best-effort, linux-cos#, linux-hp) - DSP can't use */
107                           <8078 114>,   "(*)";       /* unconfigured QoS/Linux queues (qos-inputs-1) */
108         };    
109         
110         firmware-pdsp {
111             assignments = <0 1>, "     (*)", /* pdsp0: accumulator 0 downloaded by linux */
112                           <1 1>, "iu = (*)", /* pdsp1: for em scheduler if event machine is used (not downloaded by linux) */
113                           <2 1>, "iu = (*)", /* pdsp2: for accumulator 1 on second intd (not downloaded by linux) */
114                           <3 1>, "     (*)", /* pdsp3: qostree downloaded by linux */
115                           <4 1>, "iu = (*)", /* pdsp4: for em scheduler if event machine is used (not downloaded by linux) */
116                           <5 1>, "iu = (*)", /* pdsp5: for em scheduler if event machine is used (not downloaded by linux) */
117                           <6 1>, "iu = (*)", /* pdsp6: for em router if event machine is used (not downloaded by linux) */
118                           <7 1>, "     (*)"; /* pdsp7: qostree2 downloaded by linux */
119         };        
120         accumulator0-ch { /* accumulator using first INTD */
121             assignments = <0 16>, "iu = (*)",    /* high priority 0-15 available for everyone */      
122                           <16 8>, "iu = (*)",    /* declared but not used by linux, subject to change */
123                           <24 8>, "iu = (*)",    /* last 8 high priority are used by event machine, available in non EM use case */
124                           <32 4>, "iu = (*)",    /* first 4 low priority are used by event machine, available in non EM use case */
125                           <36 4>, "     (*)",    /* next 4 low priority are used by linux (accumulator-low-#) */
126                           <40 8>, "iu = (*)";    /* available for all */
127         };             
128         accumulator1-ch { /* accumulator using second INTD */
129             assignments = <0 48>, "iu = (*)";    /* linux doesn't use it */
130         };             
131     }; /* qmss */
133     cppi {
134         netcp-rx-ch {
135             assignments = <0 91>, "iu = (*)";
136         };
137         netcp-tx-ch {
138             assignments = <0 21>, "iu = (*)";
139         };
140         netcp-rx-flow-id {
141             assignments = <0  1>, "(*)",  /* Used by kernel - netrx0 */
142                           <1  7>, "iu = (*)",
143                           <8  1>, "(*)",  /* Used by kernel - netrx1 */
144                           <9 21>, "iu = (*)",
145                           <31 1>, "(*)";  /* Used by kernel - parx */
146         };   
148         qmss-qm1-rx-ch {
149             assignments = <0 12>, "(*)",   /* Used by kernel */
150                           <12 20>, "iu = (*)";
151         };
152         qmss-qm1-tx-ch {
153             assignments = <0 12>, "(*)", /* Used by kernel */
154                           <12 32>, "iu = (*)";
155         };
156         qmss-qm1-rx-flow-id {
157             assignments = <0 12>, "(*)",    /* Used by kernel */
158                           <12 52>, "iu = (*)";
159         };   
161         netcp-local-rx-ch {
162             assignments = <0 91>, "iu = (*)";
163         };
164         netcp-local-tx-ch {
165             assignments = <0 21>, "iu = (*)";
166         };
167         netcp-local-rx-flow-id {
168             assignments = <0 32>, "iu = (*)";
169         };           
170     }; /* cppi */
172     pa {
173         pa-lut { 
174             assignments = <0 8>, "iu = (*)";
175         };
176         pa-firmware {
177             assignments = <0 1>, "(*)"; /* linux downloads PA firmware */
178         };
179         pa-32bUsrStats {
180             assignments = <64 320>, "iu = (*)",
181                           <384 64>, "     (*)"; /* used by linux */
182         };
183         pa-64bUsrStats {
184             assignments = <0 48>,  "iu = (*)",
185                           <48 16>, "     (*)"; /* used by linux */
186         };
187     }; /* pa */
188 };