This is the mail archive of the gdb@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

[Fwd: GDB 5.0 works only at 9600 bps?]


Thi is the logfile writed by gdb during the handshake with ANGEL an
AT91EB40:

ADP log file opened at Thu Dec 14 14:39:01 2000

tx: [T=0 L=52] 03 01 00 01 05 00 03 00 00 00 00 00 ff ff ff ff ff ff ff
ff 01 00 00 00 00 c0 00 00 05 00 00 00 00 c2 01 00 00 e1 00 00 00 96 00
00 00 4b 00 00 80 25 00 00
R=00030005 H->T CI_HBOOT:  ADP_ParamNegotiate 00000001 0000c000 00000005
0001c200 0000e100 00009600 00004b00 00002580
ADP log file opened at Thu Dec 14 14:49:53 2000

tx: [T=0 L=52] 03 01 00 01 05 00 03 00 00 00 00 00 ff ff ff ff ff ff ff
ff 01 00 00 00 00 c0 00 00 05 00 00 00 00 c2 01 00 00 e1 00 00 00 96 00
00 00 4b 00 00 80 25 00 00
R=00030005 H->T CI_HBOOT:  ADP_ParamNegotiate 00000001 0000c000 00000005
0001c200 0000e100 00009600 00004b00 00002580
rx: [T=0 L=36] 03 02 01 01 05 00 03 80 00 00 00 00 ff ff ff ff ff ff ff
ff 00 00 00 00 01 00 00 00 00 c0 00 00 00 c2 01 00
R=80030005 H<-T CI_HBOOT:  ADP_ParamNegotiate 00000000 00000001 0000c000
0001c200
tx: [T=0 L=20] 03 02 00 01 06 00 03 00 00 00 00 00 ff ff ff ff ff ff ff
ff
R=00030006 H->T CI_HBOOT:  ADP_LinkCheck
rx: [T=0 L=20] 03 03 02 01 06 00 03 80 00 00 00 00 ff ff ff ff ff ff ff
ff
R=80030006 H<-T CI_HBOOT:  ADP_LinkCheck
tx: [T=0 L=24] 03 01 00 01 03 00 03 00 00 00 00 00 ff ff ff ff ff ff ff
ff 00 00 00 00
R=00030003 H->T CI_HBOOT:  ADP_Reset 00000000
rx: [T=0 L=24] 03 01 01 01 03 00 03 80 ff ff ff ff ff ff ff ff ff ff ff
ff 00 00 00 00
R=80030003 H<-T CI_HBOOT:  ADP_Reset 00000000
rx: [T=0 L=215] 04 02 01 01 00 00 04 80 ff ff ff ff ff ff ff ff ff ff ff
ff f8 00 00 00 f8 07 00 00 01 00 00 00 03 00 00 00 00 00 00 80 01 00 00
00 00 00 00 00 a3 00 00 00 41 6e 67 65 6c 20 44 65 62 75 67 20 4d 6f 6e
69 74 6f 72 20 28 73 65 72 69 61 6c 29 20 31 2e 30 34 20 28 41 64 76 61
6e 63 65 64 20 52 49 53 43 20 4d 61 63 68 69 6e 65 73 20 53 44 54 20 32
2e 35 29 20 66 6f 72 20 41 54 39 31 45 42 34 30 20 28 32 2e 30 30 29 0a
41 6e 67 65 6c 20 44 65 62 75 67 20 4d 6f 6e 69 74 6f 72 20 72 65 62 75
69 6c 74 20 6f 6e 20 41 70 72 20 30 37 20 32 30 30 30 20 61 74 20 31 32
3a 34 30 3a 33 31 0a 53 65 72 69 61 6c 20 52 61 74 65 3a 20 31 31 35 32
30 30 0a 00
R=80040000 H<-T CI_TBOOT:  ADP_Booted 000000f8 000007f8 00000001
00000003 80000000 00000001 00000000 000000a3 65676e41 6544206c 20677562
696e6f4d 20726f74 72657328 296c6169 302e3120 41282034 6e617664 20646563
43534952 63614d20 656e6968 44532073 2e322054 66202935 4120726f 45313954
20303442 302e3228 410a2930 6c65676e 62654420 4d206775 74696e6f 7220726f
69756265 6f20746c 7041206e 37302072 30303220 74612030 3a323120 333a3034
65530a31 6c616972 74615220 31203a65 30323531 00000a30
tx: [T=0 L=24] 04 02 00 01 00 00 04 00 00 00 00 00 ff ff ff ff ff ff ff
ff 00 00 00 00
R=00040000 H->T CI_TBOOT:  ADP_Booted 00000000
tx: [T=0 L=24] 01 01 00 01 01 00 01 00 00 00 00 00 ff ff ff ff ff ff ff
ff 01 00 01 00
R=00010001 H->T CI_HADP:  ADP_Info 00010001


(arm-elf-gdb -nw -b 115200)


Jens-Christian Lache wrote:
> 
> Hi Fernando!
> I did use the the -b option (see below). I just wanted to show
> with the first lunch of gdb that it works on 9600bps. In the second
> it gets started with -b 115200. It always hangs with a different
> speed than the default speed.
> 
> I have seen 57600bps under win/multi (gr**nhills inc.) with
> my ATEB01, so it is not the board.
> 

This is the same board as I have.  It seems to be a board monitor bug
When GDB sends the option list (as specified in the ARM document that defines
the protocol), this board replies with some speed (I don't think it is 115200
though) but it does not seem to switch to that speed as promised because GDB
does switch to the indicated speed and cannot communicate with the board
anymore.

As the RDI protocol requires that the handshake starts at 9600, you have to
reset the board so it falls back to that speed before being able to connect
again.

All this can be seen by turning the log on:

(gdb) maintenance rdilogfile /dev/tty
(gdb) maintenance rdilogenable yes 


The software you mentioned probably added a hack to work with this board
but I had no time to experiment with it to figure out what is the speed that
it actually switches to. And I am not sure how I could add something that 
would work with this board without violating the protocol and making GDB
stop working with the other well behaved boards (we have many Angel monitor
targets that speak RDI correctly and switch speeds perfectly).


I will be interested in finding a way to get this to work somehow (I have
the little AEB board).  You can help by getting the handshake messages log.
We may even ask ARM about this (maybe some undocumented protocol extension?
A new version of the monitor is available?).


Regards,
Fernando





-- 
Fernando Nasser
Red Hat Canada Ltd.                     E-Mail:  fnasser@redhat.com
2323 Yonge Street, Suite #300
Toronto, Ontario   M4P 2C9




Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]