Support for the ne2000 (1)

Alexandre Constantino alexandre.constantino at
Mon Oct 23 13:44:41 UTC 2006


For whatever wicked reason QEMU doesn't like networking with RTEMS... At
least on my computer.
I can get network support in QEMU for a Linux guest (e.g. ping both
ways, ftp access)... But not for RTEMS guest. I'm using a tap0 interface
created dynamically by QEMU.

As for buffers, etc:

	(128*1024),		/* Default mbuf capacity */
	(16*128*1024),	/* Default mbuf cluster capacity */
I have tried other values before, but after reading Gregory Menke's
recent message on this, i though that could be the case... But it
doesn't seem so.

	// QEMU:  I/O 0x300, IRQ 9
	// Bochs: I/O 0x240, IRQ 9

Packets are not lost in Bochs (as i previously said) but instead these
get increadibly lagged. I got one daemon accounting for the bytes sent
by netdemo and they match.
The reason for this seems to be due to the repeated resets the card is
sujected to. I'm contantly getting "ne2000: device timeout" and
"ne_init_hardware()" messages. I debuged the code and concluded that
these have origin in ne_watchdog, which is a timeout routine called when
"the device neglects to generate an interrupt after a transmit has been
started on it."
Why this happens i don't know, but i speculate it to be some issue with
Bochs networking... Maybe Bochs network layer is not solid/fast enough?

One strange issue i noticed was that i was unable to telnet when using a
debug version of RTEMS.

Sorry for not replying to your message before, but a higher priority
task kept me busy during this last days.


-----Original Message-----
From: Till Straumann
Sent: quinta-feira, 14 de Setembro de 2006 18:43
To: Alexandre Constantino
Subject: Re: Support for the ne2000

I've used this driver on qemu [-net nic,model=ne2k_isa] and it seems to
work fine. I could telnet into RTEMS and run debugging sessions - both
use TCP.

Do you have enough buffers etc. configured?

-- Till

Alexandre Constantino wrote:
> Hi,
> I'm struggling with network support from a compatible ne2000 NIC, and 
> would like to know from people who use this driver what cards do 
> indeed work.
> I'm using a pc386 BSP on a regular PC and the ISA card i'm using is a 
> Novell/Anthem NE2000 compatible. It works fine on Linux and there it 
> is identified as a ne1000/ne2000 isa/pnp ethernet card.
> I have defined the same IRQ and IO in Linux (as well as other values i

> found with google) for the netdemo application with the hope that 
> there would be some issues with those values... But to no avail.
> I used a sniffer and it seems not a single bit get's out of that
> I tried both using BOOTP and giving it an IP... nothing happens.
> When i send an UDP packet, netdemo sends it away.. well that is what 
> it thinks. But when i send a TCP packet it seems to crash, but 
> eventually complains about a timeout.
> I also tested netdemo in Bochs, it works fine except for some heavy 
> packet loss...
> Any hints, help, ideas?
> At the moment the only way out of this, that i can see, it to buy a 
> compatible NIC or debug this code over serial (a painfull task i 
> suppose).
> Thank your for your input

More information about the users mailing list