Can't get if_txp(4) to attach to a 3CR990B-TXM NIC

Pyun YongHyeon pyunyh at gmail.com
Thu Jun 14 04:19:32 UTC 2007


On Thu, Jun 14, 2007 at 12:58:07PM +0900, To Freddie Cash wrote:
 > On Wed, Jun 13, 2007 at 09:01:39AM -0700, Freddie Cash wrote:
 >  > On Tuesday 12 June 2007 09:15 pm, Pyun YongHyeon wrote:
 >  > > On Tue, Jun 12, 2007 at 10:20:11AM -0700, Freddie Cash wrote:
 >  > >  > On Friday 08 June 2007 09:59 pm, Pyun YongHyeon wrote:
 >  > >  > > On Fri, Jun 08, 2007 at 09:13:37AM -0700, Freddie Cash wrote:
 >  > >  > >  > Good morning,
 >  > >  > >  >
 >  > >  > >  > I'm having a bit of an issue getting a 3CR990B-TXM NIC detected
 >  > >  > >  > and usable.  Just wondering if anyone knows of any issues with
 >  > >  > >  > this NIC chipset and/or with the motherboard chipset.
 >  > >  > >  >
 >  > >  > >  > The motherboard is a Biostar GeForce 6100 AM2 using an nVidia
 >  > >  > >  > nForce 410 chipset and nVidia GeForce 6100 vide chipset.
 >  > >  > >  >
 >  > >  > >  > I've tried FreeBSD 6.1, 6.2, 6-STABLE (from Wed), and 7-CURRENT
 >  > >  > >  > (from Thu) on this system.  Everything installs nicely,
 >  > >  > >  > everything on the board is detected correctly and usable.  It's
 >  > >  > >  > just the PCI NIC that doesn't work.
 >  > >  > >  >
 >  > >  > >  > If I compile a custom kernel without any network drivers in it,
 >  > >  > >  > and then kldload if_txp, the following appears (same message on
 >  > >  > >  > all 4 versions):
 >  > >  > >  >
 >  > >  > >  > txp0: <3Com 3cR990B-TXM Etherlink with 3XP Processor> port
 >  > >  > >  > 0xbc00-0xbc7f mem 0xfdcff000-0xfdcff07f irq 16 at device 8.0 on
 >  > >  > >  > pci3 txp0: not waiting for boot
 >  > >  > >  > device_attach: txp0 attach returned -1
 >  > >  > >
 >  > >  > > Would you try attached path?
 >  > >  > > It wouldn't fix your issue but it will handle failure of
 >  > >  > > contigmalloc as expected.
 >  > >  >
 >  > >  > Patch applies cleanly, module compiles cleanly, and module is
 >  > >  > kldloaded cleanly.  But same error message as before, and no txp0
 >  > >  > device is created.
 >  > >  >
 >  > >  > Tested on 7-CURRENT from last week.
 >  > >
 >  > > Thanks for testing!
 >  > >
 >  > > It seems that the message will show up in case of firmware loading/ring
 >  > > initialization failure. Try attached patch which will show failing
 >  > > function name.
 >  > 
 >  > Patch uplied cleanly, module compiled clealy, and module was kldloaded 
 >  > cleanly.
 >  > 
 >  > Error message is now:
 >  > txp0: <3Com 3cR990B-TXM Etherlink with 3XP Processor> port 0xbc00-0xbc7f 
 >  > mem 0xfdcff000-0xfdcff07f irq 18 at device 6.0 on pci3
 >  > txp0: txp_download_fw: not waiting for boot
 >  > device_attach: txp0 attach returned -1
 >  > 
 >  > The IRQ and device numbers changed as it's in a different PCI slot than 
 >  > before.
 >  > 
 >  > Looks like your guess was right, there's something not working right in 
 >  > the firmware download.
 >  > 
 > 
 > Revert previous patch and apply attached patch again.
 > Please give it spin and let me know result.
 > 
 >  > > Because I don't have 3CR990 hardware it's very hard to fix it. I'm
 >  > > unsure remote debugging would help here.
 >  > > Btw, it seems the hardware looks very good(except for extra copying on
 >  > > strict alignment architecture) and it even supports TSO!
 >  > 
 >  > We normally use 3C905-series and 3C980-series NICs.  Our local PC vendor 
 >  > sent us these instead when we ordered low-profile NICs to put into our 
 >  > new firewall boxes (while we wait for the back-order on Intel gigabit 
 >  > dual-port, low-profile, PCIe NICs to be filled).
 >  > 
 > 
 > I don't have experience from 3C980 but it seems the 3C990 with 3XP
 > processor looks better hardware than 3C905/3C980 series.
 > 
 >  > I was going to try upgrading the firmware on the NICs, as there's an 
 >  > update available on the 3Com website, but the installer requires a 
 >  > Windows box (tried via a DOS boot disk and get the "Can't be run in DOS 
 >  > mode" error), which we don't have available at the moment.
 >  > 

Forgot to say an important thing.
It seems that OpenBSD has a newer firmware image than that of FreeBSD.
If you are still in trouble with firmware, try updating the firmware
image at the following URL.
http://people.freebsd.org/~yongari/txp/3c990img.h

Just replace sys/dev/txp/3c990img.h with the file at the URL.
-- 
Regards,
Pyun YongHyeon


More information about the freebsd-stable mailing list