bge on the new Mac Mini

YongHyeon PYUN pyunyh at gmail.com
Thu Nov 29 00:08:24 UTC 2012


On Wed, Nov 28, 2012 at 10:12:05AM -0500, Richard Kuhns wrote:
> On 11/27/12 19:19, YongHyeon PYUN wrote:
> > On Tue, Nov 27, 2012 at 08:34:13AM -0500, Richard Kuhns wrote:
> >> On 11/27/12 00:24, YongHyeon PYUN wrote:
> >>> On Mon, Nov 26, 2012 at 10:13:47AM -0500, Richard Kuhns wrote:
> >>>> On 11/21/12 21:08, YongHyeon PYUN wrote:
> >>>>> On Thu, Nov 22, 2012 at 10:49:21AM +0900, YongHyeon PYUN wrote:
> >>>>>> On Wed, Nov 21, 2012 at 02:59:34PM -0500, Richard Kuhns wrote:
> >>>>>>> On 11/20/12 03:52, YongHyeon PYUN wrote:
> >>>>>>>> On Fri, Nov 16, 2012 at 10:30:04AM -0500, Richard Kuhns wrote:
> >>>>>>>>> Hi all,
> >>>>>>>>>
> >>>>>>>>> Over the last month or so I've installed FreeBSD 9 (-stable) on several Mac
> >>>>>>>>> Minis via the memstick image; they seem to be pretty good little boxes for
> >>>>>>>>> things like offsite secondary nameservers, for example, and they're easily
> >>>>>>>>> replaced in case of problems.
> >>>>>>>>>
> >>>>>>>>> However, the newest minis have slightly different hardware, and FreeBSD can't
> >>>>>>>>> find the built-in NIC. pciconf -lv on the new mini shows it as
> >>>>>>>>>
> >>>>>>>>> none3 at pci0:1:0:0:       class=0x020000 card=0x168614e4 chip=0x168614e4 rev=0x01
> >>>>>>>>
> >>>>>>>> It seems this controller is BCM57766.
> >>>>>>>>
> >>>>>>>>> hdr=0x00
> >>>>>>>>>     vendor     = 'Broadcom Corporation'
> >>>>>>>>>     class      = network
> >>>>>>>>>     subclass   = ethernet
> >>>>>>>>>
> >>>>>>>>> The previous edition mini (that works) reports
> >>>>>>>>>
> >>>>>>>>> bge0 at pci0:2:0:0:	class=0x020000 card=0x16b414e4 chip=0x16b414e4 rev=0x10 hdr=0x00
> >>>>>>>>>     vendor     = 'Broadcom Corporation'
> >>>>>>>>>     device     = 'NetXtreme BCM57765 Gigabit Ethernet PCIe'
> >>>>>>>>>     class      = network
> >>>>>>>>>     subclass   = ethernet
> >>>>>>>>>
> >>>>>>>>> Is there a chance that adding the new card/chip info to the current driver would
> >>>>>>>>> allow it to work? I'll be happy to test and report back. I'm afraid I'm not
> >>>>>>>>> familiar enough with hardware at that level to figure out the patch myself.
> >>>>>>>>>
> >>>>>>>>
> >>>>>>>> Try attached patch and let me know whether the patch works or not.
> >>>>>>>> If the patch works please share dmesg output(bge(4) and brgphy(4)
> >>>>>>>> output only).
> >>>>>>>> Note, the patch was generated against CURRENT.
> >>>>>>>>
> >>>>>>>
> >>>>>>> I'm afraid it didn't help. I ended up grabbing if_bge.c and if_bgereg.h from
> >>>>>>
> >>>>>> I guess you also need to copy brgphy.c from HEAD to
> >>>>>> /usr/src/sys/dev/mii directory.
> >>>>>>
> >>>>>>> HEAD using svnweb.freebsd.org. The patch installed cleanly and there were no
> >>>>>>> errors during the build, but still no NIC.
> >>>>>>
> >>>>>> Does it mean you're not seeing bge0 interface? Or you can't pass
> >>>>>> any traffic via bge0?
> >>>>>
> >>>>> Oops, it seems I've not included your device ID in the diff.
> >>>>> Try attach one instead. Make sure you use brgphy.c from HEAD.
> >>>>>
> >>>>
> >>>> There's progress! With your latest patch using brgphy.c, if_bge.c, and
> >>>> if_bgereg.h from head I'm now seeing the bge0 interface. Unfortunately, the
> >>>> moment I try to configure it the box locks up completely; it won't even toggle
> >>>> the caps lock LED.
> >>>>
> >>>> Booting single user and running ifconfig shows:
> >>>>
> >>>> bge0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
> >>>> options=8009b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,LINKSTATE>
> >>>> 	ether a8:20:66:11:3b:d6
> >>>> 	nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
> >>>> 	media: Ethernet autoselect (1000baseT <full-duplex>)
> >>>> 	status: active
> >>>>
> >>>> I did a verbose boot; here's the part that seems to be relevant to bge0:
> >>>>
> >>>> bge0: <Broadcom NetXtreme Gigabit Ethernet Controller, ASIC rev. 0x57766001> mem
> >>>> 0xa0400000-0xa040ffff,0xa0410000-0xa041ffff irq 16 at device 0.0 on pci1
> >>>> bge0: CHIP ID 0x10110142; ASIC REV 0x10110; CHIP REV 0x101101; PCI-E
> >>>   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> >>>
> >>> All these information are garbage which indicates a bug in the diff.
> >>>
> >>>> miibus0: <MII bus> on bge0
> >>>> brgphy0: <BCM57765 1000BASE-T media interface> PHY 1 on miibus0
> >>>> brgphy0: OUI 0x001be9, model 0x0024, rev. 1
> >>>> brgphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT,
> >>>> 1000baseT-master, 1000baseT-FDX, 1000baseT-FDX-master, auto, auto-flow
> >>>> bge0: bpf attached
> >>>> bge0: Ethernet address: a8:20:66:11:3b:d6
> >>>> ioapic0: routing intpin 16 (PCI IRQ 16) to lapic 0 vector 61
> >>>>
> >>>> I greatly appreciate your efforts. I'm sorry for the delay getting back with
> >>>> you, but we had a busy Thanksgiving weekend.
> >>>>
> >>>
> >>> Try again with attached bge.57766.diff3.
> >>> Thanks for testing!
> >>>
> >>
> >> I don't think the patch actually got attached :-(
> > 
> > Oops, attached.
> > 
> 
> And there was great rejoicing...
> 
> It seems to take longer than I'm used to for it to decide it has link (about
> halfway through 'waiting for the default route interface'), but it works!
> 

Great. Could you show me dmesg(bge(4) and brgphy(4) only) and
"ifconfig bge0" output?

> I've just installed subversion, and I'm doing an 'svn co' of stable/9.
> 
> Many thanks for the work you've done!


More information about the freebsd-stable mailing list