The main reasons for a failing prussdrv_open() are
1. the driver uio_pruss didn't load
1. check lsmod if uio_pruss is listed
2. check dmesg for errors
2. the user has no write access to the interupts /dev/uio[0-7]
1. check your write access by ls -l /dev/uio*
2. Use ether sudo for your operation or adapt the uio* devices by
chmod (ie. in a boot script)
BR
Am Freitag, 23. März 2018 02:37:59 UTC+1 schrieb [email protected]:
>
> Hi TJF,
>
> Thank you for such a direct and concise solution! As I mentioned in one my
> earlier replies today, I had some trouble getting libprussdrv to work on
> 4.9 because prussdrv_open() failed everytime I tried to use it. But It's
> been a while and I'm game to try it again with a fresh image and
> everything, so I'll try all this tonight and hopefully I get somewhere :)
>
> Thank you!
> Evan
>
> On Thursday, March 1, 2018 at 11:27:01 AM UTC-8, TJF wrote:
>>
>> Hi Evan, I'm still with you!
>>
>> The solution is drop rproc and use libprussdrv instead. You'll find
>> everything you need, just use it out-of-the-shelf. Everything is explained
>> in the docs. The steps are:
>>
>> 1. compile your PRU code by pasm assembler
>> 2. load the uio_pruss driver with suiting parameter extram_pool_sz=
>> 3. adapt your C code
>>
>>
>> - make a code frame to load the pasm binary to PRU (copy/paste from
>> one of the examples)
>> - get ERam pointer by function prussdrv_map_extmem()
>> - write your integer data to that pointer from ARM side
>> - use function prussdrv_get_phys_addr() to get the physical address
>> - pass the physical address to PRU (ie via DRam)
>> - read the integers from there from PRU side
>>
>> Everything gets easy when you use the matching tools.
>>
>
--
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].
To view this discussion on the web visit
https://groups.google.com/d/msgid/beagleboard/f077429a-277b-4a51-997a-8a465e25b7a3%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.