kern/94863: [bge] hack to get bge(4) working on IBM e326m

Vivek Khera vivek at khera.org
Fri Mar 24 15:00:42 UTC 2006


The following reply was made to PR kern/94863; it has been noted by GNATS.

From: Vivek Khera <vivek at khera.org>
To: Lucas Nussbaum <lucas.nussbaum at imag.fr>
Cc: bug-followup at FreeBSD.org
Subject: Re: kern/94863: [bge] hack to get bge(4) working on IBM e326m
Date: Fri, 24 Mar 2006 09:57:58 -0500

 On Mar 24, 2006, at 5:23 AM, Lucas Nussbaum wrote:
 
 > I patched the FreeBSD driver to add those IDs, but then, when  
 > tranfering
 > large files, I got :
 >  bge1: discard frame w/o leading ethernet header (len 4294967292  
 > pkt len
 > 4294967292)
 >
 > And:
 >  Fatal trap 12: page fault while in kernel mode
 >  fault virtual address   = 0x28
 >  fault code              = supervisor write, page not present
 >  instruction pointer     = 0x8:0xffffffff80227802
 >  stack pointer           = 0x10:0xffffffffb1b00b80
 >  frame pointer           = 0x10:0xffffffffb1f3a020
 >  code segment            = base 0x0, limit 0xfffff, type 0x1b
 >                          = DPL 0, pres 1, long 1, def32 0, gran 1
 >  processor eflags        = interrupt enabled, resume, IOPL = 0
 >  current process         = 18 (irq7: bge1)
 >  trap number             = 12
 >  panic: page fault
 >  Uptime: 1m57s
 >  Cannot dump. No dump device defined.
 >  Automatic reboot in 15 seconds - press a key on the console to abort
 >
 > You didn't run into similar issues ?
 
 Yes I did when all I did was identify the card by the chip ID.  You  
 also need to activate the 5714 "evasive maneuvers" in bge.c where it  
 is special cased.  Then it works quite well (at least it doesn't  
 crash).  That's where you detect the ASIC as 0x08.
 
 I found the ID numbers by running "pciconf -l" and then adding it to  
 the driver, then I found the ASIC rev by reading the boot message  
 from FreeBSD.
 
 The "product review" literature claims it has a 5714 controller.  I  
 can forward the PDF if you care.  I put little faith into this,  
 though.  For example, the Dell PE800 literature claims it has a 5721  
 chip and so that is what the FreeBSD driver identifies the chip ID  
 as... but the pciconf database claims that chipid is a 5750A1 chip.   
 I'm inclined to trust the pciconf database more... We should make the  
 bge driver get the name from the chip like the commentary claims it  
 can do.  Then we'd know for sure!
 
 


More information about the freebsd-bugs mailing list