This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: 82558B works with RedBoot, but not in ping_test(recvfrom: Operation timed out)


The most likely difference to look into is that RedBoot polls
the device whereas eCos expects it to generate interrupts.

The flow shown below indicates that the eCos driver is being
somewhat successful talking to the device (do you ever see any
packets come out?), but that since there were no interrupts,
no incoming packets were processed.

On Thu, 2002-06-20 at 01:42, Vladimir Sterjantov wrote:
> Novice in eCos, and any help will be greatly appreciated.
> 
> Problem:
> 
> - target: pc,
>             Network card Intel EtherExpress 100 Pro, chip 82558B
> - host: linux at i386
> 
> Both RedBoot and ping_test (OpenBSD stack used, template "net") built from
> eCos CVS sources, downloaded 11 jun 2002.
> 
> Target PC boots from RedBoot floppy, without network support, but with
> support of debugging via serial line.
> 82559 driver compiled with DEBUG_82559 turned on.
> 
> Now run ping_test and see output:
> 
> # gdb -nw ping_test
> (gdb) set remotebaud 38400
> (gdb) target remote /dev/ttyS0
> Remote debugging using /dev/ttyS0
> 0x00009324 in ?? () at /pc-net/install/include/cyg/kernel/thread.inl:639
> 639         Cyg_ThreadQueue_Implementation::enqueue(thread);             
>       --- What it means?
> (gdb) load
> Loading section .text, size 0x2f470 lma 0x108000
> Loading section .rodata, size 0x3ab6 lma 0x137470
> Loading section .data, size 0x14d8 lma 0x13af28
> Start address 0x108000, load size 214014
> Transfer rate: 25553 bits/sec, 319 bytes/write.
> (gdb) c
> Continuing.
> intel_i82559_init
> pci_init_find_82559s()
> Finished cyg_pci_init();
> eth0 = 82559
>  Wired to HAL vector 43
> Found device on bus 0, devfn 0x48:
>  Note that board is active. Probed sizes and CPU addresses invalid!     
>           --- What is this?
>  Vendor    0x8086
>  Device    0x1229
>  Command   0x0017, Status 0x0290
>  Class/Rev 0x02000005
>  Header 0x00
>  SubVendor 0x8086, Sub ID 0x0009
>  BAR[0]    0xfb800008 / probed size 0x00000000 / CPU addr 0xfb800000
>  BAR[1]    0x0000e001 / probed size 0x00000000 / CPU addr 0x0000e000
>  BAR[2]    0xfa800000 / probed size 0x00000000 / CPU addr 0xfa800000
>  BAR[3]    0x00000000 / probed size 0x00000000 / CPU addr 0x00112f23
>  BAR[4]    0x00000000 / probed size 0x0013d398 / CPU addr 0x0014153c
>  BAR[5]    0x00000000 / probed size 0x00112f23 / CPU addr 0x001453e0
>  eth0 configured
>  memory address = 0xfb800000
>  I/O address = 0x0000e000
>  **** Device enabled for I/O and Memory and Bus Master
> Init82559 0 @ 13c3c0
> 82559 Self Test
>   General self-test: passed.
>   Serial sub-system self-test: passed.
>   Internal registers self-test: passed.
>   ROM checksum self-test: passed (24C9F043).
> eeprom data bits 6 (ioaddr e00e)
> Valid EEPROM checksum
> Set MAC Address = 00 90 27 59 F9 F6 (ok 1)
> i82559_init: MAC Address = 00 90 27 59 F9 F6
> InitRxRing 0
> ResetRxRing 0
> InitTxRing 0
> ResetTxRing 0
> Start PING test
> i82559_start 0 flg 47 Link = Down, 10 Mbps, Half Duplex                 
>          ---- Why link is Down and Half Duplex?
> Tx 0 13af40: 1 sg's, 42 bytes, KEY 156700
> Tx 0 13af40: Starting Engines: KEY 156700 TxCB 1bb26c
> TxDone 0 13af40: KEY 156700 TxCB 1bb26c
> i82559_stop 0 flg 47
> ResetRxRing 0
> ResetTxRing 0
> i82559_start 0 flg 47 Link = Down, 10 Mbps, Half Duplex
> Tx 0 13af40: 2 sg's, 342 bytes, KEY 156800
> Tx 0 13af40: Starting Engines: KEY 156800 TxCB 1bb26c
> TxDone 0 13af40: KEY 156800 TxCB 1bb26c
> Device 0 (eth0), rx descriptor 0:
> Rx 0 13af40 (status 8000a020): 2 sg's, 342 bytes
> Tx 0 13af40: 2 sg's, 349 bytes, KEY 156800
> Tx 0 13af40: Starting Engines: KEY 156800 TxCB 1bb87c
> TxDone 0 13af40: KEY 156800 TxCB 1bb87c
> Device 0 (eth0), rx descriptor 1:
> Rx 0 13af40 (status 8000a020): 2 sg's, 342 bytes
> i82559_stop 0 flg 47
> ResetRxRing 0
> ResetTxRing 0
> BOOTP[eth0] op: REQUEST
>        htype: Ethernet
>         hlen: 6
>         hops: 0
>          xid: 0xeae5fff6
>         secs: 0
>        flags: 0x80
>        hw_addr: 00:90:27:59:f9:f6
>      client IP: 0.0.0.0
>          my IP: 172.16.200.10
>      server IP: 172.16.200.90
>     gateway IP: 0.0.0.0
>   options:
>         DHCP message: 3 REQUEST
>         DHCP server id: 172.16.200.90
>         DHCP time 51: 43200
>         DHCP time 58: 21600
>         DHCP time 59: 37800
>         subnet mask: 255.255.255.0
>             gateway: 172.16.200.10
>        IP broadcast: 172.16.200.255
>         DHCP option: 37/55.9: 54 51 58 59 1 3 6 15 28
>         DHCP option: 39/57.2: 576
>         DHCP requested ip: 172.16.200.10
> i82559_start 0 flg 47 Link = Down, 10 Mbps, Half Duplex
> Tx 0 13af40: 1 sg's, 42 bytes, KEY 156700
> Tx 0 13af40: Starting Engines: KEY 156700 TxCB 1bb26c
> TxDone 0 13af40: KEY 156700 TxCB 1bb26c
> i82559_stop 0 flg 47
> ResetRxRing 0
> ResetTxRing 0
> i82559_start 0 flg 47 Link = Down, 10 Mbps, Half Duplex
> Tx 0 13af40: 1 sg's, 42 bytes, KEY 156700
> Tx 0 13af40: Starting Engines: KEY 156700 TxCB 1bb26c
> TxDone 0 13af40: KEY 156700 TxCB 1bb26c
> i82559_stop 0 flg 47
> ResetRxRing 0
> ResetTxRing 0
> i82559_start 0 flg 47 Link = Down, 10 Mbps, Half Duplex
> PING server 172.16.200.90
> Tx 0 13af40: 1 sg's, 42 bytes, KEY 156800
> Tx 0 13af40: Starting Engines: KEY 156800 TxCB 1bb26c
> TxDone 0 13af40: KEY 156800 TxCB 1bb26c
> recvfrom: Operation timed out                                  --- Problem.
> .........
> 
> 
> Any network test don't works too.
> May be difference between 82558 and 82559 not solved in network driver?
> 
> Thanks,
> 
> Vladimir
> 
> 
> 
> -- 
> Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
> and search the list archive: http://sources.redhat.com/ml/ecos-discuss



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


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