[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <543C2954.5010609@gmail.com>
Date: Mon, 13 Oct 2014 21:34:44 +0200
From: Angelo Dureghello <angelo70@...il.com>
To: "netdev@...r.kernel.org" <netdev@...r.kernel.org>
Subject: Fwd: micrel: ksz8051 badly detected as ksz8031
Hi,
i confirm, moving from kernel 3.5.1 to 3.17.0 the network Micrel phy
link is non
functional.
The non working detection of KSZ8051 (taken default, ksz8031, from mdio
driver)
breaks the functionality.
But this is probably due to the fact i am not using DT population, but
just using
a minimal DT just to boot (to avoidto change the bootloader setup that's
already
into production).
What change from 3.5.1 and 3.17.0 is mainly that DT support has been added.
If i copy the old 3.5.1 micrel.c i can have the link, but network was
not working
properly.
So i brute-fixed the issue into 3.17.0 with this small patchfor my need,
Imiss the complete understanding still for a proper fix.Hope you can
elucidate.
diff -crB drivers/net/ethernet/ti/davinci_mdio.c
../linux-3.17/drivers/net/ethernet/ti/davinci_mdio.c
*** drivers/net/ethernet/ti/davinci_mdio.c 2014-10-13
21:02:25.522022750 +0200
--- ../linux-3.17/drivers/net/ethernet/ti/davinci_mdio.c 2014-10-05
21:23:04.000000000 +0200
***************
*** 320,327 ****
}
#endif
- extern struct phy_driver *micrel_pdrv;
-
static int davinci_mdio_probe(struct platform_device *pdev)
{
struct mdio_platform_data *pdata = dev_get_platdata(&pdev->dev);
--- 320,325 ----
***************
*** 397,408 ****
for (addr = 0; addr < PHY_MAX_ADDR; addr++) {
phy = data->bus->phy_map[addr];
if (phy) {
- /*
- * Angelo : micrel broken the link adding OF
support.
- * waiting for the patch, i force the link to
out phy.
- */
- phy->drv = micrel_pdrv;
- data->bus->phy_map[addr] = phy;
dev_info(dev, "phy[%d]: device %s, driver %s\n",
phy->addr, dev_name(&phy->dev),
phy->drv ? phy->drv->name : "unknown");
--- 395,400 ----
diff -crB drivers/net/phy/micrel.c ../linux-3.17/drivers/net/phy/micrel.c
*** drivers/net/phy/micrel.c 2014-10-13 21:00:03.273616086 +0200
--- ../linux-3.17/drivers/net/phy/micrel.c 2014-10-05
21:23:04.000000000 +0200
***************
*** 640,650 ****
ARRAY_SIZE(ksphy_driver));
}
- /*
- * angelo, temporary patch
- */
- struct phy_driver *micrel_pdrv = &ksphy_driver[5];
-
module_init(ksphy_init);
module_exit(ksphy_exit);
Regards, angelo
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists