status = ixgbe_get_lasi_ext_t_x550em(hw, &lsc);
 
        /* Enable link status change alarm */
-       status = hw->phy.ops.read_reg(hw, IXGBE_MDIO_PMA_TX_VEN_LASI_INT_MASK,
-                                     MDIO_MMD_AN, ®);
-       if (status)
-               return status;
 
-       reg |= IXGBE_MDIO_PMA_TX_VEN_LASI_INT_EN;
+       /* Enable the LASI interrupts on X552 devices to receive notifications
+        * of the link configurations of the external PHY and correspondingly
+        * support the configuration of the internal iXFI link, since iXFI does
+        * not support auto-negotiation. This is not required for X553 devices
+        * having KR support, which performs auto-negotiations and which is used
+        * as the internal link to the external PHY. Hence adding a check here
+        * to avoid enabling LASI interrupts for X553 devices.
+        */
+       if (hw->mac.type != ixgbe_mac_x550em_a) {
+               status = hw->phy.ops.read_reg(hw,
+                                           IXGBE_MDIO_PMA_TX_VEN_LASI_INT_MASK,
+                                           MDIO_MMD_AN, ®);
+               if (status)
+                       return status;
+
+               reg |= IXGBE_MDIO_PMA_TX_VEN_LASI_INT_EN;
 
-       status = hw->phy.ops.write_reg(hw, IXGBE_MDIO_PMA_TX_VEN_LASI_INT_MASK,
-                                      MDIO_MMD_AN, reg);
-       if (status)
-               return status;
+               status = hw->phy.ops.write_reg(hw,
+                                           IXGBE_MDIO_PMA_TX_VEN_LASI_INT_MASK,
+                                           MDIO_MMD_AN, reg);
+               if (status)
+                       return status;
+       }
 
        /* Enable high temperature failure and global fault alarms */
        status = hw->phy.ops.read_reg(hw, IXGBE_MDIO_GLOBAL_INT_MASK,