Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 28 Mar 2009 17:09:24 +0900
From:      Pyun YongHyeon <pyunyh@gmail.com>
To:        Nikolay Denev <ndenev@gmail.com>
Cc:        freebsd-current@freebsd.org
Subject:   Re: axe(4) (Belkin F5D5055) problems
Message-ID:  <20090328080924.GD99923@michelle.cdnetworks.co.kr>
In-Reply-To: <75656435-49E2-457A-9CFE-8706CD44916E@gmail.com>
References:  <75656435-49E2-457A-9CFE-8706CD44916E@gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help

--cWoXeonUoKmBZSoM
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

On Fri, Mar 27, 2009 at 09:14:06PM +0200, Nikolay Denev wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> Hello,
> 
> I'm running -current from 23.03.09 and I'm experiencing some axe(4)  
> problems.
> Basically the network connection works but when some more serious  
> traffic hits the
> interface (i.e. torrent download) it then dies, ifconfig down/up
> does not help, only replugging of the adapter.
> 
> I've tried running with hw.usb2.axe.debug=15 and the output was many  
> lines of:
> 
>    axe_bulk_write_callback:853: transfer complete
> 
> then a pause of several seconds and the kernel begins to print :
> 
>    axe_bulk_write_callback:925: transfer error, USB_ERR_TIMEOUT
> 
> Another strange thing that I noticed is that, while the interface  
> seems to be
> connected and working, if I type many times ifconfig ue0 consecutively
> most of the time it would show different settings for the auto  
> negotiated link.
> I.e. it would cycle between 100baseTX-FDX, 1000baseT-FDX, no carrier,
> 100BaseT-FDX hw-loopback and 1000BaseT-FDX hw-loopback.
> 
> The switch does not seem to register link flaps.
> 

axe(4) requires exact link state/speed information from mii(4) to
reprogram controller to resolved speed/duplex. In this case
ukphy(4) seems to report fake link state/speed to axe(4).

> The kernel messages for the interface are :
> 
>    ugen2.5: <Belkin Components> at usbus2
>    axe0: <Belkin Components F5D5055, rev 2.00/0.01, addr 5> on usbus2
>    axe0: PHYADDR 0xe0:0x01
>    miibus0: <MII bus> on axe0
>    ukphy0: <Generic IEEE 802.3u media interface> PHY 1 on miibus0
>    ukphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX,  
> 1000baseT, 1000baseT-FDX, auto
>    ue0: <USB Ethernet> on axe0
>    ue0: Ethernet address: 00:11:50:xx:xx:xx
> 
> devinfo -vr | grep phy
> ukphy0 pnpinfo oui=0xa0bc model=0x1 rev=0x2 at phyno=1
> 

This looks like Agere systems ET110C TruePHY. Would you try
attached patch? Because truephy(4) pokes some undocumented PHY
registers on PHY reset I'm not sure this model also requires that
magic to make it work though.

--cWoXeonUoKmBZSoM
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment; filename="mii.ET110C.patch"

Index: sys/dev/mii/truephy.c
===================================================================
--- sys/dev/mii/truephy.c	(revision 190500)
+++ sys/dev/mii/truephy.c	(working copy)
@@ -76,6 +76,7 @@
 };
 
 static const struct mii_phydesc truephys[] = {
+	MII_PHY_DESC(AGERE,	ET1011C_1),
 	MII_PHY_DESC(AGERE,	ET1011C),
 	MII_PHY_END
 };
Index: sys/dev/mii/miidevs
===================================================================
--- sys/dev/mii/miidevs	(revision 190500)
+++ sys/dev/mii/miidevs	(working copy)
@@ -108,6 +108,7 @@
  */
 
 /* Agere Systems PHYs */
+model AGERE ET1011C_1		0x0001 ET1011C 10/100/1000baseT PHY
 model AGERE ET1011C		0x0004 ET1011C 10/100/1000baseT PHY
 
 /* Altima Communications PHYs */

--cWoXeonUoKmBZSoM--



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