+ if (dev->caps.fw_ver < FW_MAX_UNSUPPORTED) {
+ mlx4_err(dev, "HCA FW version %d.%d.%d is not supported. Use %d.%d.%d or higher.\n",
+ (int) (dev->caps.fw_ver >> 32), (int) (dev->caps.fw_ver >> 16) & 0xffff,
+ (int) (dev->caps.fw_ver & 0xffff), (int) (FW_MAX_UNSUPPORTED >> 32),
+ (int) (FW_MAX_UNSUPPORTED>> 16) & 0xffff, (int) (FW_MAX_UNSUPPORTED & 0xffff));
+ err = -ENODEV;
+ goto out;
+ }
+ else
+ if (dev->caps.fw_ver < FW_MIN_SUPPORTED) {
+ mlx4_err(dev, "The HCA FW version is not the latest one. \n"
+ "If you meet any issues with the HCA please first try to upgrade the FW to version %d.%d.%d or higher.\n",
+ (int) (FW_MIN_SUPPORTED >> 32), (int) (FW_MIN_SUPPORTED >> 16) & 0xffff, (int) (FW_MIN_SUPPORTED & 0xffff));
+ }
+