[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20131030112348.58ceec8a@nehalam.linuxnetplumber.net>
Date: Wed, 30 Oct 2013 11:23:48 -0700
From: Stephen Hemminger <stephen@...workplumber.org>
To: netdev@...r.kernel.org
Subject: Fw: [Bug 64081] New: mdiobus_read fail and return -110 when called
from get_phy_id r6040: 0000:00:08.0 failed to register MII bus
Begin forwarded message:
Date: Wed, 30 Oct 2013 11:10:47 -0700
From: "bugzilla-daemon@...zilla.kernel.org" <bugzilla-daemon@...zilla.kernel.org>
To: "stephen@...workplumber.org" <stephen@...workplumber.org>
Subject: [Bug 64081] New: mdiobus_read fail and return -110 when called from get_phy_id r6040: 0000:00:08.0 failed to register MII bus
https://bugzilla.kernel.org/show_bug.cgi?id=64081
Bug ID: 64081
Summary: mdiobus_read fail and return -110 when called from
get_phy_id r6040: 0000:00:08.0 failed to register MII
bus
Product: Networking
Version: 2.5
Kernel Version: 3.10.17
Hardware: All
OS: Linux
Tree: Mainline
Status: NEW
Severity: blocking
Priority: P1
Component: Other
Assignee: shemminger@...ux-foundation.org
Reporter: nils.koehler@...-interfaces.de
Regression: No
I have tracked down an issue I have to get the device driver r6040.c to run on
Kernel 3.10.17.
It fails called get_phy_id.
In fails sometimes randomly on a phy id between 0 and 31.
the chance to get the error is 50% in my case after insmod r6040.ko
The error is caused by the following function:
int mdiobus_read(struct mii_bus *bus, int addr, u32 regnum)
{
int retval;
BUG_ON(in_interrupt());
mutex_lock(&bus->mdio_lock);
retval = bus->read(bus, addr, regnum);
mutex_unlock(&bus->mdio_lock);
printk(KERN_INFO "IBT Debug 1 mdiobus_read retval:%d addr:%d
regnum:%d\n",retval,addr,regnum);
return retval;
}
EXPORT_SYMBOL(mdiobus_read);
I have added a debug trace and in case of failure retval returns -110
This cause a break in get_phy_id flow and driver init fully fails because it
returns the an -EIO
I saw that the real existing phy id 1 in my case always was propper detected
but the feeding loop try to init up to 31 Phy's and mostly one of them fail.
--
You are receiving this mail because:
You are the assignee for the bug.
--
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