]> git.droids-corp.org - dpdk.git/blobdiff - drivers/net/ixgbe/base/ixgbe_x550.c
net/ixgbe/base: add physical layer options for FW PHY type
[dpdk.git] / drivers / net / ixgbe / base / ixgbe_x550.c
index 0011f210e8a620f0bab184ffa945036db725a7a6..f1f1fbe94d6b567482b62207d0ce3731ec084c96 100644 (file)
@@ -3784,7 +3784,13 @@ u32 ixgbe_get_supported_physical_layer_X550em(struct ixgbe_hw *hw)
                        physical_layer |= IXGBE_PHYSICAL_LAYER_1000BASE_T;
                break;
        case ixgbe_phy_fw:
-               physical_layer = IXGBE_PHYSICAL_LAYER_1000BASE_T;
+               if (hw->phy.speeds_supported & IXGBE_LINK_SPEED_1GB_FULL)
+                       physical_layer |= IXGBE_PHYSICAL_LAYER_1000BASE_T;
+               if (hw->phy.speeds_supported & IXGBE_LINK_SPEED_100_FULL)
+                       physical_layer |= IXGBE_PHYSICAL_LAYER_100BASE_TX;
+               if (hw->phy.speeds_supported & IXGBE_LINK_SPEED_10_FULL)
+                       physical_layer |= IXGBE_PHYSICAL_LAYER_10BASE_T;
+               break;
        default:
                break;
        }