Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 03 Feb 2004 10:39:06 -0500
From:      Jonathan Chappelow <jcchapp@emory.edu>
To:        Bjorn Eikeland <bjorn@eikeland.info>
Cc:        "freebsd-net@freebsd.org" <freebsd-net@freebsd.org>
Subject:   Re: defect onboard broadcom causing boot hang
Message-ID:  <401FC09A.4030108@emory.edu>
In-Reply-To: <opr2rk3dyeomdbx5@localhost>
References:  <opr2n3iex7omdbx5@localhost> <401EB743.4030105@emory.edu> <opr2rk3dyeomdbx5@localhost>

next in thread | previous in thread | raw e-mail | index | archive | help
Bjorn Eikeland wrote:

> Thanks for your reply Jon!
>
> I've checked the driver cd and it had the drivers under Drivers\LAN\4401\
> and I seem to remeber thats what windows once called it. The unidentified
> chip id isnt a supprise, the card worked, and suddenly turned into a
> unknown device in windows, so it must have changed somehow.
>
> So if the chip stil works then adding/changing the device id sounds like
> a plan. Having casted a underskilled eye at the sources I'm not sure what
> file to edit, but is this it?:
>
> /usr/src/sys/dev/bfe/if_bfereg.h
> ln 396: #define BCOM_DEVICEID_BCM4401   0x4401

No problem, I had to take a look at this previously too.

I think you could change that line all together, or you could possible 
add a
new device by editing both if_bfe.c and if_bfereg.h.  Maybe something like:

--- /usr/src/sys/dev/bfe/if_bfe.c       Fri Nov 14 14:00:30 2003
+++ ./if_bfe.c  Tue Feb  3 10:30:42 2004
@@ -82,6 +82,8 @@
 static struct bfe_type bfe_devs[] = {
        { BCOM_VENDORID, BCOM_DEVICEID_BCM4401,
                "Broadcom BCM4401 Fast Ethernet" },
+        { BCOM_VENDORID, BCOM_DEVICEID_BCM4401_1,
+                "Broadcom BCM4401 Fast Ethernet - A7V8X integrated" },
                { 0, 0, NULL }
 };
 
--- /usr/src/sys/dev/bfe/if_bfereg.h    Tue Sep  9 14:17:22 2003
+++ ./if_bfereg.h       Tue Feb  3 10:28:09 2004
@@ -394,6 +394,7 @@
 
 #define BCOM_VENDORID           0x14E4
 #define BCOM_DEVICEID_BCM4401   0x4401
+#define BCOM_DEVICEID_BCM4401_1 0x8000
 
 #define PCI_SETBIT(dev, reg, x, s)  \
     pci_write_config(dev, reg, (pci_read_config(dev, reg, s) | (x)), s)

I've never done this before, but It would be fun to see if this is all you
need to do.  Best of luck.

Jon

>
>> Bjorn Eikeland wrote:
>>
>>> I've just changed to using freebsd on my desktop pc, my Asus A7V8X
>>> motherboad has a onboard Broadcom chip - this just stopped working 
>>> under
>>> windows and turned into a unknown device. Asus or vendor's support 
>>> never
>>> replied so I just picked up a new fxp card.
>>
>>
>> Depending on the options, this board either has BCM4401 or BCM5702.  
>> Note "(optional)" written on the box next to Gigabit LAN.  My old 
>> Asus P4PE had the BCM4401 and I had a lot of trouble with buggy 
>> drivers (*bfe*).  The gigabit chip (BCM5702) uses bge.  Try adding 
>> both to the kernel with mii to see if either works.  Also, their 
>> might be a more detailed part number on a sticker somewhere.
>>
>>> pciconf shows this device to be a:
>>> none0@pci0:9:0: class=0x008000 card=0x80008000 chip=0x800014e4 
>>> rev=0x01 hdr=0x00
>>>     vendor   = 'Broadcom Corporation'
>>>     class    = old
>>
>>
>> According to pciids.sourceforge.net and www.pcidatabase.com, 
>> chip=0x800014e4 is unidentified.  vendor 14e4 is Broadcom, but device 
>> id 8000 is a mystery.  Although, this is close: 
>> http://pciids.sourceforge.net/iii/?i=14e44401.  Good luck with that.  
>> You may just need to edit the code and add a device id?
>>
>> Jon
>>
>
>
> _______________________________________________
> freebsd-net@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-net
> To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org"




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?401FC09A.4030108>