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.