Hi, finally, I just tried the version 4.1.21-bone-rt-r20 of the kernel and 
for me it's work for me.
I figured this out from this post : 
https://groups.google.com/forum/m/#!topic/beagleboard/p8aD2oXe9Ks

So you have to use the version version 4.1.21-bone-rt-r20 and superior or 
the v4.1.18-ti-r56 and superior.
Please post it if it's also work for you. Thanks

Enjoy !
Vincent

Le vendredi 8 avril 2016 11:35:29 UTC+2, Le Costaouec Vincent a écrit :
>
> Thanks guys for yours different interesting note.
>
> I'have some few update :
>
> I succeed to figure out how to solve the error :
> prussdrv_open() failed
>
> The issue was that the function work like that : 
> int prussdrv_open(unsigned int host_interrupt)
> {
>     char name[PRUSS_UIO_PRAM_PATH_LEN];
>     if (!prussdrv.fd[host_interrupt]) {
>         sprintf(name, "/dev/uio%d", host_interrupt);
>         prussdrv.fd[host_interrupt] = open(name, O_RDWR | O_SYNC);
>         return __prussdrv_memmap_init();
>     } else {
>         return -1;
>
>     }
> }
> So it was trying  to load /dev/uio0 but when I look for it, it was not 
> there.
> So I change to this dts :  
> https://github.com/beagleboard/bb.org-overlays/blob/master/src/arm/BB-BONE-REPLICAP-00B1.dts
> And it's succeed to create the /dev/uio0.
>
> However, now I'm facing new issue when I'm trying to execute the different 
> programs :
>
> root@beagle01:~/labs/bbb-pru/simple-tests# sudo ./major-tom-pru 
> [167188.892328] Unhandled fault: external abort on non-linefetch (0x1018) 
> at 0xb6da3000
> [167188.900146] pgd = ddde8000
> [167188.902965] [b6da3000] *pgd=9dc30831, *pte=4a304303, *ppte=4a304a33
>
>
> root@beagle01:~/labs/exploringBB/chp13/fixedPRUClock# sudo ./fixedclock 
> [167484.486691] Unhandled fault: external abort on non-linefetch (0x1018) 
> at 0xb6e32000
> [167484.494512] pgd = dcd78000
> [167484.497330] [b6e32000] *pgd=9df94831, *pte=4a304303, *ppte=4a304a33
>
>
>
> It's seem to appears when this function is launch :
> int __pruss_detect_hw_version(unsigned int *pruss_io)
> {
>
>     if (pruss_io[(AM18XX_INTC_PHYS_BASE - AM18XX_DATARAM0_PHYS_BASE) >> 2]
>         == AM18XX_PRUSS_INTC_REV)
>         return PRUSS_V1;
>     else {
>         if (pruss_io
>
>             [(AM33XX_INTC_PHYS_BASE - AM33XX_DATARAM0_PHYS_BASE) >> 2] ==
>             AM33XX_PRUSS_INTC_REV)
>             return PRUSS_V2;
>         else
>             return -1;
>     }
> }
>
> Especially On the first case of the if.
>
> It was launch by :
> prussdrv.pru0_dataram_base =
>         mmap(0, prussdrv.pruss_map_size, PROT_READ | PROT_WRITE,
>              MAP_SHARED, prussdrv.mmap_fd, PRUSS_UIO_MAP_OFFSET_PRUSS);
>     prussdrv.version =
>         __pruss_detect_hw_version(prussdrv.pru0_dataram_base);
>
> So as before, if anyone have a clue on what's going wrong :-)
>
> Thanks by advance
> Regards 
> Vincent
>
>
>
>
>  
>
>>
>> On Tuesday, April 5, 2016 at 10:22:36 AM UTC-5, Le Costaouec Vincent 
>> wrote:
>>
>>
>> I forgot to indicate the release on which I'm working on :  
>> #  lsb_release -da
>>
>> Distributor ID:    Debian
>> Description:    Debian GNU/Linux 8.3 (jessie)
>> Release:    8.3
>> Codename:    jessie
>>
>> Is anyone have already work on the PRU on this kernel version ?
>> Thanks by advance.
>> Regards.
>> Vincent
>>
>>
>> Le mardi 5 avril 2016 11:33:06 UTC+2, Le Costaouec Vincent a écrit :
>>
>> Hello, 
>>
>> I'm currently trying to configure and use the PRU of the BBB.
>>
>> So I've tried two different method to do so however, with none of them I 
>> get succeed and I don't really 
>> understand why.
>>
>> 1) First method (from Derek Molloy book) :
>>
>> http://exploringbeaglebone.com/chapter13/
>> So I have tried to do the PRU-based Clock Signal Generators, because this 
>> one 
>> do not required any additional material except an oscilloscope.
>>
>> So I had load the EBB-PRU-Example DTS overlay (provided in attachment), 
>> and I have receive the following message : 
>> # echo EBB-PRU-Example > $SLOTS
>> [   51.417438] bone_capemgr bone_capemgr: part_number 'EBB-PRU-Example', 
>> version 'N/A'
>> [   51.425297] bone_capemgr bone_capemgr: slot #4: override
>> [   51.430665] bone_capemgr bone_capemgr: Using override eeprom data at 
>> slot 4
>> [   51.437772] bone_capemgr bone_capemgr: slot #4: 'Override Board 
>> Name,00A0,Override Manuf,EBB-PRU-Example'
>> [   52.526058] gpio-of-helper ocp:gpio_helper: ready
>> [   52.531052] bone_capemgr bone_capemgr: slot #4: dtbo 
>> 'EBB-PRU-Example-00A0.dtbo' loaded; overlay id #0
>>
>>
>>
>> # cat $SLOTS
>>  0: PF----  -1 
>>  1: PF----  -1 
>>  2: PF----  -1 
>>  3: PF----  -1 
>>  4: P-O-L-   0 Override Board Name,00A0,Override Manuf,EBB-PRU-Example
>>
>> I have also check :
>> # lsmod |grep uio
>> uio_pruss               4590  0 
>> uio_pdrv_genirq         3317  0 
>> uio                     8319  2 uio_pruss,uio_pdrv_genirq
>>
>>
>> root@beagle01:~/labs/exploringBB/chp13/fixedPRUClock# ./build 
>> PRU Assembler Version 0.86
>> Copyright (C) 2005-2013 by Texas Instruments Inc.
>> Pass 2 : 0 Error(s), 0 Warning(s)
>> Writing Code Image of 12 word(s)
>>
>> # sudo ./fixedclock
>> However, when I tried to monitor what append on pin P9_27 but I didn't 
>> observed anything on this pins.
>>
>>
>>
>>
>> 2) Second method (from the Beagle bone black cookbook written by Charles 
>> A Hamilton) :
>>
>> This time, I have use this DTS : BB-BONE-PRU-01 (
>> https://github.com/jadonk/cape-firmware/blob/master/arch/arm/boot/dts/BB-BONE-PRU-01-00A0.dts
>> )
>> In addition, I have tried to used this code :
>> https://github.com/HudsonWerks/bbb-pru
>>
>> So first I tried to add the DTS, I received this message : 
>> # echo EBB-PRU-Exampecho BB-BONE-PRU-01 > $SLOTS
>> [59800.649273] bone_capemgr bone_capemgr: part_number 'BB-BONE-PRU-01', 
>> version 'N/A'
>> [59800.656947] bone_capemgr bone_capemgr: slot #12: override
>> [59800.662528] bone_capemgr bone_capemgr: Using override eeprom data at 
>> slot 12
>> [59800.669680] bone_capemgr bone_capemgr: slot #12: 'Override Board 
>> Name,00A0,Override Manuf,BB-BONE-PRU-01'
>> [59800.699368] ------------[ cut here ]------------
>> [59800.704089] WARNING: CPU: 0 PID: 619 at arch/arm/mach-omap2/omap_hwmod
>> .c:2087 _enable+0x201/0x210()
>> [59800.713188] omap_hwmod: pruss: enabled state can only be entered from 
>> initialized, idle, or disabled state
>> [59800.722894] Modules linked in: uio_pruss usb_f_ecm g_ether 
>> usb_f_rndis u_ether libcomposite pvrsrvkm(O) omap_sham omap_aes 
>> snd_soc_davinci_mcasp snd_soc_edma snd_soc_omap omap_rng rng_core 
>> snd_soc_core snd_compress snd_pcm_dmaengine snd_pcm snd_timer snd soundcore 
>> evdev spi_omap2_mcspi uio_pdrv_genirq uio leds_gpio
>> [59800.751252] CPU: 0 PID: 619 Comm: bash Tainted: G        W  O    4.1.
>> 19-bone20 #1
>> [59800.758778] Hardware name: Generic AM33XX (Flattened Device Tree)
>> [59800.764974] [<c0012f39>] (unwind_backtrace) from [<c00110a9>] (
>> show_stack+0x11/0x14)
>> [59800.772791] [<c00110a9>] (show_stack) from [<c002e5b7>] (
>> warn_slowpath_common+
>>
>> ...
>
>

-- 
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 beagleboard+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to