Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 7 Oct 2009 11:02:57 -0700
From:      Pyun YongHyeon <pyunyh@gmail.com>
To:        Ian Freislich <ianf@clue.co.za>
Cc:        current@freebsd.org
Subject:   Re: alc(4) link autoselect problem
Message-ID:  <20091007180257.GA3843@michelle.cdnetworks.com>
In-Reply-To: <E1MvPZq-000Fqu-Ti@clue.co.za>
References:  <E1MvPZq-000Fqu-Ti@clue.co.za>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Oct 07, 2009 at 08:00:42AM +0200, Ian Freislich wrote:
> Hi
> 
> On my recently acquired netbook (compaq mini-110), the ethernet
> doesn't autoselect the link speed properly.  I think this is because
> HP chose the cheapest ethernet controler and the cheapest PHY and

Don't know it's cheapest controller but alc(4) hardwares would be
better than ale(4) hardwares. Due to lack of documentation I'm not
sure but alc(4) seems to have a header split feature which I don't
know how to enable the feature.

> there's a speed missmatch (or the PHY isn't correctly detected):
> 
> alc0: <Atheros AR8132 PCIe Fast Ethernet> port 0xec80-0xecff mem 0xfebc0000-0xfebfffff irq 17 at device 0.0 on pci2
> alc0: 15872 Tx FIFO, 15360 Rx FIFO
> alc0: Using 1 MSI message(s).
> miibus0: <MII bus> on alc0
> atphy0: <Atheros F1 10/100/1000 PHY> PHY 0 on miibus0
> atphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
> alc0: Ethernet address: 00:25:b3:6f:ab:9a
> alc0: [FILTER]
> 
> alc0@pci0:2:0:0:        class=0x020000 card=0x308f103c chip=0x10621969 rev=0xc0 hdr=0x00
>     vendor     = 'Attansic (Now owned by Atheros)'
>     class      = network
>     subclass   = ethernet
>     cap 01[40] = powerspec 3  supports D0 D3  current D0
>     cap 05[48] = MSI supports 1 message, 64 bit enabled with 1 message
>     cap 10[58] = PCI-Express 1 endpoint max data 128(4096) link x1(x1)
>     cap 03[6c] = VPD
> 
> The AR8132 is Fast Ethernet, but the Atheros F1 is gigabit capable.

The atphy(4) recognizes PHY as F1 gigabit PHY because AR8132 uses
the same PHY id of F1 gigabit PHY. There is no way to know whether
it really has F1 gigabit PHY in driver's view.

> If I set the media to 100BaseTX full-duplex it works.

If link parter used auto-negotiation, this forced media selection
shall make your link partner select half-duplex mode instead of
full-duplex due to the nature of parallel detection.

> 

I couldn't see link establishment issues on AR8132 sample board.
Does link partner also see no link when you use auto-negotiation on
alc(4)? Does your link partner support 1000baseT link?
Can you see blinking LED of AR8132 when link was not established?
How about unplugging UTP cable and then replug the cable after
a couple of seconds? Does it make any difference?
How about checking MIB statistics of controller?
(sysctl dev.alc.0.stats)



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