nfp: choose data path based on version
[linux-2.6-microblaze.git] / drivers / net / ethernet / netronome / nfp / nfp_netvf_main.c
index 9ef226c..a51eb26 100644 (file)
@@ -122,9 +122,11 @@ static int nfp_netvf_pci_probe(struct pci_dev *pdev,
        }
 
        nfp_net_get_fw_version(&fw_ver, ctrl_bar);
-       if (fw_ver.resv || fw_ver.class != NFP_NET_CFG_VERSION_CLASS_GENERIC) {
+       if (fw_ver.extend & NFP_NET_CFG_VERSION_RESERVED_MASK ||
+           fw_ver.class != NFP_NET_CFG_VERSION_CLASS_GENERIC) {
                dev_err(&pdev->dev, "Unknown Firmware ABI %d.%d.%d.%d\n",
-                       fw_ver.resv, fw_ver.class, fw_ver.major, fw_ver.minor);
+                       fw_ver.extend, fw_ver.class,
+                       fw_ver.major, fw_ver.minor);
                err = -EINVAL;
                goto err_ctrl_unmap;
        }
@@ -144,7 +146,7 @@ static int nfp_netvf_pci_probe(struct pci_dev *pdev,
                        break;
                default:
                        dev_err(&pdev->dev, "Unsupported Firmware ABI %d.%d.%d.%d\n",
-                               fw_ver.resv, fw_ver.class,
+                               fw_ver.extend, fw_ver.class,
                                fw_ver.major, fw_ver.minor);
                        err = -EINVAL;
                        goto err_ctrl_unmap;
@@ -186,7 +188,6 @@ static int nfp_netvf_pci_probe(struct pci_dev *pdev,
        }
        vf->nn = nn;
 
-       nn->fw_ver = fw_ver;
        nn->dp.is_vf = 1;
        nn->stride_tx = stride;
        nn->stride_rx = stride;