Hello Kevin, On Wed, 27 Jan 2016 16:29:42 +0000, Kevin Smith <kevin.sm...@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. _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot