AnsweredAssumed Answered

Newbie question... What's going on ?

Question asked by SpacedCowboy on Oct 2, 2012
Latest reply on Oct 5, 2012 by CraigG

So, I've got a simple program (there's more to it than the below, but this is all that's in "main"):

 

int main(void)

{

  /* Initialize managed drivers and/or services */

          adi_initComponents();

 

  /**

           * The default startup code does not include any functionality to allow

           * core 0 to enable core 1. A convenient way to enable core 1 is to use the

           * 'adi_core_1_enable' function.

           */

  //adi_core_1_enable();

 

  /* Begin adding your custom code here */

  printf("Booted!\n");

 

  // Never actually terminate

          while (1);

}

 

I'd expect 'Booted' to be printed, (and it is), but shortly afterwards I'm getting a core fault...

 

Auto-detecting devices on the JTAG chain...

 

TDO <-----+

          |

         [0] - [ADSP-BF609 rev 0.0 from Analog Devices]

          |

TDI >-----+

Loading application: "Z:\src\dsp\rtos_Core0\Debug\rtos_Core0.dxe"

Warning: Address 0x3ECD5B15 does not exist in the memory map.

Warning: Address 0x3ECD5B19 does not exist in the memory map.

Loading application: "Z:\src\dsp\rtos_Core0\Debug\rtos_Core0.dxe"

Booted!

Core fault detected before halt at address: 0xC8002022.  Attempting to reset processor.

Error writing user opcode for breakpoint remove at address: 0xffa048a0.

 

The address (0xC8002022) of the fault seems to be in L2 ROM, looking at the memory map in system/startup_ldf/app.ldf. Is there something I have to do periodically to keep the core from faulting ? The core fault appears about a second after the 'Booted!' message. If instead, I enable core1 (it's not doing anything at the moment), I get the sequence:

 

Auto-detecting devices on the JTAG chain...

 

TDO <-----+

          |

         [0] - [ADSP-BF609 rev 0.0 from Analog Devices]

          |

TDI >-----+

Core fault detected before halt at address: 0xC8000042.  Attempting to reset processor.

Loading application: "Z:\src\dsp\rtos_Core0\Debug\rtos_Core0.dxe"

Loading application: "Z:\src\dsp\rtos_Core0\Debug\rtos_Core0.dxe"

Booted!

 

So I still get a core fault. Is this all as-expected, or am I doing something wrong ? If it is expected, is there anything I'd have to do in a non-debugging environment to "attempt tp reset processor" ?

 

Cheers

   Simon

Outcomes