Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Only 100baseTX with bge BCM5722

90 views
Skip to first unread message

Josep Pujadas i Jubany

unread,
Apr 1, 2008, 5:54:37 AM4/1/08
to
Hello!

Scenario:

* Machine: HP Proliant ML110 G5
* Integrated NIC: Broadcom NetXtreme BCM5722 Gigabit Ethernet PCIe
* FreeBSD 7.0
* Kernel recompiled patching bge driver as explained at
http://www.freebsd.org/cgi/query-pr.cgi?pr=kern/119779

The card works only at 100baseTX:

media: Ethernet autoselect (100baseTX <full-duplex>)
status: active

If I try:

# ifconfig bge0 media 1000baseTX mediaopt full-duplex

I obtain:

media: Ethernet 1000baseTX <full-duplex>
status: no carrier

Of course, the card is connected to a Gigabit switch, as other FreeBSD
machines that we have.

The problem seems similar to http://lists.freebsd.org/pipermail/freebsd-
current/2008-April/084606.html

Any idea?

Regards,

Josep Pujadas

_______________________________________________
freebsd...@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-curre...@freebsd.org"

David Christensen

unread,
Apr 1, 2008, 1:35:12 PM4/1/08
to
> Hello!
>
> Scenario:
>
> * Machine: HP Proliant ML110 G5
> * Integrated NIC: Broadcom NetXtreme BCM5722 Gigabit Ethernet PCIe
> * FreeBSD 7.0
> * Kernel recompiled patching bge driver as explained at
> http://www.freebsd.org/cgi/query-pr.cgi?pr=3Dkern/119779

>
> The card works only at 100baseTX:
>
> media: Ethernet autoselect (100baseTX <full-duplex>)
> status: active
>
> If I try:
>
> # ifconfig bge0 media 1000baseTX mediaopt full-duplex
>
> I obtain:
>
> media: Ethernet 1000baseTX <full-duplex>
> status: no carrier
>
> Of course, the card is connected to a Gigabit switch, as other FreeBSD
> machines that we have.
>
> The problem seems similar to
> http://lists.freebsd.org/pipermail/freebsd-
> current/2008-April/084606.html
>
> Any idea?

What's the dmesg output? Is it using ukphy or brgphy?

Dave

Josep Pujadas i Jubany

unread,
Apr 1, 2008, 3:46:07 PM4/1/08
to
On Tue, 1 Apr 2008 10:18:55 -0700, David Christensen wrote

> > Hello!
> >
> > Scenario:
> >
> > * Machine: HP Proliant ML110 G5
> > * Integrated NIC: Broadcom NetXtreme BCM5722 Gigabit Ethernet PCIe
> > * FreeBSD 7.0
> > * Kernel recompiled patching bge driver as explained at
> > http://www.freebsd.org/cgi/query-pr.cgi?pr=kern/119779

> >
> > The card works only at 100baseTX:
> >
> > media: Ethernet autoselect (100baseTX <full-duplex>)
> > status: active
> >
> > If I try:
> >
> > # ifconfig bge0 media 1000baseTX mediaopt full-duplex
> >
> > I obtain:
> >
> > media: Ethernet 1000baseTX <full-duplex>
> > status: no carrier
> >
> > Of course, the card is connected to a Gigabit switch, as other FreeBSD
> > machines that we have.
> >
> > The problem seems similar to
> > http://lists.freebsd.org/pipermail/freebsd-
> > current/2008-April/084606.html
> >
> > Any idea?
>
> What's the dmesg output? Is it using ukphy or brgphy?
>
> Dave
>
> _______________________________________________

Dave,

Partial dmesg, concerning the NIC:

pcib4: <ACPI PCI-PCI bridge> irq 17 at device 28.5 on pci0
pci14: <ACPI PCI bus> on pcib4
bge0: <HP NC105i PCIe Gigabit Server Adapter, ASIC rev. 0xa200> mem
0xed000000-0xed00ffff irq 17 at device 0.0 on pci14
miibus0: <MII bus> on bge0
ukphy0: <Generic IEEE 802.3u media interface> PHY 1 on miibus0
ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT,
1000baseT-FDX, auto
bge0: Ethernet address: XXXXXXXXXXXXXXXXXXXXX
bge0: [ITHREAD]

bge0: link state changed to UP

Must I try 1000baseT-FDX instead than 1000baseTX in my ifconfig line?

Regards,

Josep Pujadas

Alexander Sack

unread,
Apr 1, 2008, 5:06:54 PM4/1/08
to
Hey:

I just debugged this problem on another BCM chipset. Please instead
of setting at particular speed:

ifconfig bgeX down
ifconfig bgeX media autoselect up

See if it auto-renegotiates correctly.

BCM phys are notorious for this issue. Also, do you have IPMI active?

Thanks!

-aps

--
"What lies behind us and what lies in front of us is of little concern
to what lies within us." -Ralph Waldo Emerson

Alexander Sack

unread,
Apr 1, 2008, 6:22:43 PM4/1/08
to
Actually, I jumped the gun because I'm going BCM crazy at work! :D!

David asked the right question: The dmesg output shows that this is
using ukphy not brgphy. The ukphy I believe uses mostly the common
MII code. At attach time it does try to read the right hardware bits
to parse what the PHY supports.

I noticed from your output it does support 1000baseT and 1000baseTX-FDX.

Have you used either of these in your ifconfig call with any luck?

Sorry bout that,

-aps

David Christensen

unread,
Apr 1, 2008, 9:31:35 PM4/1/08
to
> >
> > What's the dmesg output? Is it using ukphy or brgphy?
> >
>
> Partial dmesg, concerning the NIC:
>
> pcib4: <ACPI PCI-PCI bridge> irq 17 at device 28.5 on pci0
> pci14: <ACPI PCI bus> on pcib4
> bge0: <HP NC105i PCIe Gigabit Server Adapter, ASIC rev. 0xa200> mem
> 0xed000000-0xed00ffff irq 17 at device 0.0 on pci14
> miibus0: <MII bus> on bge0
> ukphy0: <Generic IEEE 802.3u media interface> PHY 1 on miibus0
> ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT,
> 1000baseT-FDX, auto
> bge0: Ethernet address: XXXXXXXXXXXXXXXXXXXXX
> bge0: [ITHREAD]
>
> bge0: link state changed to UP
>
> Must I try 1000baseT-FDX instead than 1000baseTX in my ifconfig line?

