Hi,
I'm currently running a 3.14 PREEMPT_RT build based of Robert C Nelsons 
repository. I've got GPIO and uart up and running. And now my attention has 
turned to the PRU. The 3.14 build does not have a capemanager so i setup my 
device trees at build.
I based my PRU work of the old PRU patch: 
https://github.com/beagleboard/kernel/blob/3.12/patches/pru/0001-These-are-the-patches-necessary-for-enabling-the-PRU.patchh
Now, booting gives me no error messages from uio_pruss. And uio0-7 appears 
in /dev/. However, when running a test project (which ran perfectly fine 
under non-modified 3.8 kernel) prussdrv_open() failes: Bus error

This happens every time prussdrv_open tries to read from its memory mapped 
areas like:

    if (pruss_io[(AM18XX_INTC_PHYS_BASE - AM18XX_DATARAM0_PHYS_BASE) >> 2]
        == AM18XX_PRUSS_INTC_REV)



Now the pruss is defined in am33xx.dtsi:

        pruss: pruss@4a300000 {
            compatible = "ti,pruss-v2";
            ti,hwmods = "pruss";
            ti,deassert-hard-reset = "pruss", "pruss";
            reg = <0x4a300000 0x080000>;
            ti,pintc-offset = <0x20000>;
            interrupt-parent = <&intc>;
            status = "okay";
            interrupts = <20 21 22 23 24 25 26 27>;
        };

And one of my dtsi include files to the am335x-boneblack.dts enables it:

       &pruss    {  
              status = "okay"; 
              pinctrl-names = "default";
              pinctrl-0 = <&pru_gpio_pins>; 
       };

I then modprobe uio_pruss before running the test application.

I have little clue how to fix this, so any pointers or help would be much 
appreciated:)

-- 
For more options, visit http://beagleboard.org/discuss
--- 
You received this message because you are subscribed to the Google Groups 
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to