On 10/07/15 14:14, Stas Sergeev wrote: > 10.07.2015 23:44, Florian Fainelli пишет: >> On 10/07/15 09:41, Stas Sergeev wrote: >>> Currently fixed_phy driver recognizes only the link-up state. >>> This simple patch adds an implementation of link-down state. >>> The actual change is 1-line, the rest is an indentation. >> It is not clear to me how this is useful, if you have a link_update >> callback manipulating the link state, the fixed PHY driver returns >> appropriate MII_BMSR values and always re-initializes everything. > It returns the appropriate values only for link status (when its down), > but it still returns speed, duplex etc as if the link is up. I had hard > times finding the relevant specs, but from what I have googled, > when link is down, the speed/duplex/etc status fields should _also_ > be zero, which is what my patch does. > What is more important is that fixed_phy_add() would return > -EINVAL if you didn't specify speed while the link is down. > This is an absolute must-fix, or I will have to add an arbitrary > speed value again, on which you already objected.
Ok, but that does not seems to be a code path that you can hit, unless you are already modifying drivers/of/of_mdio.c::of_fixed_phy_register_link() and overriding how status.link is defined, am I missing something? > >> Is this meant to be some sort of optimization? If so, you could just >> avoid the re-intendation completely and do a goto instead? > Oh, c'mon... Adding goto just to keep the _patch_ smaller? Well, yes, so it's easy to audit the changes? > (not smaller code, just a smaller patch) > Well, this is certainly something that can be done, feel free > to request that explicitly and I'll release v3 next week. I hereby explicitly request that you make this a new iteration using a goto. Thank you. -- Florian -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/