]> git.ipfire.org Git - people/teissler/ipfire-2.x.git/blobdiff - src/patches/suse-2.6.27.31/patches.drivers/ixgbe_DCB_compile_err.patch
Move xen patchset to new version's subdir.
[people/teissler/ipfire-2.x.git] / src / patches / suse-2.6.27.31 / patches.drivers / ixgbe_DCB_compile_err.patch
diff --git a/src/patches/suse-2.6.27.31/patches.drivers/ixgbe_DCB_compile_err.patch b/src/patches/suse-2.6.27.31/patches.drivers/ixgbe_DCB_compile_err.patch
new file mode 100644 (file)
index 0000000..c79b20c
--- /dev/null
@@ -0,0 +1,130 @@
+From: John Ronciak <john.ronciak@intel.com>
+Subject: DCB compile error fix
+Acked-by: Karsten Keil <kkeil@novell.com>
+Reference: bnc#465923
+
+DCB compile error fix
+
+User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.5)
+Gecko/2008120122 Firefox/3.0.5
+
+The files ixgbe_dcb.o ixgbe_dcb_82598.c and ixgbe_dcb_nl.c should not be
+compiled if DCB_CONFIG is not set.  The makefile should handle this correctly
+now like in upstream kernel. 
+
+
+---
+ drivers/net/Kconfig            |   10 ++++++++++
+ drivers/net/ixgbe/Makefile     |    5 +++--
+ drivers/net/ixgbe/ixgbe_main.c |   17 +++++++++++++----
+ 3 files changed, 26 insertions(+), 6 deletions(-)
+
+--- a/drivers/net/ixgbe/ixgbe_main.c
++++ b/drivers/net/ixgbe/ixgbe_main.c
+@@ -1919,6 +1919,7 @@ static void ixgbe_napi_disable_all(struc
+       }
+ }
++#ifdef CONFIG_IXGBE_DCB
+ /*
+  * ixgbe_configure_dcb - Configure DCB hardware
+  * @adapter: ixgbe adapter struct
+@@ -1954,6 +1955,7 @@ static void ixgbe_configure_dcb(struct i
+       IXGBE_WRITE_REG(hw, IXGBE_VLNCTRL, vlnctrl);
+       hw->mac.ops.set_vfta(&adapter->hw, 0, 0, true);
+ }
++#endif /* CONFIG_IXGBE_DCB */
+ static void ixgbe_configure(struct ixgbe_adapter *adapter)
+ {
+@@ -1963,12 +1965,17 @@ static void ixgbe_configure(struct ixgbe
+       ixgbe_set_rx_mode(netdev);
+       ixgbe_restore_vlan(adapter);
++#ifdef CONFIG_IXGBE_DCB
+       if (adapter->flags & IXGBE_FLAG_DCB_ENABLED) {
+               netif_set_gso_max_size(netdev, 32768);
+               ixgbe_configure_dcb(adapter);
+       } else {
+               netif_set_gso_max_size(netdev, 65536);
+       }
++#else
++      netif_set_gso_max_size(netdev, 65536);
++#endif /* CONFIG_IXGBE_DCB */
++
+       ixgbe_configure_tx(adapter);
+       ixgbe_configure_rx(adapter);
+@@ -2746,8 +2753,10 @@ static int __devinit ixgbe_sw_init(struc
+       struct ixgbe_hw *hw = &adapter->hw;
+       struct pci_dev *pdev = adapter->pdev;
+       unsigned int rss;
++#ifdef CONFIG_IXGBE_DCB
+       int j;
+       struct tc_configuration *tc;
++#endif /* CONFIG_IXGBE_DCB */
+       /* PCI config space info */
+@@ -2766,6 +2775,7 @@ static int __devinit ixgbe_sw_init(struc
+               adapter->flags |= IXGBE_FLAG_FAN_FAIL_CAPABLE;
+       adapter->ring_feature[RING_F_DCB].indices = IXGBE_MAX_DCB_INDICES;
++#ifdef CONFIG_IXGBE_DCB
+       /* Configure DCB traffic classes */
+       for (j = 0; j < MAX_TRAFFIC_CLASS; j++) {
+               tc = &adapter->dcb_cfg.tc_config[j];
+@@ -2780,10 +2790,9 @@ static int __devinit ixgbe_sw_init(struc
+       adapter->dcb_cfg.rx_pba_cfg = pba_equal;
+       adapter->dcb_cfg.round_robin_enable = false;
+       adapter->dcb_set_bitmap = 0x00;
+-#ifdef CONFIG_DCBNL
+       ixgbe_copy_dcb_cfg(&adapter->dcb_cfg, &adapter->temp_dcb_cfg,
+                          adapter->ring_feature[RING_F_DCB].indices);
+-#endif
++#endif /* CONFIG_IXGBE_DCB */
+       /* default flow control settings */
+       hw->fc.original_type = ixgbe_fc_none;
+@@ -4116,9 +4125,9 @@ static int __devinit ixgbe_probe(struct 
+       if (adapter->flags & IXGBE_FLAG_DCB_ENABLED)
+               adapter->flags &= ~IXGBE_FLAG_RSS_ENABLED;
+-#ifdef CONFIG_DCBNL
++#ifdef CONFIG_IXGBE_DCB
+       netdev->dcbnl_ops = &dcbnl_ops;
+-#endif
++#endif /* CONFIG_IXGBE_DCB */
+       if (pci_using_dac)
+               netdev->features |= NETIF_F_HIGHDMA;
+--- a/drivers/net/ixgbe/Makefile
++++ b/drivers/net/ixgbe/Makefile
+@@ -33,5 +33,6 @@
+ obj-$(CONFIG_IXGBE) += ixgbe.o
+ ixgbe-objs := ixgbe_main.o ixgbe_common.o ixgbe_ethtool.o \
+-              ixgbe_82598.o ixgbe_phy.o ixgbe_dcb.o ixgbe_dcb_82598.o \
+-              ixgbe_dcb_nl.o
++              ixgbe_82598.o ixgbe_phy.o
++
++ixgbe-$(CONFIG_IXGBE_DCB) += ixgbe_dcb.o ixgbe_dcb_82598.o ixgbe_dcb_nl.o
+--- a/drivers/net/Kconfig
++++ b/drivers/net/Kconfig
+@@ -2406,6 +2406,16 @@ config IXGBE_LRO
+         If in doubt, say N.
++config IXGBE_DCB
++      bool "Data Center Bridging (DCB) Support"
++      default n
++      depends on IXGBE && DCB
++      ---help---
++       Say Y here if you want to use Data Center Bridging (DCB) in the
++       driver.
++
++       If unsure, say N.
++
+ config IXGB
+       tristate "Intel(R) PRO/10GbE support"
+       depends on PCI