On 13/7/19 5:16 pm, Nils Hölscher wrote: > Hi, > > After I made sure that my fdt is correct I wondered why the pruss was still > not > accessible. > 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: > https://github.com/beagleboard/linux/blob/3.8/drivers/uio/uio_pruss.c > 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: > https://bitbucket.org/rpaulo/libpru/src/default/ > Additionally I found these sources in the FreeBSD tree: > https://github.com/freebsd/freebsd/blob/250e158ddf52459661439141407bca505d199c19/sys/arm/ti/ti_pruss.c > 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. Chris _______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel