[PATCH 0/1 v7] net: introduce phylib

Sascha Hauer s.hauer at pengutronix.de
Wed Sep 26 07:02:44 EDT 2012


On Mon, Sep 24, 2012 at 11:31:22AM +0200, Jean-Christophe PLAGNIOL-VILLARD wrote:
> HI,
> 
> 	v7:
> 	 - drop the duplicate platform_data for fec driver
> 	   as we need to update both with the same data (piss me off)
> 
> 	v6:
> 	- probe phy at mdiobus_register
> 	- reimplement the mdiobuss support
> 
> 	v5:
> 	 - drop edev in mii_device
> 
> 	v4:
> 	 - move phy_dev attachement to eth_device instead of mii_device
> 	   this will allow multiple phy_device per mii bus
> 	 - move phy cdev to phy_device
> 	 - add interface type support (so phy driver can configure themselves
> 	   if MII/RMII/RGMII etc...
> 	 - manage link status at framework level
> 	 - mx6 update to fixup the phy at device opening
> 
> 	v3:
> 	 - fix comment
> 	 - add phy_driver probe and remove
> 	 - renambe phydev.h to phy.h and phylib.c to phy.c as in linux

I think the main reason you introduced phylib was proper link handling,
but what we have now is worse than ever!

Now when no cable is connected, the phylib internally recognizes it but
the status is never propagated. So without cable I get:

barebox at Freescale i.MX51 PDK:/ dhcp 
T transmission timeout
T T transmission timeout
T T transmission timeout
T T transmission timeout
T T transmission timeout

Plugging in a cable does not help, since the link status is only
evaluated once during eth_open. If then a cable is plugged, adjust_link
is never called, so the driver never adjusts to the actual link.

Sascha

-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |



More information about the barebox mailing list