Merge tag 'isci-for-3.6' into for-next
[cascardo/linux.git] / drivers / net / ethernet / intel / ixgbe / ixgbe_dcb_nl.c
index 5164a21..f1e002d 100644 (file)
@@ -151,34 +151,21 @@ static u8 ixgbe_dcbnl_get_state(struct net_device *netdev)
 
 static u8 ixgbe_dcbnl_set_state(struct net_device *netdev, u8 state)
 {
-       int err = 0;
-       u8 prio_tc[MAX_USER_PRIORITY] = {0};
-       int i;
        struct ixgbe_adapter *adapter = netdev_priv(netdev);
+       int err = 0;
 
        /* Fail command if not in CEE mode */
        if (!(adapter->dcbx_cap & DCB_CAP_DCBX_VER_CEE))
                return 1;
 
        /* verify there is something to do, if not then exit */
-       if (!!state != !(adapter->flags & IXGBE_FLAG_DCB_ENABLED))
-               goto out;
-
-       if (state > 0) {
-               err = ixgbe_setup_tc(netdev, adapter->dcb_cfg.num_tcs.pg_tcs);
-               ixgbe_dcb_unpack_map(&adapter->dcb_cfg, DCB_TX_CONFIG, prio_tc);
-       } else {
-               err = ixgbe_setup_tc(netdev, 0);
-       }
-
-       if (err)
+       if (!state == !(adapter->flags & IXGBE_FLAG_DCB_ENABLED))
                goto out;
 
-       for (i = 0; i < IEEE_8021QAZ_MAX_TCS; i++)
-               netdev_set_prio_tc_map(netdev, i, prio_tc[i]);
-
+       err = ixgbe_setup_tc(netdev,
+                            state ? adapter->dcb_cfg.num_tcs.pg_tcs : 0);
 out:
-       return err ? 1 : 0;
+       return !!err;
 }
 
 static void ixgbe_dcbnl_get_perm_hw_addr(struct net_device *netdev,
@@ -584,9 +571,6 @@ static int ixgbe_dcbnl_ieee_setets(struct net_device *dev,
        if (err)
                goto err_out;
 
-       for (i = 0; i < IEEE_8021QAZ_MAX_TCS; i++)
-               netdev_set_prio_tc_map(dev, i, ets->prio_tc[i]);
-
        err = ixgbe_dcb_hw_ets(&adapter->hw, ets, max_frame);
 err_out:
        return err;