qed: Add missing 100g init mode
authorYuval Mintz <Yuval.Mintz@qlogic.com>
Thu, 26 May 2016 08:01:22 +0000 (11:01 +0300)
committerDavid S. Miller <davem@davemloft.net>
Thu, 26 May 2016 19:27:33 +0000 (12:27 -0700)
Some of the HW configurations are currently missing for 100g devices.
This can cause various classification issues, as well as prevent device
from fully reaching line-rate.

Signed-off-by: Yuval Mintz <Yuval.Mintz@qlogic.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/qlogic/qed/qed_dev.c

index 920eadd6417cdeb2ef321fe6d32a736c2b2aa599..2a7c8755eda0e401785e363298b8f75872836c7a 100644 (file)
@@ -588,7 +588,14 @@ static void qed_calc_hw_mode(struct qed_hwfn *p_hwfn)
 
        hw_mode |= 1 << MODE_ASIC;
 
+       if (p_hwfn->cdev->num_hwfns > 1)
+               hw_mode |= 1 << MODE_100G;
+
        p_hwfn->hw_info.hw_mode = hw_mode;
+
+       DP_VERBOSE(p_hwfn, (NETIF_MSG_PROBE | NETIF_MSG_IFUP),
+                  "Configuring function for hw_mode: 0x%08x\n",
+                  p_hwfn->hw_info.hw_mode);
 }
 
 /* Init run time data for all PFs on an engine. */