Merge branch 'upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/linville...
[linux-2.6-block.git] / drivers / net / ixgb / ixgb_hw.c
index 620cad48bdea98a8ab4302b6c9119b71b7a471ee..2b1515574faf1e75744601697e1d0d1dd43c2092 100644 (file)
@@ -1,7 +1,7 @@
 /*******************************************************************************
 
   
-  Copyright(c) 1999 - 2005 Intel Corporation. All rights reserved.
+  Copyright(c) 1999 - 2006 Intel Corporation. All rights reserved.
   
   This program is free software; you can redistribute it and/or modify it 
   under the terms of the GNU General Public License as published by the Free 
@@ -236,6 +236,17 @@ ixgb_identify_phy(struct ixgb_hw *hw)
                DEBUGOUT("Identified G6104 optics\n");
                phy_type = ixgb_phy_type_g6104;
                break;
+       case IXGB_DEVICE_ID_82597EX_CX4:
+               DEBUGOUT("Identified CX4\n");
+               xpak_vendor = ixgb_identify_xpak_vendor(hw);
+               if (xpak_vendor == ixgb_xpak_vendor_intel) {
+                       DEBUGOUT("Identified TXN17201 optics\n");
+                       phy_type = ixgb_phy_type_txn17201;
+               } else {
+                       DEBUGOUT("Identified G6005 optics\n");
+                       phy_type = ixgb_phy_type_g6005;
+               }
+               break;
        default:
                DEBUGOUT("Unknown physical layer module\n");
                phy_type = ixgb_phy_type_unknown;