# NIC not recognized?



## DrinkingGuinness (Feb 23, 2009)

Hi,

I have a new IBM server with a PCI NetXtreme II BCM5709 Gigabit Ethernet adapter.  FreeBSD sees the two onboard interfaces but does not see the two pic interfaces.  I am fairly new to FreeBSD and don't really know where to start to try and get this NIC working.  I am running FreeBSD 7.1 minimal installation.

Thanks in advance,
Sean :beergrin


----------



## ale (Feb 23, 2009)

What is the output of `# pciconf -lv` ?
The driver should be _bce_.
It seems that BCM5709 is not supported from 7.1 but it should be on CURRENT.
http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/dev/bce/if_bce.c.diff?r1=1.34.2.3.2.5;r2=1.50;f=h


----------



## DrinkingGuinness (Feb 23, 2009)

Thanks for the help.

here is the output..

# pciconf -lv

hostb0@pci0:0:0:0:      class=0x060000 card=0x80868086 chip=0x25c08086 rev=0x31 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '5000X Chipset Memory Controller Hub'
    class      = bridge
    subclass   = HOST-PCI
pcib1@pci0:0:2:0:       class=0x060400 card=0x00000000 chip=0x25f78086 rev=0x31 hdr=0x01
    vendor     = 'Intel Corporation'
    device     = '5000 Series Chipset PCIe x8 Port 2-3'
    class      = bridge
    subclass   = PCI-PCI
pcib6@pci0:0:3:0:       class=0x060400 card=0x00000000 chip=0x25e38086 rev=0x31 hdr=0x01
    vendor     = 'Intel Corporation'
    device     = '5000 Series Chipset PCIe x4 Port 3'
    class      = bridge
    subclass   = PCI-PCI
pcib7@pci0:0:4:0:       class=0x060400 card=0x00000000 chip=0x25f88086 rev=0x31 hdr=0x01
    vendor     = 'Intel Corporation'
    device     = '5000 Series Chipset PCIe x8 Port 4-5'
    class      = bridge
    subclass   = PCI-PCI
pcib8@pci0:0:5:0:       class=0x060400 card=0x00000000 chip=0x25e58086 rev=0x31 hdr=0x01
    vendor     = 'Intel Corporation'
    device     = '5000 Series Chipset PCIe x4 Port 5'
    class      = bridge
    subclass   = PCI-PCI
pcib9@pci0:0:6:0:       class=0x060400 card=0x00000000 chip=0x25e68086 rev=0x31 hdr=0x01
    vendor     = 'Intel Corporation'
    device     = '5000 Series Chipset PCIe x4 Port 6'
    class      = bridge
    subclass   = PCI-PCI
pcib11@pci0:0:7:0:      class=0x060400 card=0x00000000 chip=0x25e78086 rev=0x31 hdr=0x01
    vendor     = 'Intel Corporation'
    device     = '5000 Series Chipset PCIe x4 Port 7'
    class      = bridge
    subclass   = PCI-PCI
none0@pci0:0:8:0:       class=0x088000 card=0x02dd1014 chip=0x1a388086 rev=0x31 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '5000 5000 Series Chipset DMA Engine'
    class      = base peripheral
hostb1@pci0:0:16:0:     class=0x060000 card=0x02dd1014 chip=0x25f08086 rev=0x31 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '5000 Series Chipset Error Reporting Registers'
    class      = bridge
    subclass   = HOST-PCI
hostb2@pci0:0:16:1:     class=0x060000 card=0x80868086 chip=0x25f08086 rev=0x31 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '5000 Series Chipset Error Reporting Registers'
    class      = bridge
    subclass   = HOST-PCI
hostb3@pci0:0:16:2:     class=0x060000 card=0x80868086 chip=0x25f08086 rev=0x31 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '5000 Series Chipset Error Reporting Registers'
    class      = bridge
    subclass   = HOST-PCI
hostb4@pci0:0:17:0:     class=0x060000 card=0x80868086 chip=0x25f18086 rev=0x31 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '5000 Series Chipset Reserved Registers'
    class      = bridge
    subclass   = HOST-PCI
hostb5@pci0:0:19:0:     class=0x060000 card=0x80868086 chip=0x25f38086 rev=0x31 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '5000 Series Chipset Reserved Registers'
    class      = bridge
    subclass   = HOST-PCI
hostb6@pci0:0:21:0:     class=0x060000 card=0x02dd1014 chip=0x25f58086 rev=0x31 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '5000 Series Chipset FBD Registers'
    class      = bridge
    subclass   = HOST-PCI
