GSoC Linux UIO driver for PRU
chrisj at rtems.org
Sat Jul 13 18:42:07 UTC 2019
On 13/7/19 5:16 pm, Nils Hölscher wrote:
> After I made sure that my fdt is correct I wondered why the pruss was still not
> When I researched more about userspace drivers in Linux I found out, that I have
> overseen the pru UIO module in Linux.
> This is the part that links the PRUs to the /dev/uio[0-7].
> Which then would be used by the sources I currently use.
> The UIO source is available here:
> However this requires the linux UIO lib to load the modules and abstract the
> device into a file.
> While researching I also found that BSD has a PRU driver.
> Also this driver is more feature rich as it support PRU debugging.
> The sources can be found her:
> Additionally I found these sources in the FreeBSD tree:
> This code also registers the PRUs in /dev/.
> On the other hand the BSD drivers have no documentation at all.
> These are the code lines that will fail without a file in /dev.
> Linux: https://github.com/nilhoel1/rtems-pru/blob/master/ti/prussdrv.c#L265
> BSD: https://bitbucket.org/rpaulo/libpru/src/5cb7271533a96d177e73492f7cc40fa4b28396a5/ti-pru.c#lines-614
> So my questions are:
> 1. How are drivers registered to /dev in RTEMS? (examples)
I suggest you look at cpukit/include/rtems/io.h and then for examples of this
interface being used in the bsp directory.
> 2. Which driver would be a better starting point to bring pruss support to RTEMS?
The bitbucket set of drivers look pretty good so I think just use them and add
to the beagle bsp.
More information about the devel