]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - keystone-rtos/rm-lld.git/blobdiff - device/k2e/policy_dsp_arm.dts
Synced K2E and K2L DSP+ARM policy file with latest kernel
[keystone-rtos/rm-lld.git] / device / k2e / policy_dsp_arm.dts
index 559ea8e7e74adc89bc7aa8b52576fd34176bb890..9a14bc27d2264317fa05f9952ecac6b30fa2b5e5 100644 (file)
@@ -15,7 +15,8 @@
                       "RM_Client4",
                       "RM_Client5",
                       "RM_Client6",
-                      "RM_Client7";
+                      "RM_Client7",
+                      "RM_Client_NETAPI";
        
     qmss {
         control-qm1 {
             assignments = <0 1>, "(*)";             /* Used by Kernel */
         };
         
-        linkram-qm1 {
-            /* linux provided 0x18000 descriptors of linking RAM but uses 0x4000 to 0x6000 */
-            assignments = <0x00000000 0x00004000>, "iu = (*)",
-                          <0x00004000 0x00002000>, "(*)", /* Used by Kernel */
-                          <0x00006000 0x00012000>, "iu = (*)";
+        linkram-int-qm1 {
+            assignments = <0x00000000 0x00004000>, "iu = (*)";
+        };
+        linkram-ext-qm1 {
+            /* linux provided 0x14000 descriptors of linking RAM but uses 0x4000 to 0x9000 */
+            assignments = <0x00004000 0x00005000>, "(*)", /* used by Kernel */
+                          <0x00009000 0x0000B000>, "iu = (*)";
         };
         
         memory-regions-qm1 {
@@ -48,7 +51,7 @@
                           <256 256>, "iu = (*)"; /* suggested for channels 40-47 */
         };
         GIC400_QUEUE-qm1 {
-            assignments = <528 32>,   "(*)";             /* Used by Kernel */
+            assignments = <528 32>,   "iu = (RM_Client_NETAPI)";             /* Used by Kernel */
         };
         EDMA_0_QUEUE-qm1 {
             assignments = <560 10>, "iu = (*)";
         INTC_QUEUE-qm1 {
             assignments = <652 6>, "iu = (*)";             /* Used by Kernel and DSP */
         }; 
-        XGE_QUEUE-qm1 {
-            assignments = <692 8>, "iu = (*)";
+        SOC_SET0_QUEUE-qm1 {
+            assignments = <658 4>, "     (*)", /* potentially used by kernel */
+                          <662 4>, "iu = (*)"; /* available for user mode lld and dsp */
+        };
+        INTC_SET2_QUEUE-qm1 {
+            assignments = <666 26>, "iu = (*)";
+        }; 
+        XGE_QUEUE-qm1 { 
+            assignments = <692 8>, "iu = (*)";            /* Used by Kernel and DSP */
         };
         HIGH_PRIORITY_QUEUE-qm1 {
             /* this is loosely coupled with accumulator-ch channels 0-15.  These queues are
             assignments = <736 64>, "iu = (*)";
         };  
         INFRASTRUCTURE_QUEUE-qm1 {
-            assignments = <800  12>,   "(*)",             /* Used by Kernel */
-                          <812  20>,   "iu = (*)";
+            assignments = <800  9>,   "(*)",          /* Used by Kernel - 8 (data channel usage irrespective of device) +  1 (channel per DSP core) */
+                          <809 23>,   "iu = (*)";
         }; 
         PASS_QUEUE-qm1 {
-            assignments = <896 128>, "iu = (*)";       /* used by both kernel and DSP */
+            assignments = <896 21>, "iu = (*)";       /* used by both kernel and DSP */
         };
         GENERAL_PURPOSE_QUEUE-qm1 {
             assignments = <1024 2976>,  "iu = (*)",
                           <4000 64>,    "(*)",       /* Used by Kernel */
-                          <4064 2336>,  "iu = (*)",
+                          <4064 31>,    "iu = (*)",
+                          <4095 1>,     "iue = (*)",   /* Queues ending in 0xfff can't be used as return queue (hw reserved) */
+                          <4096 2304>,  "iu = (*)",
 
                           /* 6400-6477 is taken by linux for qostree2, but DSP can transmit via "fastpath" queues */
                           <6400 72>,    "u = (*)",   /* qos queues for DSP (fastpath-best-effort, fastpath-hp, 4g-cos#, 3g-cos#, wifi-cos#) use (open by number) not init */
                           <8000 72>,    "u = (*)",   /* qos queues for DSP (fastpath-best-effort, fastpath-hp, 4g-cos#, 3g-cos#, wifi-cos#) use (open by number) not init */
                           <8072 6>,     "(*)",       /* qos queues for linux (linux-best-effort, linux-cos#, linux-hp) - DSP can't use */
                           <8078 114>,   "(*)";       /* unconfigured QoS/Linux queues (qos-inputs-1) */
+                                                     /* note for q 8191: Queues ending in 0xfff can't be used as return queue (hw reserved) */
         };    
         
         firmware-pdsp {
         accumulator1-ch { /* accumulator using second INTD */
             assignments = <0 48>, "iu = (*)";    /* linux doesn't use it */
         };             
+
+        netss-control-qm1 {
+            assignments = <0 1>, "iu = (*)";
+        };
+        netss-linkram-control-qm1 {
+            assignments = <0 1>, "iu = (*)";
+        };
+        netss-linkram-qm1 {
+            assignments = <0x00000000 0x00004000>, "iu = (*)";
+        };
+        netss-memory-regions-qm1 {
+            assignments = <0 16>, "iu = (*)";
+        };
+
+        netss-control-qm2 {
+            assignments = <0 1>, "iu = (*)";
+        };
+        netss-linkram-control-qm2 {
+            assignments = <0 1>, "iu = (*)";
+        };
+        netss-linkram-qm2 {
+            assignments = <0x00000000 0x00004000>, "iu = (*)";
+        };
+        netss-memory-regions-qm2 {
+            assignments = <0 16>, "iu = (*)";
+        };
+
+        NETSS_PASS_QUEUE-qm1 {
+            assignments = <0 21>, "iu = (*)";
+        };
+        NETSS_GENERAL_PURPOSE_QUEUE-qm1 {
+            assignments = <21 43>, "iu = (*)";
+        };
+        NETSS_GENERAL_PURPOSE_QUEUE-qm2 {
+            assignments = <0 64>, "iu = (*)";
+        };
     }; /* qmss */
 
     cppi {
+        netcp-hw-open {
+            assignments = <0 1>, "iu = (*)";
+        };
         netcp-rx-ch {
-            assignments = <0 91>, "iu = (*)";
+            assignments = <0 91>, "     (*)"; /* initialized by kernel */
         };
         netcp-tx-ch {
-            assignments = <0 21>, "iu = (*)";
+            assignments = <0  19>, "     (*)", /* initialized by kernel, can directly open queuse */
+                          <19  1>, "iu = (*)", /* SA channel.  Linux initializes, but some applications need to enable/disable on fly */
+                          <20  1>, "     (*)"; /* initialized by kernel, can directly open queuse */
         };
         netcp-rx-flow-id {
-            assignments = <0  1>, "(*)",  /* Used by kernel - netrx0 */
-                          <1  7>, "iu = (*)",
-                          <8  1>, "(*)",  /* Used by kernel - netrx1 */
-                          <9 21>, "iu = (*)",
-                          <31 1>, "(*)";  /* Used by kernel - parx */
+            assignments = <0  22>, "iu = (*)", /* available */
+                          <22 10>, "     (*)"; /* used by kernel (netrx0-7, crypto-rx0, parx) */
         };   
 
+        qmss-qm1-hw-open {
+            assignments = <0 1>, "iu = (*)";
+        };
         qmss-qm1-rx-ch {
-            assignments = <0 12>, "(*)",   /* Used by kernel */
-                          <12 20>, "iu = (*)";
+            assignments = <0   9>, "(*)",    /* Used by kernel - 8 (data channel usage irrespective of device) +  1 (channel per DSP core) */
+                          <9  23>, "iu = (*)";
         };
         qmss-qm1-tx-ch {
-            assignments = <0 12>, "(*)", /* Used by kernel */
-                          <12 32>, "iu = (*)";
+            assignments = <0   9>, "(*)",    /* Used by kernel - 8 (data channel usage irrespective of device) +  1 (channel per DSP core) */
+                          <9  23>, "iu = (*)";
         };
         qmss-qm1-rx-flow-id {
-            assignments = <0 12>, "(*)",    /* Used by kernel */
-                          <12 52>, "iu = (*)";
+            assignments = <0   9>, "(*)",    /* Used by kernel - 8 (data channel usage irrespective of device) +  1 (channel per DSP core) */
+                          <9  55>, "iu = (*)";
         };   
 
+        netcp-local-hw-open {
+            assignments = <0 1>, "iu = (*)";
+        };
         netcp-local-rx-ch {
             assignments = <0 91>, "iu = (*)";
         };
         netcp-local-rx-flow-id {
             assignments = <0 32>, "iu = (*)";
         };           
+
+        xge-hw-open {
+            assignments = <0 1>, "iu = (*)";
+        };
+        xge-rx-ch {
+            assignments = <0 16>, "    (*)"; /* initialized by kernel */
+        };
+        xge-tx-ch {
+            assignments = <0 8>, "     (*)"; /* initialized by kernel, directly open the queues */
+        };
+        xge-rx-flow-id {
+            assignments = <0 1>,  "     (*)", /* used by kernel (xgerx0) */
+                          <1 7>,  "iu = (*)", /* available */
+                          <8 1>,  "     (*)", /* used by kernel (xgerx1) */
+                          <9 23>, "iu = (*)"; /* available */
+        };           
     }; /* cppi */
 
     pa {
             assignments = <0 1>, "(*)"; /* linux downloads PA firmware */
         };
         pa-32bUsrStats {
-            assignments = <64 320>, "iu = (*)",
-                          <384 64>, "     (*)"; /* used by linux */
+            assignments = <0 512>, "iu = (*)";
         };
         pa-64bUsrStats {
-            assignments = <0 48>,  "iu = (*)",
-                          <48 16>, "     (*)"; /* used by linux */
+            assignments = <0 256>, "iu = (*)";
         };
     }; /* pa */
 };