hostb7@pci0:0:22:0:     class=0x060000 card=0x02dd1014 chip=0x25f68086 rev=0x31 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '5000 Series Chipset FBD Registers'
    class      = bridge
    subclass   = HOST-PCI
pcib12@pci0:0:28:0:     class=0x060400 card=0x02dd1014 chip=0x26908086 rev=0x09 hdr=0x01
    vendor     = 'Intel Corporation'
    device     = '631xESB/632xESB/3100 PCIe Root Port 1'
    class      = bridge
    subclass   = PCI-PCI
uhci0@pci0:0:29:0:      class=0x0c0300 card=0x02dd1014 chip=0x26888086 rev=0x09 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '631xESB/632xESB/3100 Chipset USB Universal Host Controller'
    class      = serial bus
    subclass   = USB
uhci1@pci0:0:29:1:      class=0x0c0300 card=0x02dd1014 chip=0x26898086 rev=0x09 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '631xESB/632xESB/3100 Chipset USB Universal Host Controller'
    class      = serial bus
    subclass   = USB
uhci2@pci0:0:29:2:      class=0x0c0300 card=0x02dd1014 chip=0x268a8086 rev=0x09 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '631xESB/632xESB/3100 Chipset USB Universal Host Controller'
    class      = serial bus
    subclass   = USB
ehci0@pci0:0:29:7:      class=0x0c0320 card=0x02dd1014 chip=0x268c8086 rev=0x09 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '631xESB/632xESB/3100 Chipset USB2 Enhanced Host Controller'
    class      = serial bus
    subclass   = USB
pcib14@pci0:0:30:0:     class=0x060401 card=0x02dd1014 chip=0x244e8086 rev=0xd9 hdr=0x01
    vendor     = 'Intel Corporation'
    device     = '82801 Family (ICH2/3/4/4/5/5/6/7/8/9,63xxESB) Hub Interface to PCI Bridge'
    class      = bridge
    subclass   = PCI-PCI
isab0@pci0:0:31:0:      class=0x060100 card=0x00000000 chip=0x26708086 rev=0x09 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '631xESB/632xESB/3100 LPC Interface Controller'
    class      = bridge
    subclass   = PCI-ISA
atapci0@pci0:0:31:1:    class=0x01018a card=0x02dd1014 chip=0x269e8086 rev=0x09 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '631xESB/632xESB/3100 Ultra ATA Storage Controller'
    class      = mass storage
    subclass   = ATA
none1@pci0:0:31:3:      class=0x0c0500 card=0x02dd1014 chip=0x269b8086 rev=0x09 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '631xESB/632xESB/3100 SMBus Controller'
    class      = serial bus
    subclass   = SMBus
pcib2@pci0:16:0:0:      class=0x060400 card=0x02dd1014 chip=0x35008086 rev=0x01 hdr=0x01
    vendor     = 'Intel Corporation'
    device     = '631xESB/632xESB PCIe Upstream Port'
    class      = bridge
    subclass   = PCI-PCI
pcib5@pci0:16:0:3:      class=0x060400 card=0x02dd1014 chip=0x350c8086 rev=0x01 hdr=0x01
    vendor     = 'Intel Corporation'
    device     = '631xESB/632xESB PCIe to PCI-X Bridge'
    class      = bridge
    subclass   = PCI-PCI
pcib3@pci0:17:0:0:      class=0x060400 card=0x02dd1014 chip=0x35108086 rev=0x01 hdr=0x01
    vendor     = 'Intel Corporation'
    device     = '631xESB/632xESB PCIe Downstream Port E1'
    class      = bridge
    subclass   = PCI-PCI
pcib4@pci0:17:1:0:      class=0x060400 card=0x02dd1014 chip=0x35148086 rev=0x01 hdr=0x01
    vendor     = 'Intel Corporation'
    device     = '631xESB/632xESB PCIe Downstream Port E2'
    class      = bridge
    subclass   = PCI-PCI
none2@pci0:7:0:0:       class=0x020000 card=0x190714e4 chip=0x163914e4 rev=0x20 hdr=0x00
    vendor     = 'Broadcom Corporation'
    device     = 'NetXtreme II BCM5709 Gigabit Ethernet'
    class      = network
    subclass   = ethernet
