Signal 'ET_ILLEGAL_RESOURCE' received??

Technical questions regarding the XTC tools and programming with XMOS.
muntablues
Active Member
Posts: 34
Joined: Tue Dec 20, 2011 2:45 pm

Post by muntablues »

I don't have a DJ kit so I can not try it, but Audio 2.0 (L1) ref. design works fine with 6.10rc3. If I test a simple led blink code debugger is working fine, so the debugger and so on should be fine.

I will assemble two other boards and test them in short.

But as I already said, I use 6.1rc3 without any changes. I just build "app_usb_aud_skc_su1" (I hope this project is the correct one) with CONFIG=2ioxs and debug this one...

Ans THANKS for you help!!!

MB


muntablues
Active Member
Posts: 34
Joined: Tue Dec 20, 2011 2:45 pm

Post by muntablues »

I have testet an other board in the meantime with the same result. So I think I have a little problem ;-)

I am testing only a blank board (without audio codec). Could it be that I get a problem if the i2c slave is missing?
muntablues
Active Member
Posts: 34
Joined: Tue Dec 20, 2011 2:45 pm

Post by muntablues »

For ifno: I saw that USB D+ and D- connection is wrong and fixed it on one board, but the exception still exists...
peter
XCore Addict
Posts: 230
Joined: Wed Mar 10, 2010 12:46 pm

Post by peter »

As was mentioned earlier by segher, the exception you are seeing (ILLEGAL_RESOURCE on freeing of a channel) indicates that the channel still has data in it. This should only happen if something (e.g. boot modes or XN file) mean the system boots incorrectly for the actual system you have.

You mention using the L1 reference design and the app_usb_aud_skc_su1 code. These use two different devices and therefore the binary from one will not run on the other. Can you confirm which device you have on your board. Maybe you should try the app_usb_aud_l1.
muntablues
Active Member
Posts: 34
Joined: Tue Dec 20, 2011 2:45 pm

Post by muntablues »

For L1 ref design i use the other project but most of the parts are shared. It was just to test the debugger and so on.

OK if there is a boot error, what can be wrong? Is there a error with my flash?

Thanks MB
muntablues
Active Member
Posts: 34
Joined: Tue Dec 20, 2011 2:45 pm

Post by muntablues »

Here is my XN file and I am wondering about the flash type. I tried to change it to M25P40 but no luck. Maybe you see an error...

Code: Select all

<?xml version="1.0" encoding="UTF-8"?>
<Network xmlns="http://www.xmos.com"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://www.xmos.com http://www.xmos.com">

  <Declarations>
    <Declaration>core stdcore[1]</Declaration>
    <Declaration>core xs1_su</Declaration>
  </Declarations>

  <Packages>
    <Package Id="P1" Type="XS1-SU01A-FB96">
      <Nodes>
        
        <Node Id="0" Type="XS1-L1A" InPackageId="0" Oscillator="24MHz" SystemFrequency="500MHz" ReferenceFrequency="100MHz">
          <Boot>
            <Source Location="SPI:bootFlash"/>
          </Boot>
          <Core Number="0" Reference="stdcore[0]">
            <Port Location="XS1_PORT_1A"  Name="PORT_SPI_MISO"/>
            <Port Location="XS1_PORT_1B"  Name="PORT_SPI_SS"/>
            <Port Location="XS1_PORT_1C"  Name="PORT_SPI_CLK"/>
            <Port Location="XS1_PORT_1D"  Name="PORT_SPI_MOSI"/>
            <Port Location="XS1_PORT_1A"  Name="PORT_I2S_BCLK"/>
            <Port Location="XS1_PORT_1B"  Name="PORT_SPDIF_OUT"/>
            <Port Location="XS1_PORT_1C"  Name="PORT_I2S_DAC1"/>
            <Port Location="XS1_PORT_1D"  Name="PORT_I2S_DAC0"/>
            <Port Location="XS1_PORT_1E"  Name="PORT_MCLK_IN"/>
            <Port Location="XS1_PORT_1F"  Name="PORT_MIDI_IN"/>
            <Port Location="XS1_PORT_1G"  Name="PORT_I2S_ADC0"/>
            <Port Location="XS1_PORT_1I"  Name="PORT_I2S_LRCLK"/>
            <Port Location="XS1_PORT_1L"  Name="PORT_I2S_ADC1"/>
            <Port Location="XS1_PORT_8D"  Name="PORT_MIDI_OUT"/>
            <Port Location="XS1_PORT_16B"  Name="PORT_MCLK_COUNT"/>
          </Core>
        </Node>
        <Node Id="1" InPackageId="1" Type="periph:XS1-SU" Reference="xs1_su" Oscillator="24MHz">
            <Service Proto="xs1_su_adc_service(chanend c_adc)">
                <Chanend Identifier="c_adc" end="2" remote="5"/>
            </Service>
        </Node> 
      </Nodes>
      <Links>
        <Link Encoding="5wire">
          <LinkEndpoint NodeId="0" Link="XLH" Delays="52clk,52clk"/>
          <LinkEndpoint NodeId="1" Link="XLC" Delays="1clk,1clk"/>
        </Link>
      


        <!--XSCOPE -->
        <Link Encoding="2wire" Delays="4,4" Flags="SOD">
        <LinkEndpoint NodeId="0" Link="X0LD"/>
        <LinkEndpoint RoutingId="0x8000" Chanend="1"/>
        </Link>
        
        </Links>
    </Package>
  </Packages>

  <ExternalDevices>
    <Device NodeId="0" Core="0" Class="SPIFlash" Name="bootFlash" Type="M25P10">
      <Attribute Name="PORT_SPI_MISO" Value="PORT_SPI_MISO"/>
      <Attribute Name="PORT_SPI_SS"   Value="PORT_SPI_SS"/>
      <Attribute Name="PORT_SPI_CLK"  Value="PORT_SPI_CLK"/>
      <Attribute Name="PORT_SPI_MOSI" Value="PORT_SPI_MOSI"/>
    </Device>
  </ExternalDevices>

  <JTAGChain>
    <JTAGDevice NodeId="0"/>
    <JTAGDevice NodeId="1"/>
  </JTAGChain>

</Network>
muntablues
Active Member
Posts: 34
Joined: Tue Dec 20, 2011 2:45 pm

Post by muntablues »

After some tests I thought, ok lets go with xflash and give it a try and now the HW is working. But debugging is still not working...
peter
XCore Addict
Posts: 230
Joined: Wed Mar 10, 2010 12:46 pm

Post by peter »

Looks like you definitely have the L-Series part, so you really should be using app_usb_aud_l1 rather than the app_usb_aud_skc_su1. The SU1 project is for working with a U-Series part which is different.
muntablues
Active Member
Posts: 34
Joined: Tue Dec 20, 2011 2:45 pm

Post by muntablues »

I use XS1-U8A-64-FB96-C5, so I think "app_usb_aud_skc_su1" is correct isn't it?

If I flash direktly everything works fine, I can use my HW as 8ch USB audio device. I just get this exception if i want to run the debugger...
peter
XCore Addict
Posts: 230
Joined: Wed Mar 10, 2010 12:46 pm

Post by peter »

Very strange if you can flash it then it would seem the JTAG is all connected up ok. What happens if you try a very basic hello world and use xrun --io hello.xe

Code: Select all

#include <print.h>

int main()
{
    printstrln("Hello world");
    return 0;
}
Post Reply