From: Tero Kristo <t-kri...@ti.com>

Add documentation for the Texas Instruments PRU application nodes.
These are used to configure specific user applications for PRU instances.

Signed-off-by: Tero Kristo <t-kri...@ti.com>
[s-a...@ti.com: some binding updates]
Signed-off-by: Suman Anna <s-a...@ti.com>
Signed-off-by: Roger Quadros <rog...@ti.com>
---
 .../devicetree/bindings/soc/ti/ti,pruss.txt        | 43 ++++++++++++++++++++++
 1 file changed, 43 insertions(+)

diff --git a/Documentation/devicetree/bindings/soc/ti/ti,pruss.txt 
b/Documentation/devicetree/bindings/soc/ti/ti,pruss.txt
index 3e5f32f..94c91ee 100644
--- a/Documentation/devicetree/bindings/soc/ti/ti,pruss.txt
+++ b/Documentation/devicetree/bindings/soc/ti/ti,pruss.txt
@@ -210,6 +210,38 @@ used in TI Davinci SoCs. Please refer to the corresponding 
binding document,
 Documentation/devicetree/bindings/net/davinci-mdio.txt for details.
 
 
+Application/User Nodes
+=======================
+A PRU application/user node typically uses one or more PRU device nodes to
+implement a PRU application/functionality. Each application/client node would
+need a reference to at least a PRU node, and optionally pass some configuration
+parameters.
+
+Required Properties:
+--------------------
+- prus                 : phandles to the PRU nodes used
+
+Optional Properties:
+--------------------
+- firmware-name        : firmwares for the PRU cores, the default firmware
+                         for the core from the PRU node will be used if not
+                         provided. The firmware names should correspond to
+                         the PRU cores listed in the 'prus' property
+- ti,pruss-gp-mux-sel  : array of values for the GP_MUX_SEL under PRUSS_GPCFG
+                         register for a PRU. This selects the internal muxing
+                         scheme for the PRU instance. If not provided, the
+                         default out-of-reset value (0) for the PRU core is
+                         used. Values should correspond to the PRU cores listed
+                         in the 'prus' property
+- ti,pru-interrupt-map : PRU interrupt mappings, containing an array of entries
+                         with each entry consisting of 4 cell-values. First one
+                         is an index towards the "prus" property to identify 
the
+                         PRU core for the interrupt map, second is the PRU
+                         System Event id, third is the PRU interrupt channel id
+                         and fourth is the PRU host interrupt id. If provided,
+                         this map will supercede any other configuration
+                         provided through firmware
+
 Example:
 ========
 1.     /* AM33xx PRU-ICSS */
@@ -397,3 +429,14 @@ Example:
                        ...
                };
        };
+
+3:     /* PRU application node example */
+       app_node: app_node {
+               prus = <&pru1_0>, <&pru1_1>;
+               firmware-name = "pruss-app-fw", "pruss-app-fw-2";
+               ti,pruss-gp-mux-sel = <2>, <1>;
+               /* setup interrupts for prus:
+                  prus[0] => pru1_0: ev=16, chnl=2, host-irq=7,
+                  prus[1] => pru1_1: ev=19, chnl=1, host-irq=3 */
+               ti,pru-interrupt-map = <0 16 2 7 >, <1 19 1 3>;
+       }
-- 
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki

Reply via email to