This is the mail archive of the ecos-discuss@sourceware.org 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]

Well its working but ...


Ok, so its working. Even better pings are nice and fast :
-------------------------------------------------------------
ping 192.168.110.122
PING 192.168.110.122 (192.168.110.122): 56 data bytes
64 bytes from 192.168.110.122: icmp_seq=0 ttl=64 time=0.261 ms
64 bytes from 192.168.110.122: icmp_seq=1 ttl=64 time=0.237 ms
64 bytes from 192.168.110.122: icmp_seq=2 ttl=64 time=0.244 ms
64 bytes from 192.168.110.122: icmp_seq=3 ttl=64 time=0.247 ms
64 bytes from 192.168.110.122: icmp_seq=4 ttl=64 time=0.237 ms
64 bytes from 192.168.110.122: icmp_seq=5 ttl=64 time=0.238 ms
64 bytes from 192.168.110.122: icmp_seq=6 ttl=64 time=0.240 ms
64 bytes from 192.168.110.122: icmp_seq=7 ttl=64 time=0.242 ms
^C
--- 192.168.110.122 ping statistics ---
8 packets transmitted, 8 packets received, 0% packet loss
round-trip min/avg/max/stddev = 0.237/0.243/0.261/0.007 ms
--------------------------------------------------------------
Quarter millisecond is definitely in the ball park.

The way I got it to work was to force the RXEnable flag in CR0 at the end of the TxSent interrupt service routine. Basically before I exit I turn RXEnable on regardless and it stays set through calls to the ISR/DSR and packets are received. If I don't turn this flag on there it gets reset at some point and the device stops receiving packets :-(.

So a couple of questions for Gary or anyone else who knows the ethernet driver internals.

So which is the "preferred" (and by that I mean the one that is used by most people so it gets the most testing) network stack ? Because I'm somewhat familiar with the FreeBSD one I chose it and was surprised to see ECOS complaining that it couldn't set multicast address groups. (Not sure what I'd do with them). So my driver simply lies at the moment to keep the stack from calling that function again and again and resetting the interface... any way, why does it want to do that?

The second question is this output from the httpd test (which just calls init_all_network_devices())

Route - dst: 0.0.0.0, mask: 0.0.0.0, gateway: 192.168.110.254

So basically this is like the static route to tell every packet that is sent to any address should go out of my network adapter? I was expecting

route: 192.168.110.0 mask 255.255.255.0, gateway: 192.168.110.254.

If the 0.0.0.0 route is just a stand-in for "default route" then I'm certainly ok with that, just wondering why it wouldn't say route: default.

The last question is that I periodically get my dsr called with no interrupt event. I'm wondering why. Nothing seems to have interrupted. I can use that to go check the Phy to see if the link state has changed but other than that was wondering who called in so to speak.

--Chuck


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


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