The 5722 PHY ID is available in -HEAD (see
http://fxr.watson.org/fxr/source/dev/mii/miidevs#L139)
but isn't present in RELENG_7_0 (see
http://fxr.watson.org/fxr/source/dev/mii/miidevs?v=3DRELENG70#L115).

Look at the diffs between sys/dev/mii/miidevs and sys/dev/mii/brgphy
between HEAD and RELENG_7_0 and pull in the changes for the 5722 and
build them into your kernel. If successful you should see brgphy0
and not ukphy0.

Dave

Artem Kim

unread,
Apr 2, 2008, 3:07:13 AM4/2/08
to
On Tuesday 01 April 2008 13:53:29 Josep Pujadas i Jubany wrote:

>* Integrated NIC: Broadcom NetXtreme BCM5722 Gigabit Ethernet PCIe
>* FreeBSD 7.0

....


>The card works only at 100baseTX

I have hp dl-143 and at-9724.
BCM5721 working in 1000baseTX mode if the link0 flag is set.
Without the link0 flag (bge is slave) bge working only in 100base and
vlan don't working.

Artem Kim

Josep Pujadas i Jubany

unread,
Apr 2, 2008, 5:56:27 AM4/2/08
to
On Tue, 1 Apr 2008 18:30:34 -0700, David Christensen wrote

> > >
> > > What's the dmesg output? Is it using ukphy or brgphy?
> > >
> >
> > Partial dmesg, concerning the NIC:
> >
> > pcib4: <ACPI PCI-PCI bridge> irq 17 at device 28.5 on pci0
> > pci14: <ACPI PCI bus> on pcib4
> > bge0: <HP NC105i PCIe Gigabit Server Adapter, ASIC rev. 0xa200> mem
> > 0xed000000-0xed00ffff irq 17 at device 0.0 on pci14
> > miibus0: <MII bus> on bge0
> > ukphy0: <Generic IEEE 802.3u media interface> PHY 1 on miibus0
> > ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT,
> > 1000baseT-FDX, auto
> > bge0: Ethernet address: XXXXXXXXXXXXXXXXXXXXX
> > bge0: [ITHREAD]
> >
> > bge0: link state changed to UP
> >
> > Must I try 1000baseT-FDX instead than 1000baseTX in my ifconfig line?
>
> The 5722 PHY ID is available in -HEAD (see
> http://fxr.watson.org/fxr/source/dev/mii/miidevs#L139)
> but isn't present in RELENG_7_0 (see
> http://fxr.watson.org/fxr/source/dev/mii/miidevs?v=RELENG70#L115).

>
> Look at the diffs between sys/dev/mii/miidevs and sys/dev/mii/brgphy
> between HEAD and RELENG_7_0 and pull in the changes for the 5722 and
> build them into your kernel. If successful you should see brgphy0
> and not ukphy0.
>
> Dave
> _______________________________________________

Dave,

Many thanks for your help! I'm working at 1 Gigabit! I'm very happy, it is
my first driver modification using FreeBSD!

I had to modify also /usr/src/sys/dev/mii/brgphy.c

The conclusion is if using FreeBSD 7.0, BCM5722 must be included in the
following source files:

/usr/src/sys/dev/bge/if_bge.c
/usr/src/sys/dev/bge/if_bgereg.h
/usr/src/sys/dev/mii/miidevs
/usr/src/sys/dev/mii/brgphy.c

Regards,

Josep Pujadas

David Christensen

unread,
Apr 2, 2008, 12:45:47 PM4/2/08
to
> > > > What's the dmesg output? Is it using ukphy or brgphy?
> > > >
> > >
> > > Partial dmesg, concerning the NIC:
> > >
> > > pcib4: <ACPI PCI-PCI bridge> irq 17 at device 28.5 on pci0
> > > pci14: <ACPI PCI bus> on pcib4
> > > bge0: <HP NC105i PCIe Gigabit Server Adapter, ASIC rev.
> 0xa200> mem
> > > 0xed000000-0xed00ffff irq 17 at device 0.0 on pci14
> > > miibus0: <MII bus> on bge0
> > > ukphy0: <Generic IEEE 802.3u media interface> PHY 1 on miibus0
> > > ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX,
> 1000baseT,
> > > 1000baseT-FDX, auto
> > > bge0: Ethernet address: XXXXXXXXXXXXXXXXXXXXX
> > > bge0: [ITHREAD]
> > >
> > > bge0: link state changed to UP
> > >
> > > Must I try 1000baseT-FDX instead than 1000baseTX in my
> ifconfig line?
> >
> > The 5722 PHY ID is available in -HEAD (see
> > http://fxr.watson.org/fxr/source/dev/mii/miidevs#L139)
> > but isn't present in RELENG_7_0 (see
> > http://fxr.watson.org/fxr/source/dev/mii/miidevs?v=3DRELENG70#L115).

> >
> > Look at the diffs between sys/dev/mii/miidevs and sys/dev/mii/brgphy
> > between HEAD and RELENG_7_0 and pull in the changes for the 5722 and
> > build them into your kernel. If successful you should see brgphy0
> > and not ukphy0.
> >
> > Dave
> > _______________________________________________
>
> Dave,
>
> Many thanks for your help! I'm working at 1 Gigabit! I'm very
> happy, it is
> my first driver modification using FreeBSD!
>
> I had to modify also /usr/src/sys/dev/mii/brgphy.c
>
> The conclusion is if using FreeBSD 7.0, BCM5722 must be
> included in the
> following source files:
>
> /usr/src/sys/dev/bge/if_bge.c
> /usr/src/sys/dev/bge/if_bgereg.h
> /usr/src/sys/dev/mii/miidevs
> /usr/src/sys/dev/mii/brgphy.c
>

Great! Looks like we've gained another expert. If you want to send
me the diffs I'll check them out and commit them to the RELENG_7 branch.

Dave

0 new messages