sfc: QT2025C: Add error message for suspected bad SFP+ cables
authorBen Hutchings <bhutchings@solarflare.com>
Wed, 23 Dec 2009 13:48:42 +0000 (13:48 +0000)
committerDavid S. Miller <davem@davemloft.net>
Thu, 24 Dec 2009 03:09:08 +0000 (19:09 -0800)
Some cables have EEPROMs that conflict with the PHY's on-board EEPROM
so it cannot load firmware.

Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/sfc/qt202x_phy.c

index 326ffa4..ff8f0a4 100644 (file)
@@ -87,8 +87,14 @@ static int qt2025c_wait_heartbeat(struct efx_nic *efx)
                        old_counter = counter;
                else if (counter != old_counter)
                        break;
-               if (time_after(jiffies, timeout))
+               if (time_after(jiffies, timeout)) {
+                       /* Some cables have EEPROMs that conflict with the
+                        * PHY's on-board EEPROM so it cannot load firmware */
+                       EFX_ERR(efx, "If an SFP+ direct attach cable is"
+                               " connected, please check that it complies"
+                               " with the SFP+ specification\n");
                        return -ETIMEDOUT;
+               }
                msleep(QT2025C_HEARTB_WAIT);
        }