Date: Sat, 29 Apr 2006 00:11:43 +0200 From: Juergen Lock <qemu-l@jelal.kn-bremen.de> To: Igor Kovalenko <garrison@mail.ru> Cc: freebsd-emulation@freebsd.org, qemu-devel@nongnu.org Subject: Re: playing with qemu's 8139 nic and FreeBSD (loopback mode missing?) Message-ID: <20060428221142.GA11504@saturn.kn-bremen.de> In-Reply-To: <445241DE.9020909@mail.ru> References: <20060427203718.GA15953@saturn.kn-bremen.de> <445241DE.9020909@mail.ru>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Apr 28, 2006 at 08:25:02PM +0400, Igor Kovalenko wrote: > Juergen Lock wrote: > > I played with > > qemu -monitor stdio -m 256 -cdrom 6.1-RC1-i386-disc1.iso -usb -soundhw es1370 -kernel-kqemu -net nic,model=rtl8139 -net user > > and got it as far as > > re0: diagnostic failed, failed to receive packet in loopback mode > > (followed by a panic :) with the (experimental) patches below. > > > > Anyone in the mood to implement loopback mode for this nic? > > > > Hmm actually... I just found the original posting in the archive, > > is C+ mode implemented now? If not re is probably not what I want, > > The rtl8139 is set up with PCI rev ID 0x20 which should be enough for OS driver > to detect C+ mode features. C+ mode is OK, tested with Linux driver. Cool, so I want FreeBSD's re driver. That one checks TxConfig tho, as changed in my patch (inside #if 0). And when changed, it still doesn't work as mentioned above because the driver expects loopback mode to be working. > > > but the rl driver that it attaches without that #if 0'd (now) hunk > > below doesnt seem to be able to get data thru either and I get > > rl0: watchdog timeout > > in dmesg, which usually means the driver doesnt receive interrupts. > > > > What the heck, I'll append a log of a run just doing in fixit->cdrom: > > ifconfig rl0 10.0.2.15 > > and then exiting (which is enough to trigger the watchdog timeout...) > > > > I'm too lasy to test with fresh freebsd installation :) No need to install FreeBSD, you can get away by just using fixit mode of an install iso, i.e. disc1. (which actually is what I did above. :) You can look at 6.1RC's re driver here: http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/dev/re/if_re.c?annotate=1.46.2.14 which includes: http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/pci/if_rlreg.h?annotate=1.51.2.3 And 6.1RC disc1 iso is e.g. here: ftp://ftp.ru.freebsd.org:/pub/FreeBSD/ISO-IMAGES-i386/6.1/6.1-RC1-i386-disc1.iso
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060428221142.GA11504>