On Mon, 26 Oct 2020 11:57:14 -0600 Robert Hancock wrote:
> + /* If using copper mode, ensure 1000BaseX auto-negotiation is enabled */
> + if ((extsr & MII_M1111_HWCFG_MODE_MASK) ==
> + MII_M1111_HWCFG_MODE_COPPER_1000X_NOAN) {
> + int err = phy_modify(phydev, MII_M1111_PHY_EXT_SR,
> + MII_M1111_HWCFG_MODE_MASK |
> + MII_M1111_HWCFG_SERIAL_AN_BYPASS,
> + MII_M1111_HWCFG_MODE_COPPER_1000X_AN |
> + MII_M1111_HWCFG_SERIAL_AN_BYPASS);
Hm. Looks like checkpatch doesn't catch it, but this is at odds with
kernel coding style, isn't it?
1 - continuation lines need to be aligned to '('
2 - new line is required after a variable declaration
IOW:
if ((extsr & MII_M1111_HWCFG_MODE_MASK) ==
MII_M1111_HWCFG_MODE_COPPER_1000X_NOAN) {
int err = phy_modify(phydev, MII_M1111_PHY_EXT_SR,
MII_M1111_HWCFG_MODE_MASK |
MII_M1111_HWCFG_SERIAL_AN_BYPASS,
MII_M1111_HWCFG_MODE_COPPER_1000X_AN |
MII_M1111_HWCFG_SERIAL_AN_BYPASS);
if (err < 0)
return err;
}
Or:
if ((extsr & MII_M1111_HWCFG_MODE_MASK) ==
MII_M1111_HWCFG_MODE_COPPER_1000X_NOAN) {
int err;
err = phy_modify(phydev, MII_M1111_PHY_EXT_SR,
MII_M1111_HWCFG_MODE_MASK |
MII_M1111_HWCFG_SERIAL_AN_BYPASS,
MII_M1111_HWCFG_MODE_COPPER_1000X_AN |
MII_M1111_HWCFG_SERIAL_AN_BYPASS);
if (err < 0)
return err;
}
Or better still:
int err, mode;
mode = extsr & MII_M1111_HWCFG_MODE_MASK;
if (mode == MII_M1111_HWCFG_MODE_COPPER_1000X_NOAN) {
err = phy_modify(phydev, MII_M1111_PHY_EXT_SR,
MII_M1111_HWCFG_MODE_MASK |
MII_M1111_HWCFG_SERIAL_AN_BYPASS,
MII_M1111_HWCFG_MODE_COPPER_1000X_AN |
MII_M1111_HWCFG_SERIAL_AN_BYPASS);
if (err < 0)
return err;
}
> + if (err < 0)
> + return err;
> + }