[ECOS] EB40LS ethernet card problem

Andrew Lunn andrew@lunn.ch
Tue Sep 9 11:07:00 GMT 2003


On Tue, Sep 09, 2003 at 06:33:22PM +0800, RandyLin@mxic.com.tw wrote:
> I am porting the EB40LS ethernet card.
>    I compile the pint_test program in
>    /ecos-2.0/packages/net/common/v2_0/tests/
>    I use the arm-elf-gdb to download the image to EB40LS
>    I have the 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)
>    IFP: 0x0212b7e0, next: 0x00000000
>    [cyg_net_init] Init: domaininit(0x00000000)
>    [cyg_net_init] Init: cyg_net_add_domain(0x020de42c)
>    New domain internet at 0x00000000
>    [cyg_net_init] Init: cyg_net_add_domain(0x020dde80)
>    New domain route at 0x00000000
>    [cyg_net_init] Init: cyg_route_init(0x00000000)
>    [cyg_net_init] Done
>    Start PING test
>    BOOTP[eth0] op: REPLY
>           htype: Ethernet
>            hlen: 6
>            hops: 0
>             xid: 0x0
>            secs: 0
>           flags: 0x0
>           hw_addr: ff:ff:ff:ff:ff:ff
>         client IP: 192.9.207.130
>             my IP: 192.9.207.130
>         server IP: 192.9.207.121
>        gateway IP: 192.9.207.254
>      options:
>            subnet mask: 255.255.255.0
>           IP broadcast: 192.9.207.255
>                gateway: 192.9.207.254
>    SIOCIFADDR: Device not configured
>    Network initialization failed for eth0
>    PASS:<Ping test OK>
>    EXIT:<done>
>    ================================================
> 
>    Here is my questions:
>    1. I set the mac address at configtool, why I still got the hw_addr:
>    ff:ff:ff:ff:ff:ff ?

Exactly what did you configure. What is the full name of the option.

>    2. SIOCIFADDR: Device not configured, I trace the code in
>    bootp_support.c
>           strcpy(ifr.ifr_name, intf);
>          if (ioctl(s, SIOCSIFADDR, &ifr)) {
>              perror("SIOCIFADDR");
>              return false;
>          }
>             is the ioctl code implement in
> /packages/net/bsd_tcpip/v2_0/src/sys/net/if.c (ifioctl)?

The call path goes through a number of layers in the stack. It might
not be failing here. You probably want to single step the ioctl call
and see exactly where it fails. From that you can work out why it
fails.

You might also want to edit the DEBUG macro in cs8900.h to enable more
debug info.

        Andrew

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



More information about the Ecos-discuss mailing list