[Buildroot] Using PRU

James Albert sjr_ee at yahoo.ca
Thu Dec 14 17:34:05 UTC 2017


Hi,I'm trying to use buildroot 2017.11 with recent Linux 4.13.16 to use the PRUSS on a Beaglebone Black. I think I've turned on all of the PRU, RPMsg and remoteproc settings in buildroot and Linux configs. I also built a custom device tree with the PRUSS enabled. But the pieces aren't all there, and it doesn't look like TI's Hands On training (http://processors.wiki.ti.com/index.php/PRU_Training:_Hands-on_Labs). Is there somewhere I can find up-to-date instructions on getting the PRUSS running when I use buildroot? So much of what I've seen on the web is old (UIO-based) or starts with the Beagleboard or TI trees (I want an embedded environment, not a whole Debian). You people are doing a great job of simplifying, enhancing and refining buildroot, and I thank you. Still, I'm finding it a challenge to understand all of the knobs and buttons. If this is the wrong forum for asking, let me know.
Buildroot and Linux defconfigs are attached. Some other console queries are below. I think the device tree error from dtc is due to some manual fdt changes I did in U-boot. The vi screen cap shows the segment of /sys/firmware/fdt that has the PRUSS.
Regards,Steve.
# ls /sys/bus/platform/devices/40300000.ocmcram       48048000.timer         53500000.aes44d00000.wkup_m3       4804a000.timer         Fixed MDIO bus.044e00000.prcm          4804c000.gpio          alarmtimer44e07000.gpio          48060000.mmc           cpufreq-dt44e09000.serial        480c8000.mailbox       fixedregulator044e0b000.i2c           480ca000.spinlock      leds44e10000.scm           481a0000.spi           ocp44e10000.scm_conf      481ac000.gpio          ocp:l4_wkup at 44c0000044e10650.cpsw-phy-sel  481ae000.gpio          opp-table44e10800.pinmux        481d8000.mmc           oprofile-perf.044e10f90.dma-router    48310000.rng           pmu44e11324.wkup_m3_ipc   49000000.edma          reg-dummy44e35000.wdt           49800000.tptc          serial825044e3e000.rtc           49900000.tptc          soc47400000.usb           49a00000.tptc          soc:mpu4802a000.i2c           4a100000.ethernet      tps65217-bl48042000.timer         4a101000.mdio          tps65217-charger48044000.timer         4a300000.pruss         tps65217-pmic48046000.timer         53100000.sham          tps65217-pwrbutton# find /lib -name *pru*
# find /lib -name *remote*/lib/modules/4.13.16/kernel/drivers/remoteproc/lib/modules/4.13.16/kernel/drivers/remoteproc/remoteproc.ko/lib/modules/4.13.16/kernel/drivers/remoteproc/omap_remoteproc.ko# find /lib -name *rpmsg*/lib/modules/4.13.16/kernel/drivers/rpmsg/lib/modules/4.13.16/kernel/drivers/rpmsg/rpmsg_core.ko/lib/modules/4.13.16/kernel/drivers/rpmsg/rpmsg_char.ko/lib/modules/4.13.16/kernel/drivers/rpmsg/virtio_rpmsg_bus.ko/lib/modules/4.13.16/kernel/samples/rpmsg/lib/modules/4.13.16/kernel/samples/rpmsg/rpmsg_client_sample.ko# find /lib -name *rproc*/lib/modules/4.13.16/kernel/drivers/remoteproc/wkup_m3_rproc.ko# modprobe remoteproc# lsmodModule                  Size  Used by    Tainted: Gremoteproc             32768  0virtio_ring            24576  1 remoteprocvirtio                 16384  1 remoteprocrpmsg_char             16384  0rpmsg_core             16384  1 rpmsg_char# ls /sys/class/remoteproc/# dtc -f /sys/firmware/fdt > fdt.txt<stdout>: ERROR (explicit_phandles): /ocp/l4_wkup at 44c00000/scm at 210000/pinmux at 800/spi1_pins has mismatching 'phandle' and 'linux,phandle' propertiesWarning: Input tree has errors, output forced# vi fdt.txt                        interrupts = <0x6f>;                         reg = <0x48310000 0x2000>;                        interrupts = <0x6f>;                };
                pruss at 4a300000 {                        status = "okay";                        compatible = "ti,am3352-pruss";                        ti,hwmods = "pruss";                        reg = <0x4a300000 0x2000 0x4a302000 0x2000 0x4a310000 0x3000 0x4a326000 0x2000 0x4a                        reg-names = "dram0", "dram1", "shrdram2", "cfg", "iep", "mii_rt";                        #address-cells = <0x1>;                        #size-cells = <0x1>;                        ranges;
                        intc at 4a320000 {                                compatible = "ti,am3352-pruss-intc";                                reg = <0x4a320000 0x2000>;                                reg-names = "intc";                                interrupts = <0x14 0x15 0x16 0x17 0x18 0x19 0x1a 0x1b>;                                interrupt-names = "host2", "host3", "host4", "host5", "host6", "host7", "ho                                interrupt-controller;                                #interrupt-cells = <0x1>;                                linux,phandle = <0x4a>;                                phandle = <0x4a>;                        };
                        pru0 at 4a334000 {                                compatible = "ti,am3352-pru";                                reg = <0x4a334000 0x2000 0x4a322000 0x400 0x4a322400 0x100>;                                reg-names = "iram", "control", "debug";                                interrupt-parent = <0x4a>;                                interrupts = <0x10 0x11>;                                interrupt-names = "vring", "kick";                        };
                        pru1 at 4a338000 {                                compatible = "ti,am3352-pru";                                reg = <0x4a338000 0x2000 0x4a324000 0x400 0x4a324400 0x100>;                                reg-names = "iram", "control", "debug";                                interrupt-parent = <0x4a>;                                interrupts = <0x12 0x13>;                                interrupt-names = "vring", "kick";                        };
                        mdio at 4a332400 {                                compatible = "ti,davinci_mdio";                                reg = <0x4a332400 0x90>;                                clocks = <0x10>;                                clock-names = "fck";                                bus_freq = <0xf4240>;                                #address-cells = <0x1>;                                #size-cells = <0x0>;                                status = "disabled";                        };                };        };
        memory at 80000000 {- fdt.txt 1904/1937 98%
End.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20171214/81c5beff/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: defconfig
Type: application/octet-stream
Size: 1406 bytes
Desc: not available
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20171214/81c5beff/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: linux.defconfig
Type: application/octet-stream
Size: 10410 bytes
Desc: not available
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20171214/81c5beff/attachment-0001.obj>


More information about the buildroot mailing list