[U-Boot] [PATCH v2 2/2] net: phy: Add PHY driver for mv88e61xx switches
Albert ARIBAUD
albert.u.boot at aribaud.net
Wed Jan 27 18:28:43 CET 2016
Hello Kevin,
On Wed, 27 Jan 2016 16:29:42 +0000, Kevin Smith
<kevin.smith at elecsyscorp.com> wrote:
> Hi Joe,
> On 01/26/2016 06:11 PM, Joe Hershberger wrote:
> >> + /* Replace the bus with the fake device */
> > Fake how? This is a confusing comment to me as written.
> The genphy functions assume that they can write to the PHY directly
> using the MII bus, and the address it uses is the address of a
> register. This is not the case for this chip with multiple PHY
> interfaces, which have to be accessed indirectly. To handle this, I
> have created a "fake" mii_dev whose read/write functions are the
> indirection functions, and stored the actual mdio_bus in the private
> data for the "fake" device, which is then used by the indirect
> functions. This allows this driver to make use of common genphy stuff
> where appropriate. Maybe "wrapper" or "indirect bus" is a better name
> for it. Let me know if you have a preference or better idea.
"Indirect bus" is better IMO, as it gives a clue about what actually
happens.
> >> +
> >> + mac_addr = phydev->addr;
> >> +
> >> + for (i = 0; i < PORT_COUNT; i++) {
> >> + if ((1 << i) & CONFIG_MV88E61XX_PHY_PORTS) {
> >> + phydev->addr = i;
> >> + mv88e61xx_phy_enable(phydev, i);
> >> + mv88e61xx_phy_setup(phydev, i);
> >> + mv88e61xx_phy_config_port(phydev, i);
> > These all return status, but are ignored.
> Even if one fails, it seems appropriate to me to continue initializing
> the others and not bail completely. Should I catch the error, print a
> warning and "continue" in the loop? Or is completely bailing the right
> thing to do? If there are some errors, but other successes, what should
> the function return?
Warn for each port switch initialization failure, bail out if no port
could be initialized?
> Thanks,
> Kevin
Amicalement,
--
Albert.
More information about the U-Boot
mailing list