none3@pci0:7:0:1:       class=0x020000 card=0x190714e4 chip=0x163914e4 rev=0x20 hdr=0x00
    vendor     = 'Broadcom Corporation'
    device     = 'NetXtreme II BCM5709 Gigabit Ethernet'
    class      = network
    subclass   = ethernet
pcib10@pci0:3:0:0:      class=0x060400 card=0x00000000 chip=0x01031166 rev=0xc3 hdr=0x01
    vendor     = 'ServerWorks (Was: Reliance Computer Corp)'
    device     = 'BCM5715 Broadcom dual gigabit, pci bridge'
    class      = bridge
    subclass   = PCI-PCI
bce0@pci0:4:0:0:        class=0x020000 card=0x03421014 chip=0x164c14e4 rev=0x12 hdr=0x00
    vendor     = 'Broadcom Corporation'
    device     = '5708C Broadcom NetXtreme II Gigabit Ethernet Adapter'
    class      = network
    subclass   = ethernet
aac0@pci0:2:0:0:        class=0x010400 card=0x95801014 chip=0x02869005 rev=0x02 hdr=0x00
    vendor     = 'Adaptec Inc'
    device     = 'AAC-RAID (Rocket)'
    class      = mass storage
    subclass   = RAID
pcib13@pci0:5:0:0:      class=0x060400 card=0x00000000 chip=0x01031166 rev=0xc3 hdr=0x01
    vendor     = 'ServerWorks (Was: Reliance Computer Corp)'
    device     = 'BCM5715 Broadcom dual gigabit, pci bridge'
    class      = bridge
    subclass   = PCI-PCI
bce1@pci0:6:0:0:        class=0x020000 card=0x03421014 chip=0x164c14e4 rev=0x12 hdr=0x00
    vendor     = 'Broadcom Corporation'
    device     = '5708C Broadcom NetXtreme II Gigabit Ethernet Adapter'
    class      = network
    subclass   = ethernet
vgapci0@pci0:1:1:0:     class=0x030000 card=0x03051014 chip=0x515e1002 rev=0x02 hdr=0x00
    vendor     = 'ATI Technologies Inc'
    device     = 'Radeon ES1000 Radeon ES1000'
    class      = display
    subclass   = VGA

Cheers :beergrin


----------



## ale (Feb 23, 2009)

DrinkingGuinness said:
			
		

> none2@pci0:7:0:0:       class=0x020000 card=0x190714e4 chip=0x163914e4 rev=0x20 hdr=0x00
> vendor     = 'Broadcom Corporation'
> device     = 'NetXtreme II BCM5709 Gigabit Ethernet'
> class      = network
> ...


This is the part about your BCM5709 and as you can see the devices are none#.
This is from _man pciconf_


			
				man pciconf said:
			
		

> The first column gives the device name, unit number, and selector.  If there is no device configured in the kernel for the PCI device in ques-tion, the device name will be ``none''.


I think that you should either switch to different hw for the moment, adding for example 2 new supported NICs, or try backporting changes on bce needed to support your NICs, hoping that only if_bce.c needs to be edited, and rebuild it.
The following link can be useful
http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/dev/bce/


----------



## DrinkingGuinness (Feb 23, 2009)

I think I will just put a supported NIC in the server.  I don't need the gigabit.  I think trying to backporting changes on bce needed to support my NICs may be a tad bit over my knowledge of FreeBSD.

Thanks a million for the help.  

Sean


----------



## ale (Feb 23, 2009)

No problem, and good luck!


----------



## DutchDaemon (Feb 23, 2009)

Part of it is in 7.1-STABLE

http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/dev/bce/if_bce.c.diff?r1=1.34.2.6;r2=1.50;f=h


----------



## ale (Feb 23, 2009)

Nice catch, DD!

I've found also this:
http://lists.freebsd.org/pipermail/freebsd-stable/2008-November/046356.html

But maybe also these should be read.
http://lists.freebsd.org/pipermail/freebsd-stable/2008-December/046881.html
http://lists.freebsd.org/pipermail/freebsd-stable/2008-December/047042.html
http://lists.freebsd.org/pipermail/freebsd-stable/2008-December/047111.html


----------



## DrinkingGuinness (Feb 23, 2009)

OK, so i ran into a snag.  I do not have any PCI-E NIC cards other than the 5790.  

Given the link you gave me, what would i need to do to update the if_bce.c file so the OS recognizes it?  Do i just rename the old one and replace it with the CURRENT?

Thanks


----------



## ale (Feb 23, 2009)

First I'd try upgrading to STABLE and see what happens.


----------

