]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - rpmsg/rpmsg.git/commitdiff
ARM: dts: am57xx: Add PRU system events for virtio
authorNick Saulnier <nsaulnier@ti.com>
Wed, 20 Oct 2021 21:23:56 +0000 (16:23 -0500)
committerSuman Anna <s-anna@ti.com>
Wed, 20 Oct 2021 21:23:56 +0000 (16:23 -0500)
A PRU system event "vring" has been added to each of the PRU nodes in
the PRU-ICSS remote processor subsystem to enable the virtio/rpmsg
communication between MPU and that PRU core. The additions are done
in the common am57-pruss.dtsi, and so are inherited by all the AM57xx
boards.

The PRU system events is the preferred approach over using OMAP
mailboxes, as it eliminates an external peripheral access from
the PRU-side, and keeps the interrupt generation internal to the
PRUSS. The difference from MPU would be minimal in using one
versus the other.

Mailboxes can still be used if desired, but currently there is no
support on firmware-side for the SoC to use mailboxes. Either approach
would require that an appropriate firmware image is loaded/booted on
the PRU.

Signed-off-by: Nick Saulnier <nsaulnier@ti.com>
Signed-off-by: Suman Anna <s-anna@ti.com>
arch/arm/boot/dts/am57-pruss.dtsi

index 419f9c14542651eeca1964b1be428d05d108b4b9..704f68898508f798beb7708f62f7ae55aa5129de 100644 (file)
                                      <0x22400 0x100>;
                                reg-names = "iram", "control", "debug";
                                firmware-name = "am57xx-pru1_0-fw";
+                               interrupt-parent = <&pruss1_intc>;
+                               interrupts = <16 2 2>;
+                               interrupt-names = "vring";
                        };
 
                        pru1_1: pru@38000 {
                                      <0x24400 0x100>;
                                reg-names = "iram", "control", "debug";
                                firmware-name = "am57xx-pru1_1-fw";
+                               interrupt-parent = <&pruss1_intc>;
+                               interrupts = <18 3 3>;
+                               interrupt-names = "vring";
                        };
 
                        pruss1_mdio: mdio@32400 {
                                      <0x22400 0x100>;
                                reg-names = "iram", "control", "debug";
                                firmware-name = "am57xx-pru2_0-fw";
+                               interrupt-parent = <&pruss2_intc>;
+                               interrupts = <16 2 2>;
+                               interrupt-names = "vring";
                        };
 
                        pru2_1: pru@38000 {
                                      <0x24400 0x100>;
                                reg-names = "iram", "control", "debug";
                                firmware-name = "am57xx-pru2_1-fw";
+                               interrupt-parent = <&pruss2_intc>;
+                               interrupts = <18 3 3>;
+                               interrupt-names = "vring";
                        };
 
                        pruss2_mdio: mdio@32400 {