Re: restart for remote target

Efim Monyak
2006-07-25T16:54:48Z

Daniel Jacobowitz schrieb:
> On Tue, Jul 25, 2006 at 06:19:51PM +0200, Efim Monyak wrote:
>
>> I delete all breakpoints before load the applications again because my
>> Hardware supports only two
>> breakpoints. In other case I receive error from GDB. The load is
>> multistep. In one of steps I must set
>> an breakpoint to particular address and only one way I found to put it
>> away is command delete all breakpoints.
>> As I see no command deletes breakpoint on address. Use breakpoint to
>> source line is not very good on this place.
>>
>
> "delete *0x3000000" should work.
>
> Also, it sounds like you want "disable", not "delete".
>
>
>> It is not possible for stub restart the application. They are often
>> problem if a remote target is used.
>> As I wrote set PC to start address works not properly if i.e. interrupts
>> are enabled.
>> If application runs from RAM it is lost after Hardware reset.
>>
>> The only handy way I see is to reload application set all used
>> breakpoints and start it again.
>>
>
> In many cases the stub can handle all of this automatically,
> manually disabling interrupts et cetera.
>
>

debug session breaks because error.

hier is my user-defined command:

set $myvar = 0

define run
if $myvar
printf "\n 000000000000000000000000000 \n"
disable

printf "\n 44444444444444444444444444444 \n"

k
set remotebaud 300
target remote /dev/ttyS3
load reset.elf
symbol-file reset.elf
# set breakpoint to reset vector
b * 0

printf "\n 555555555555555555555555555555 \n"

# start program
c
delete * 0

printf "\n 666666666666666666666666666666 \n"

# kill program
k

printf "\n 222222222222222222222222222 \n"

set remotebaud 300
target remote /dev/ttyS3
load init.elf
symbol-file init.elf
# set breakpoint to end of program
b end_init
# start program
c
# delete all breakpoints (werden nicht mehr benutzt)
clear end_init
#kill program
k

printf "\n 33333333333333333333333333333 \n"

set remotebaud 300
target remote /dev/ttyS3
load sample.elf
symbol-file sample.elf
set $myvar = 1
enable
continue
else
set $myvar = 1
printf "\n 111111111111111111111111111 \n"
continue
end

and hier GDB messages:
156-exec-run
(gdb)
156^running
(gdb)
~"\n 000000000000000000000000000 \n"
~"\n 44444444444444444444444444444 \n"
156+download,{section="startup",section-size="32",total-size
="19040"}
156+download,{section="startup1",section-size="264",total-si
ze="19040"}
156+download,{section="prog",section-size="100",total-size="
19040"}
&"Error in re-setting breakpoint 3:\n"
&"No line 120 in file \"../src/main.c\".\n"
~"\n 555555555555555555555555555555 \n"
&"warning: bad breakpoint number at or near '* 0'\n"
&"warning: bad breakpoint number at or near '0'\n"
~"\n 666666666666666666666666666666 \n"
~"\n 222222222222222222222222222 \n"
156+download,{section="startup",section-size="32",total-size
="25297"}
156+download,{section="prog",section-size="4900",total-size=
"25297"}
156+download,{section="prog",section-sent="4051",section-siz
e="4900",total-sent=\
"4083",total-size="25297"}
~"\n 33333333333333333333333333333 \n"
156+download,{section="startup",section-size="516",total-siz
e="1132725"}
156+download,{section="text",section-size="1916",total-size=
"1132725"}
156+download,{section=".data",section-size="2",total-size="1
132725"}
&"Warning:\n"
&"Cannot insert breakpoint 6.\n"
&"Error accessing memory address 0x0: Unknown error 42949672
95.\n"
&"\n"
156^error,msg="Warning:\nCannot insert breakpoint 6.\nError
accessing memory add\
ress 0x0: Unknown error 4294967295.\n"

--
Mit freundlichen Gruessen
Efim Monjak

Lipowsky Industrie-Elektronik GmbH
64291 Darmstadt, Roemerstr. 57
Telefon: +49-(0)6151-93591-0
Telefax: +49-(0)6151-93591-28
Email: ymonyak@lipowsky.de
Homepage: http://www.lipowsky.de
DIN EN ISO 9001:2000 certified by DQS