[ECOS] How to test ethernet connection?

Gary Thomas gary@mlbassoc.com
Fri Dec 8 18:44:00 GMT 2006


Sergei Gavrikov wrote:
> 
> 
>> Gary Thomas wrote:
>>
> 
>>> David Luca wrote:
>>>
> 
>>> Hello,
>>> I included the Cirrus Logic 8900 ethernet driver, everything compiled 
>>> and starting the platform
>>> shows me the following messages:
>>>
>>> [cyg_net_init] Init: mbinit(0x00000000)
>>> [cyg_net_init] Init: cyg_net_init_devs(0x00000000)
>>> Init device 'cs8900a_eth0'
>>> [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(0x082aab1c)
>>> New domain internet at 0x00000000
>>> [cyg_net_init] Init: cyg_net_add_domain(0x082a9614)
>>> New domain route at 0x00000000
>>> [cyg_net_init] Init: call_route_init(0x00000000)
>>> [cyg_net_init] Done
>>> SYSTEM INITIALIZATION in progress
>>> NETWORK:
>>> BOOTP[eth0] op: REPLY
>>>        htype: Ethernet
>>>         hlen: 6
>>>         hops: 0
>>>          xid: 0x0
>>>         secs: 0
>>>        flags: 0x0
>>>        hw_addr: 00:23:31:36:00:01
>>>      client IP: 172.168.1.103
>>>          my IP: 172.168.1.103
>>>      server IP: 172.168.1.86
>>>     gateway IP: 172.168.1.1
>>>   options:
>>>         subnet mask: 255.255.255.0
>>>        IP broadcast: 172.168.1.255
>>>             gateway: 172.168.1.1
>>> data index = 4
>>>
>>> I assume it was initialized correctly, my question is, how can I test 
>>> the ethernet connection
>>> between host pc and target pc? I tried to use ping 172.168.1.103, but 
>>> no response (I must mention
>>> that I download the eCos application to the target via FTP, using 
>>> MicroMonitor, so I know ethernet
>>> is working).Thank you in advance, David Luca.
>>
>> What program gave you this output?
>>
>> You could try to build & run one of the network tests, e.g.
>> 'ping_test' to verify your hardware.  Here's how I do it:
>>
>>  % ecosconfig new <platform> net
>>  % ecosconfig tree
>>  % make -s
>>  % make -C net/common/current tests TESTS=tests/ping_test
>>
>> This will build just the one test which you can then download and run.
>>
> 
> Following Gary's scripting, I get such results for my target with CL
> CS8900A (see below).  My DHCP server runs on 192.168.0.33. RedBoot pings
> in/out okay too (RedBoot use a static IP).
> 
> 
>   from /etc/dhcpd.conf:
> 
>   subnet 192.168.0.0 netmask 255.255.255.0 {
>            option routers 192.168.0.33;
>            # eCos clients get this pool.
>            pool {
>              max-lease-time 300;
>              range 192.168.0.97 192.168.0.100;
>              allow unknown-clients;
>            }
>   }
> 
> 
>   from /ets/hosts:
> 
>   127.0.0.1        localhost
>   192.168.0.33        darkstar.example.org darkstar
> 
> 
>   from /tftpboot/ping_test:
> 
>   RedBoot> load ping_test
>   RedBoot> Using default protocol (TFTP)
>   Entry point: 0x81010040, address range: 0x81010000-0x81051cc8
>   RedBoot> [cyg_net_init] Init: mbinit(0x00000000)
>   [cyg_net_init] Init: cyg_net_init_devs(0x00000000)
>   Init device 'cs8900a_eth0'
>   [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(0x810516e0)
>   New domain internet at 0x00000000
>   [cyg_net_init] Init: cyg_net_add_domain(0x81051108)
>   New domain route at 0x00000000
>   [cyg_net_init] Init: call_route_init(0x00000000)
>   [cyg_net_init] Done
>   Start PING test
>   BOOTP[eth0] op: REQUEST
>          htype: Ethernet
>           hlen: 6
>           hops: 0
>            xid: 0xb5e5678
>           secs: 0
>          flags: 0x80
>          hw_addr: 40:00:12:34:56:78
>        client IP: 0.0.0.0
>            my IP: 192.168.0.99
>        server IP: 192.168.0.33
>       gateway IP: 0.0.0.0
>     options:
>           DHCP message: 3 REQUEST
>           DHCP server id: 192.168.0.33
>           DHCP time 51: 300
>           DHCP time 58: 150
>           DHCP time 59: 262
>           subnet mask: 255.255.255.0
>               gateway: 192.168.0.33
>           domain name: example.org
>           DHCP option: 37/55.9: 54 51 58 59 1 3 6 15 28
>           DHCP option: 39/57.2: 576
>           DHCP requested ip: 192.168.0.99
>   PING server 192.168.0.33
>   64 bytes from 192.168.0.33: icmp_seq=0, time=0ms
>   310 bytes from 192.168.0.33: icmp_seq=1, time=0ms
>   556 bytes from 192.168.0.33: icmp_seq=2, time=0ms
>   802 bytes from 192.168.0.33: icmp_seq=3, time=0ms
>   1048 bytes from 192.168.0.33: icmp_seq=4, time=0ms
>   1294 bytes from 192.168.0.33: icmp_seq=5, time=0ms
>   1540 bytes from 192.168.0.33: icmp_seq=6, time=0ms
>   1786 bytes from 192.168.0.33: icmp_seq=7, time=0ms
>   2032 bytes from 192.168.0.33: icmp_seq=8, time=0ms
>   2278 bytes from 192.168.0.33: icmp_seq=9, time=10ms
>   2524 bytes from 192.168.0.33: icmp_seq=10, time=10ms
>   2770 bytes from 192.168.0.33: icmp_seq=11, time=10ms
>   3016 bytes from 192.168.0.33: icmp_seq=12, time=10ms
>   3262 bytes from 192.168.0.33: icmp_seq=13, time=10ms
>   3508 bytes from 192.168.0.33: icmp_seq=14, time=10ms
>   3754 bytes from 192.168.0.33: icmp_seq=15, time=10ms
>   Sent 16 packets, received 16 OK, 0 bad
>   PING server 192.168.0.65
>   recvfrom: Operation timed out
>   recvfrom: Operation timed out
>   recvfrom: Operation timed out
>   recvfrom: Operation timed out
>   recvfrom: Operation timed out
>   recvfrom: Operation timed out
>   sendto: Host is down
>   sendto: Host is down
>   sendto: Host is down
>   sendto: Host is down
>   sendto: Host is down
>   sendto: Host is down
>   sendto: Host is down
>   sendto: Host is down
>   sendto: Host is down
>   sendto: Host is down
>   Sent 16 packets, received 0 OK, 0 bad
>   PASS:<Ping test OK>
>   EXIT:<done>
> 

This is the expected output - the test first tries to 'ping'
the 'server' address it gets from DHCP.  It then munges that
address by adding 32.  This may or may not be a valid address,
so getting errors during the second phase is possible (and
not a problem).

-- 
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------

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



More information about the Ecos-discuss mailing list