public inbox for ecos-discuss@sourceware.org
 help / color / mirror / Atom feed
From: "m mariga" <ma_ariga@yahoo.co.jp>
To: <ecos-discuss@ecos.sourceware.org>
Subject: [ECOS] About h8000 eCos GDB-Stub
Date: Mon, 28 Sep 2009 09:54:00 -0000	[thread overview]
Message-ID: <9C016D89352D4911AEF2AE5F6E415F92@masahiro> (raw)
In-Reply-To: <C883DB0C871D47F4AC22CF0C9A37DD72@masahiro>

Hello,

I am still struggling to resolve why not breaking at cyg_start in Insight.
As I am further involved,the problem's aspect became more about eCos's h8000 
GDB-Stub,
so let me change my Mailing list subject title from "How to set GDB Stub 
Options in order to run insight ?" to "About h8000 eCos GDB-Stub".

First I re-state my problem.
I am working on eCos 3.0 using Akizuki H8/3068 Network board.
That board's CPU is H8/3069F.
I succeeded to install FreeBSD stack and ran TCP/IP test programs.
But when I tried to use Insight or GDB,it does not stop at cyg_start 
breaking point.

I start up Insight like next line.
$ h8300-elf-insight.exe nc_test_slave.elf

--- GDB commands log on console window
(gdb) set remotebaud 57600
(gdb) set remotelogfile remote-5.log
(gdb) target remote /dev/com4
Remote debugging using /dev/com4
0x000073a4 in ?? ()

(gdb) load
Loading section .text, size 0x5d58a lma 0x410000
Loading section .rodata, size 0x431e lma 0x46d58a
Loading section .data, size 0x16f8 lma 0x4718a8
Start address 0x410000, load size 405408
Transfer rate: 3 KB/sec, 63 bytes/write.

(gdb) b cyg_start
Note: breakpoints 1 (disabled), 2 (disabled), 3 (disabled) and 4 also set at 
pc 0x411dda.
Breakpoint 5 at 0x411dda: file nc_test_slave.c, line 729.

(gdb) c
Continuing.
Network stack using 69632 bytes for misc space
                    69632 bytes for mbufs
                    139264 bytes for mbuf clusters
[cyg_net_init] Init: mbinit(0x00000000)
[cyg_net_init] Init: cyg_net_init_devs(0x00000000)
Init device 'dp83902a_eth0'
DP83902A - eeprom ESA: 00:02:cb:01:42:b9
[cyg_net_init] Init: loopattach(0x00000000)
[cyg_net_init] Init: ifinit(0x00000000)
[cyg_net_init] Init: domaininit(0x00000000)
[cyg_net_init] Init: cyg_net_add_domain(0x004728a8)
New domain internet at 0x00000000
[cyg_net_init] Init: cyg_net_add_domain(0x00472298)
New domain route at 0x00000000
[cyg_net_init] Init: call_route_init(0x00000000)
[cyg_net_init] Done

At this point it should stop at break point(=cyg_start),but it never reply 
nothing.
---end GDB commands log on console window

I perused remote-5.log and learned GDB-Stub does not operate properly..
---excerpts of remote-5.log
c b cyg_start
c c
w $Z0,411dda,2#d3
r +$#00
w +$m411dda,2#8a
r +$1aa2#25
w +$X411dda,2:\x01\x80#30
r +$OK#9a
w +$vCont?#49
r +$#00
w +$Hc0#db
r +$OK#9a
w +$c#63
r 
+$O4E6574776F726B20737461636B207573696E6720363936333220627974657320666F72206D6973632073706163650A#0C
w +
   -- omitted --
r 
$O5B6379675F6E65745F696E69745D20496E69743A2063616C6C5F726F7574655F696E69742830783030303030303030290A#5D
w +
r $O5B6379675F6E65745F696E69745D20446F6E650A#2D
w +
r +
w \x03                ; I entered Ctr C.
r <Timeout: -1 seconds>
---end of excerpts of remote-5.log

When GDB send $Z0, GDB-Stub should replace address's code with TRAP,but in 
case of h8000 GDB-Stub does nothing.
So GDB try to replace address's code by $X411dda,2:\x01\x80.
But \x01\x80 is never H8's undefined codes but Sleep Command,so CPU sleeps 
at top of cyg_start and never stops.

I studied \ecos-3.0\packages\hal\common\v3_0\src\generic-stub.c,and found 
__process_packet() function looked likely place.
It's 1494-1566 lines read,
#if defined(CYGNUM_HAL_BREAKPOINT_LIST_SIZE) && 
(CYGNUM_HAL_BREAKPOINT_LIST_SIZE > 0)
    case 'Z':
      is_Z = 1;
    case 'z':
      {
 char *ptr = &packet[1];
 target_register_t ztype, addr, length;

There was no CYGNUM_HAL_BREAKPOINT_LIST_SIZE option in h8000 cdl file.
I tentatively commented out defined(CYGNUM_HAL_BREAKPOINT_LIST_SIZE) line 
and ran,but there was no change in GDB command's log.
Apparantly there are something missing.Would you please teach me the best 
way to insert $Z0 operation in h8000 GDB-Stub ?

Also,although I inserted diag_printf() in __process_packet function, nothing 
appeared on console window.
I do not know why diag_printf() did nothing,or am I looking wrong place at 
all ?
Please teach me how to trace codes in generic-stub.c. Are there any way to 
display on Insight console window ?

Thank you in advance.

m mariga


-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

  reply	other threads:[~2009-09-28  9:54 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-07-21 14:08 [ECOS] h8300 cannot find libgcc.a m mariga
2009-07-21 15:04 ` [ECOS] " John Dallaway
2009-07-22 12:28   ` m mariga
2009-07-22 13:58     ` John Dallaway
2009-07-23 21:32       ` m mariga
2009-07-24  8:34         ` John Dallaway
2009-07-28 14:40           ` m mariga
2009-08-09 23:11             ` m mariga
2009-08-17  7:42               ` John Dallaway
2009-09-04  5:54               ` [ECOS] How to set GDB Stub Options in order to run insight ? m mariga
2009-09-04  9:38                 ` [ECOS] " John Dallaway
2009-09-04 18:33                   ` m mariga
2009-09-07  9:40                     ` m mariga
2009-09-07 11:31                       ` John Dallaway
2009-09-07 16:10                         ` [ECOS] cyg_scheduler_lock and DSR's Jim Bradleigh
2009-09-11 20:37                           ` Bart Veer
2009-09-08 10:15                         ` [ECOS] Re: How to set GDB Stub Options in order to run insight ? m mariga
2009-09-28  9:54                           ` m mariga [this message]
2009-09-30 10:06                             ` [ECOS] About h8000 eCos GDB-Stub m mariga
2009-10-16 14:34                               ` [ECOS] How to connect RedBoot via Telnet running application m mariga
2009-10-16 14:42                                 ` Gary Thomas
     [not found]                                   ` <6FC88324D6C144EFB39FFE3CBF0E5B8D@masahiro>
2009-10-16 15:40                                     ` Gary Thomas
2009-10-16 16:11                                       ` m mariga
2009-10-16 16:43                                       ` m mariga
2009-10-16 16:54                                         ` Gary Thomas
2009-09-19  1:51                         ` [ECOS] Re: How to set GDB Stub Options in order to run insight ? m mariga

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=9C016D89352D4911AEF2AE5F6E415F92@masahiro \
    --to=ma_ariga@yahoo.co.jp \
    --cc=ecos-discuss@ecos.sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).