Debug


#1

as the debug [Target]_ARM_ELF_GCC_Debug is executed with Q2686.
Regards


#2

:question: :question: :question: :question: :question:


#3

I try to be clearer:) … The debug it can be made only in RTE mode? it is possible to play Audio in debug Mode?
Sorry for my English :slight_smile:
thanks


#4

Not at all: DEBUG facilities like TRACE and DUMP can also be used in Target mode.

What you can’t do is to set breakpoints in Target mode.


#5
#include "adl_global.h"

/***************************************************************************/
/*  Mandatory variables                                                    */
/*-------------------------------------------------------------------------*/
/*  wm_apmCustomStackSize                                                  */
/*-------------------------------------------------------------------------*/
/***************************************************************************/
const u16 wm_apmCustomStackSize = 1024;
const u32 wm_apmIRQLowLevelStackSize =  1024;
const u32 wm_apmIRQHighLevelStackSize = 1024;

s32 Handle;
s32 Low_Level_IRQHandle;
ascii RawDMTF[ 2 ];

void * StreamBuffer;

bool Low_Level_IRQHandler ( adl_irqID_e Source, adl_irqNotificationLevel_e NotificationLevel, adl_irqEventData_t * Data ){

TRACE (( 1, "DTMF received : %c, %c ", StreamBuffer[0],StreamBuffer[1] ));
wm_memcpy( &( RawDMTF [ 0 ] ), StreamBuffer , ADL_AUDIO_MAX_DTMF_PER_FRAME );
adl_atSendResponse( ADL_AT_RSP, RawDMTF );

return FALSE;
}
// audio event call-back function
void Audio_Event_Handler ( s32 audioHandle, adl_audioEvents_e Event ){

return;
}
void adl_main ( adl_InitType_e InitType ){

s32 Ret;
s32 BufferSize;

Low_Level_IRQHandle = adl_irqSubscribe ( Low_Level_IRQHandler, ADL_IRQ_NOTIFY_LOW_LEVEL, ADL_IRQ_PRIORITY_LOW_LEVEL, 1 );
Handle = adl_audioSubscribe ( ADL_AUDIO_MICROPHONE, Audio_Event_Handler , ADL_AUDIO_RESOURCE_OPTION_FORBID_PREEMPTION );
Ret = adl_audioGetOption ( Handle,ADL_AUDIO_DTMF_RAW_STREAM_BUFFER_SIZE, &BufferSize );
StreamBuffer = adl_memGet( BufferSize );
Ret = adl_audioStreamListen( Handle, ADL_AUDIO_DTMF,Low_Level_IRQHandle, 0, StreamBuffer);
}

ok…

  1. Why this example does not work?
  2. I want to put a breakpoint in Low_Level_IRQHandler, is it possible?

Thanks


#6

In what way do you think that it “does not work” ?

I very much doubt it.

The Remote (or “RTE”) mode allows you to set breakpoints by having your application actually executing on the PC; this obviously has restrictions for low-level features that depend directly upon the hardware - like IRQ handlers.
Hence I very much doubt the RTE mode supports IRQ handlers (but I haven’t checked).

However, you can still put TRACE calls in your IRQ handlers - just remember not to overdo it, and that the TRACE from IRQ handlers appears on a different “flow” from the “main” ADL application…


#7

Hiya,

Use of interrupts in RTE mode is not supported (at least in firmware R7.4).

See (at least) the notes at the end of section 3.25.10 of the ADL User Guide.

ciao, Dave


#8

ooooookkkkkk resolved with Target Mode and TRACE, thanks to all
other question:
it is possible make to execute in the application a CUSTOM AT COMMAND?
Thanks
Regards


#9

No, it is not.

Again, you need to read the ADL User Guide - it specifically mentions this:

But you can, of course, call your custom command handler directly from your own code…


#10

I had already read the guide, I hoped was a solution :wink:

I will try to recall custom command handler…
thanks


#11

You need to make that clear! :wink:

Rather than call the handler direct, you might find it easier to structure it so that you have a separate function that your handler can call, and your code can call:

+---------+        +-----------------+        +------------+
|         |        |                 |        |            |
| Handler +------->+ Common function +<-------+ other code |
|         |        |                 |        |            |
+---------+        +-----------------+        +------------+

#12

kiranreddysingareddy, how do you think that your question is in any way related to anything in the rest of this thread?

Don’t hijack unrelated threads - start your own new thread with your own new question!


#13

I think why this question is not related to this thread . this thread for debug right… ?
i was getting problem also while debugging . so sorry if this not related to this thread…
thanks and regards
kiran


#14

It is one specific question from one specific user about his specific issue while debugging his specific system - it is not a general thread to catch all possible questions from any user that might be in any way related to “DEBUG” :exclamation:

You should start your own thread; as always, if you think any other thread(s) may be related, you can mention it, and post links to them…


#15

Thank you …