What is 'violates parallel usage rules' error?

If you have a simple question and just want an answer.
leoW
Newbie
Posts: 1
Joined: Tue Jan 28, 2014 3:46 pm

What is 'violates parallel usage rules' error?

Post by leoW »

Hi everyone,

 

this is my first time here.

I am evaluating USB Audio possibiliy with USB Audio 2.0  MC Reference Design and the entired eval software 'app_usb_aud_l2'.

I think I dont understand the principal mechanism of using the parallelism.

I am trying to access the Led ports within this demosoftware to easily switch on / off any led on the board which are locatet at --> on stdcore[CORE_AUD] : out port p_led = XS1_PORT_8B;

I created a new thread in Main which calls a function within an other file in sub vendor.

Within that function I tried to call new function in led.xc which should alter the leds out port p_led following error message appears:

.././src/main.xc:170: error: use of `ledValue' violates parallel usage rules
.././src/vendor/leds.xc:78: error: previously used here (bytes 0..2)

Could anybody tell me what causes this problem

 

Thanks

Leo
 



User avatar
sethu_jangala
XCore Expert
Posts: 589
Joined: Wed Feb 29, 2012 10:03 am

Post by sethu_jangala »

If you try to use the same resource from two or more different cores, then you will see this error. From the error it looks like the variable ledValue is being called in two Cores. You cannot use same variable in two different cores that run in parallel.