sfc: Fix condition for no-op in set_phy_flash_cfg()
Ben Hutchings [Thu, 2 Dec 2010 13:46:14 +0000 (13:46 +0000)]
Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

drivers/net/sfc/falcon_boards.c

index cfc6a5b..cfc29d7 100644 (file)
@@ -325,7 +325,7 @@ static ssize_t set_phy_flash_cfg(struct device *dev,
                new_mode = old_mode & ~PHY_MODE_SPECIAL;
        else
                new_mode = PHY_MODE_SPECIAL;
-       if (old_mode == new_mode) {
+       if (!((old_mode ^ new_mode) & PHY_MODE_SPECIAL)) {
                err = 0;
        } else if (efx->state != STATE_RUNNING || netif_running(efx->net_dev)) {
                err = -EBUSY;