Date: Tue, 24 Apr 2007 11:03:27 -0700 From: "Jack Vogel" <jfvogel@gmail.com> To: stefan.lambrev@sun-fish.com Cc: freebsd-net@freebsd.org Subject: Re: em0 - bge0 failed to work at 1000baseTX Message-ID: <2a41acea0704241103r59a1fa8di7e7747e191eea787@mail.gmail.com> In-Reply-To: <462E3B4A.5030307@sun-fish.com> References: <462E3B4A.5030307@sun-fish.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 4/24/07, Stefan Lambrev <stefan.lambrev@sun-fish.com> wrote: > Hello, > > I'm trying to get two gigabit network cards to work together. > > em0: <Intel(R) PRO/1000 Network Connection Version - 6.2.9> port > 0x1000-0x101f mem 0xf0500000-0xf051ffff,0xf0524000-0xf0524fff irq 19 at > device 25.0 on pci0 > > em0@pci0:25:0: class=0x020000 card=0x2800103c chip=0x104a8086 rev=0x02 > hdr=0x00 > vendor = 'Intel Corporation' > class = network > subclass = ethernet > > and broadcom on the other end: > > bge0: <Broadcom BCM5750 C1, ASIC rev. 0x4201> mem 0xf4100000-0xf410ffff > irq 16 at device 0.0 on pci8 > > bge0@pci8:0:0: class=0x020000 card=0x30a3103c chip=0x16fd14e4 rev=0x21 > hdr=0x00 > vendor = 'Broadcom Corporation' > device = 'BCM5753M NetXtreme Gigabit Ethernet PCI Express' > class = network > subclass = ethernet > > > When I connect both networks without switch e.g. directly they auto > negotiate to: > media: Ethernet autoselect (100baseTX <full-duplex>) > but I want 1000baseTX :( > > First thing that I tried was to force both network card with: > ifconfig bge0/em0 media 1000baseTX mediaopt full-duplex > but this lead to status: no carrier > > Second step was to set bge link0 and em0 link1, but still "no carrier" > (from bge manual) > > On the machine with em card I have linux installed so I boot under linux > and then everything works > with autoselect, and I'm able to transfer with speed +50MB/s. > > When I forced both network cards to 1000baseTX I notice this: > > em0 media: Ethernet 1000baseTX <full-duplex> (autoselect) > > ^^^^^^^^ > bge0 media: Ethernet 1000baseTX <full-duplex> (none) > > ^^^^ > > Something else that is quite strange is that when I change em media from > autoselec to 1000baseTX, > I see that for 2-3 seconds there is a connection between cards (e.g. > status: active), but just for 2-3 seconds > and then it disconnects again. (ping between hosts works for 2 seconds) > At this time ifconfig shows: > em0 > media: Ethernet 1000baseTX <full-duplex> > > ^^^^^^ no autoselect here ? > status: active > > and bge0: > media: Ethernet autoselect (1000baseTX <full-duplex>) ( I left bge to > autoselect at some point as I saw it does not change a thing..) > status: active > > I compiled new kernel with > #define EM_MASTER_SLAVE 2 (and then 3) > in if_em.h (as I'm suspecting em driver ..) > but still no success. > > Last thing that I notice while (re)booting freebsd server with em0 is that > during starting program and rc scripts the status of the network changed > from 100mbps -> 1000mbps -> no carrier -> 100mbps. > > So any ideas how to get my network working at gigabit speeds? :) > > P.S. both machines are running freebsd 6.2 stable - em0 is i386 and bge0 > is on amd64. > em0 was tested with 6.2-release too. > > Thanks in advance. Do me a favor please, go to downloadfinder.intel.com and get my latest driver, its version 6.3.9, since ICH8 is fairly recent and has had some late-breaking fixes in shared code its possible that will solve things. You will want to use this driver as a module, its a hassle to build into the kernel (although there is a patch to allow you to do that if you wish). Please report back EITHER if it works or fails, if it does still fail I will have our test/validation group get hardware set up to look into this. Jack
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?2a41acea0704241103r59a1fa8di7e7747e191eea787>