__halt() call can`t be detected by prussdrv_pru_wait_event

Hi,

I`m having troubles with pru c code. My BBG is running the Bone-Debian 7.9 eMMC (2015-11-03-4gb) image, which Kernel Version “Linux 3.8.13-bone79 armv7l” and my host machine is a Ubuntu 14.04 LTS 64 bits virtual machine with ti-processor-sdk-linux-am335x-evm-02.00.01.07 installed.

I follow this guide to start with the PRU development, http://www.michaelcantux.com/setting-up-pru-on-the-beaglebone-black/, and I’m able to execute am335x_pru_package examples with this output:

INFO: Starting PRU_memAccessPRUDataRam example.
INFO: Initializing example.
INFO: Executing example.
INFO: Waiting for HALT command.
INFO: PRU completed transfer.
Example executed successfully.

The problem comes when I want to do the same with c code examples that come in the sdk ti-processor-sdk-linux-am335x-evm-02.00.01.07/example-applications/pru-icss-4.0.1/examples/am335x. I can compile them without error following some tips from http://processors.wiki.ti.com/index.php/PRU_Training:_Hands-on_Labs guide.

The .out file from this compilation I transformed to binary with the following code:

/opt/ti/ccsv6/tools/compiler/ti-cgt-pru_2.1.2/bin/hexpru /opt/ti/ccsv6/tools/compiler/ti-cgt-pru_2.1.2/bin.cmd pruSitara.out

With this I get the data.bin and text.bin files that I use in the same main application code. But the output of this is

INFO: Starting PRU_memAccessPRUDataRam example.
INFO: Initializing example.
INFO: Executing example.
INFO: Waiting for HALT command.

The main application code is blocked at prussdrv_pru_wait_event. But I can see that the code into the PRU is running adding some leds on code into it. So the PRU code is executed and finished but the main application can`t get this event.

I am newbie, so I’ll probably not considering something.Before posting more information about the code I am using in the examples, could you indicate me if I am following good steps to get run an application in the PRU called from the main application?

Thanks all!
Aitor