Răsfoiți Sursa

broadcom: Move the Broadcom drivers

Moves the drivers for Broadcom devices into
drivers/net/ethernet/broadcom/ and the necessary Kconfig and Makefile
changes.

CC: Eilon Greenstein <eilong@broadcom.com>
CC: Michael Chan <mchan@broadcom.com>
CC: Matt Carlson <mcarlson@broadcom.com>
CC: Gary Zambrano <zambrano@broadcom.com>
CC: "Maciej W. Rozycki" <macro@linux-mips.org>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Jeff Kirsher 14 ani în urmă
părinte
comite
adfc5217e9
44 a modificat fișierele cu 141 adăugiri și 115 ștergeri
  1. 5 5
      MAINTAINERS
  2. 0 99
      drivers/net/Kconfig
  3. 0 7
      drivers/net/Makefile
  4. 1 0
      drivers/net/ethernet/Kconfig
  5. 1 0
      drivers/net/ethernet/Makefile
  6. 119 0
      drivers/net/ethernet/broadcom/Kconfig
  7. 11 0
      drivers/net/ethernet/broadcom/Makefile
  8. 0 0
      drivers/net/ethernet/broadcom/b44.c
  9. 0 0
      drivers/net/ethernet/broadcom/b44.h
  10. 0 0
      drivers/net/ethernet/broadcom/bcm63xx_enet.c
  11. 0 0
      drivers/net/ethernet/broadcom/bcm63xx_enet.h
  12. 0 0
      drivers/net/ethernet/broadcom/bnx2.c
  13. 0 0
      drivers/net/ethernet/broadcom/bnx2.h
  14. 0 0
      drivers/net/ethernet/broadcom/bnx2_fw.h
  15. 0 0
      drivers/net/ethernet/broadcom/bnx2x/Makefile
  16. 0 0
      drivers/net/ethernet/broadcom/bnx2x/bnx2x.h
  17. 0 0
      drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c
  18. 0 0
      drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.h
  19. 0 0
      drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c
  20. 0 0
      drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.h
  21. 0 0
      drivers/net/ethernet/broadcom/bnx2x/bnx2x_dump.h
  22. 0 0
      drivers/net/ethernet/broadcom/bnx2x/bnx2x_ethtool.c
  23. 0 0
      drivers/net/ethernet/broadcom/bnx2x/bnx2x_fw_defs.h
  24. 0 0
      drivers/net/ethernet/broadcom/bnx2x/bnx2x_fw_file_hdr.h
  25. 0 0
      drivers/net/ethernet/broadcom/bnx2x/bnx2x_hsi.h
  26. 0 0
      drivers/net/ethernet/broadcom/bnx2x/bnx2x_init.h
  27. 0 0
      drivers/net/ethernet/broadcom/bnx2x/bnx2x_init_ops.h
  28. 0 0
      drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.c
  29. 0 0
      drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.h
  30. 0 0
      drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
  31. 0 0
      drivers/net/ethernet/broadcom/bnx2x/bnx2x_reg.h
  32. 0 0
      drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.c
  33. 0 0
      drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.h
  34. 0 0
      drivers/net/ethernet/broadcom/bnx2x/bnx2x_stats.c
  35. 0 0
      drivers/net/ethernet/broadcom/bnx2x/bnx2x_stats.h
  36. 2 2
      drivers/net/ethernet/broadcom/cnic.c
  37. 0 0
      drivers/net/ethernet/broadcom/cnic.h
  38. 0 0
      drivers/net/ethernet/broadcom/cnic_defs.h
  39. 0 0
      drivers/net/ethernet/broadcom/cnic_if.h
  40. 0 0
      drivers/net/ethernet/broadcom/sb1250-mac.c
  41. 0 0
      drivers/net/ethernet/broadcom/tg3.c
  42. 0 0
      drivers/net/ethernet/broadcom/tg3.h
  43. 1 1
      drivers/scsi/bnx2fc/bnx2fc.h
  44. 1 1
      drivers/scsi/bnx2i/bnx2i.h

+ 5 - 5
MAINTAINERS

@@ -1526,27 +1526,27 @@ BROADCOM B44 10/100 ETHERNET DRIVER
 M:	Gary Zambrano <zambrano@broadcom.com>
 L:	netdev@vger.kernel.org
 S:	Supported
-F:	drivers/net/b44.*
+F:	drivers/net/ethernet/broadcom/b44.*
 
 BROADCOM BNX2 GIGABIT ETHERNET DRIVER
 M:	Michael Chan <mchan@broadcom.com>
 L:	netdev@vger.kernel.org
 S:	Supported
-F:	drivers/net/bnx2.*
-F:	drivers/net/bnx2_*
+F:	drivers/net/ethernet/broadcom/bnx2.*
+F:	drivers/net/ethernet/broadcom/bnx2_*
 
 BROADCOM BNX2X 10 GIGABIT ETHERNET DRIVER
 M:	Eilon Greenstein <eilong@broadcom.com>
 L:	netdev@vger.kernel.org
 S:	Supported
-F:	drivers/net/bnx2x/
+F:	drivers/net/ethernet/broadcom/bnx2x/
 
 BROADCOM TG3 GIGABIT ETHERNET DRIVER
 M:	Matt Carlson <mcarlson@broadcom.com>
 M:	Michael Chan <mchan@broadcom.com>
 L:	netdev@vger.kernel.org
 S:	Supported
-F:	drivers/net/tg3.*
+F:	drivers/net/ethernet/broadcom/tg3.*
 
 BROADCOM BRCM80211 IEEE802.11n WIRELESS DRIVER
 M:	Brett Rudley <brudley@broadcom.com>

+ 0 - 99
drivers/net/Kconfig

@@ -997,38 +997,6 @@ config APRICOT
 	  To compile this driver as a module, choose M here. The module
 	  will be called apricot.
 
-config B44
-	tristate "Broadcom 440x/47xx ethernet support"
-	depends on SSB_POSSIBLE && HAS_DMA
-	select SSB
-	select MII
-	help
-	  If you have a network (Ethernet) controller of this type, say Y
-	  or M and read the Ethernet-HOWTO, available from
-	  <http://www.tldp.org/docs.html#howto>.
-
-	  To compile this driver as a module, choose M here. The module
-	  will be called b44.
-
-# Auto-select SSB PCI-HOST support, if possible
-config B44_PCI_AUTOSELECT
-	bool
-	depends on B44 && SSB_PCIHOST_POSSIBLE
-	select SSB_PCIHOST
-	default y
-
-# Auto-select SSB PCICORE driver, if possible
-config B44_PCICORE_AUTOSELECT
-	bool
-	depends on B44 && SSB_DRIVER_PCICORE_POSSIBLE
-	select SSB_DRIVER_PCICORE
-	default y
-
-config B44_PCI
-	bool
-	depends on B44_PCI_AUTOSELECT && B44_PCICORE_AUTOSELECT
-	default y
-
 config FORCEDETH
 	tristate "nForce Ethernet support"
 	depends on NET_PCI && PCI
@@ -1465,15 +1433,6 @@ config XILINX_EMACLITE
 	help
 	  This driver supports the 10/100 Ethernet Lite from Xilinx.
 
-config BCM63XX_ENET
-	tristate "Broadcom 63xx internal mac support"
-	depends on BCM63XX
-	select MII
-	select PHYLIB
-	help
-	  This driver supports the ethernet MACs in the Broadcom 63xx
-	  MIPS chipset family (BCM63XX).
-
 config FTMAC100
 	tristate "Faraday FTMAC100 10/100 Ethernet support"
 	depends on ARM
@@ -1683,19 +1642,6 @@ config R8169
 	  To compile this driver as a module, choose M here: the module
 	  will be called r8169.  This is recommended.
 
-config SB1250_MAC
-	tristate "SB1250 Gigabit Ethernet support"
-	depends on SIBYTE_SB1xxx_SOC
-	select PHYLIB
-	---help---
-	  This driver supports Gigabit Ethernet interfaces based on the
-	  Broadcom SiByte family of System-On-a-Chip parts.  They include
-	  the BCM1120, BCM1125, BCM1125H, BCM1250, BCM1255, BCM1280, BCM1455
-	  and BCM1480 chips.
-
-	  To compile this driver as a module, choose M here: the module
-	  will be called sb1250-mac.
-
 config SIS190
 	tristate "SiS190/SiS191 gigabit ethernet support"
 	depends on PCI
@@ -1789,39 +1735,6 @@ config VIA_VELOCITY
 	  To compile this driver as a module, choose M here. The module
 	  will be called via-velocity.
 
-config TIGON3
-	tristate "Broadcom Tigon3 support"
-	depends on PCI
-	select PHYLIB
-	help
-	  This driver supports Broadcom Tigon3 based gigabit Ethernet cards.
-
-	  To compile this driver as a module, choose M here: the module
-	  will be called tg3.  This is recommended.
-
-config BNX2
-	tristate "Broadcom NetXtremeII support"
-	depends on PCI
-	select CRC32
-	select FW_LOADER
-	help
-	  This driver supports Broadcom NetXtremeII gigabit Ethernet cards.
-
-	  To compile this driver as a module, choose M here: the module
-	  will be called bnx2.  This is recommended.
-
-config CNIC
-	tristate "Broadcom CNIC support"
-	depends on PCI
-	select BNX2
-	select UIO
-	help
-	  This driver supports offload features of Broadcom NetXtremeII
-	  gigabit Ethernet cards.
-
-	  To compile this driver as a module, choose M here: the module
-	  will be called cnic.  This is recommended.
-
 config SPIDER_NET
 	tristate "Spider Gigabit Ethernet driver"
 	depends on PCI && (PPC_IBM_CELL_BLADE || PPC_CELLEB)
@@ -2327,18 +2240,6 @@ config TEHUTI
 	help
 	  Tehuti Networks 10G Ethernet NIC
 
-config BNX2X
-	tristate "Broadcom NetXtremeII 10Gb support"
-	depends on PCI
-	select FW_LOADER
-	select ZLIB_INFLATE
-	select LIBCRC32C
-	select MDIO
-	help
-	  This driver supports Broadcom NetXtremeII 10 gigabit Ethernet cards.
-	  To compile this driver as a module, choose M here: the module
-	  will be called bnx2x.  This is recommended.
-
 config QLCNIC
 	tristate "QLOGIC QLCNIC 1/10Gb Converged Ethernet NIC Support"
 	depends on PCI

+ 0 - 7
drivers/net/Makefile

@@ -77,10 +77,6 @@ obj-$(CONFIG_ISERIES_VETH) += iseries_veth.o
 obj-$(CONFIG_NATSEMI) += natsemi.o
 obj-$(CONFIG_NS83820) += ns83820.o
 obj-$(CONFIG_FEALNX) += fealnx.o
-obj-$(CONFIG_TIGON3) += tg3.o
-obj-$(CONFIG_BNX2) += bnx2.o
-obj-$(CONFIG_CNIC) += cnic.o
-obj-$(CONFIG_BNX2X) += bnx2x/
 spidernet-y += spider_net.o spider_net_ethtool.o
 obj-$(CONFIG_SPIDER_NET) += spidernet.o sungem_phy.o
 obj-$(CONFIG_GELIC_NET) += ps3_gelic.o
@@ -117,10 +113,7 @@ obj-$(CONFIG_FEC_MPC52xx) += fec_mpc52xx.o
 ifeq ($(CONFIG_FEC_MPC52xx_MDIO),y)
 	obj-$(CONFIG_FEC_MPC52xx) += fec_mpc52xx_phy.o
 endif
-obj-$(CONFIG_SB1250_MAC) += sb1250-mac.o
-obj-$(CONFIG_B44) += b44.o
 obj-$(CONFIG_FORCEDETH) += forcedeth.o
-obj-$(CONFIG_BCM63XX_ENET) += bcm63xx_enet.o
 obj-$(CONFIG_FTGMAC100) += ftgmac100.o
 obj-$(CONFIG_FTMAC100) += ftmac100.o
 

+ 1 - 0
drivers/net/ethernet/Kconfig

@@ -14,5 +14,6 @@ if ETHERNET
 source "drivers/net/ethernet/3com/Kconfig"
 source "drivers/net/ethernet/8390/Kconfig"
 source "drivers/net/ethernet/amd/Kconfig"
+source "drivers/net/ethernet/broadcom/Kconfig"
 
 endif # ETHERNET

+ 1 - 0
drivers/net/ethernet/Makefile

@@ -5,3 +5,4 @@
 obj-$(CONFIG_NET_VENDOR_3COM) += 3com/
 obj-$(CONFIG_NET_VENDOR_8390) += 8390/
 obj-$(CONFIG_NET_VENDOR_AMD) += amd/
+obj-$(CONFIG_NET_VENDOR_BROADCOM) += broadcom/

+ 119 - 0
drivers/net/ethernet/broadcom/Kconfig

@@ -0,0 +1,119 @@
+#
+# Broadcom device configuration
+#
+
+config NET_VENDOR_BROADCOM
+	bool "Broadcom devices"
+	depends on (SSB_POSSIBLE && HAS_DMA) || PCI || BCM63XX || \
+		   SIBYTE_SB1xxx_SOC
+	---help---
+	  If you have a network (Ethernet) chipset belonging to this class,
+	  say Y.
+
+	  Note that the answer to this question does not directly affect
+	  the kernel: saying N will just case the configurator to skip all
+	  the questions regarding AMD chipsets. If you say Y, you will be asked
+	  for your specific chipset/driver in the following questions.
+
+if NET_VENDOR_BROADCOM
+
+config B44
+	tristate "Broadcom 440x/47xx ethernet support"
+	depends on SSB_POSSIBLE && HAS_DMA
+	select SSB
+	select MII
+	---help---
+	  If you have a network (Ethernet) controller of this type, say Y
+	  or M and read the Ethernet-HOWTO, available from
+	  <http://www.tldp.org/docs.html#howto>.
+
+	  To compile this driver as a module, choose M here. The module
+	  will be called b44.
+
+# Auto-select SSB PCI-HOST support, if possible
+config B44_PCI_AUTOSELECT
+	bool
+	depends on B44 && SSB_PCIHOST_POSSIBLE
+	select SSB_PCIHOST
+	default y
+
+# Auto-select SSB PCICORE driver, if possible
+config B44_PCICORE_AUTOSELECT
+	bool
+	depends on B44 && SSB_DRIVER_PCICORE_POSSIBLE
+	select SSB_DRIVER_PCICORE
+	default y
+
+config B44_PCI
+	bool
+	depends on B44_PCI_AUTOSELECT && B44_PCICORE_AUTOSELECT
+	default y
+
+config BCM63XX_ENET
+	tristate "Broadcom 63xx internal mac support"
+	depends on BCM63XX
+	select MII
+	select PHYLIB
+	help
+	  This driver supports the ethernet MACs in the Broadcom 63xx
+	  MIPS chipset family (BCM63XX).
+
+config BNX2
+	tristate "Broadcom NetXtremeII support"
+	depends on PCI
+	select CRC32
+	select FW_LOADER
+	---help---
+	  This driver supports Broadcom NetXtremeII gigabit Ethernet cards.
+
+	  To compile this driver as a module, choose M here: the module
+	  will be called bnx2.  This is recommended.
+
+config CNIC
+	tristate "Broadcom CNIC support"
+	depends on PCI
+	select BNX2
+	select UIO
+	---help---
+	  This driver supports offload features of Broadcom NetXtremeII
+	  gigabit Ethernet cards.
+
+	  To compile this driver as a module, choose M here: the module
+	  will be called cnic.  This is recommended.
+
+config SB1250_MAC
+	tristate "SB1250 Gigabit Ethernet support"
+	depends on SIBYTE_SB1xxx_SOC
+	select PHYLIB
+	---help---
+	  This driver supports Gigabit Ethernet interfaces based on the
+	  Broadcom SiByte family of System-On-a-Chip parts.  They include
+	  the BCM1120, BCM1125, BCM1125H, BCM1250, BCM1255, BCM1280, BCM1455
+	  and BCM1480 chips.
+
+	  To compile this driver as a module, choose M here: the module
+	  will be called sb1250-mac.
+
+config TIGON3
+	tristate "Broadcom Tigon3 support"
+	depends on PCI
+	select PHYLIB
+	---help---
+	  This driver supports Broadcom Tigon3 based gigabit Ethernet cards.
+
+	  To compile this driver as a module, choose M here: the module
+	  will be called tg3.  This is recommended.
+
+config BNX2X
+	tristate "Broadcom NetXtremeII 10Gb support"
+	depends on PCI
+	select FW_LOADER
+	select ZLIB_INFLATE
+	select LIBCRC32C
+	select MDIO
+	---help---
+	  This driver supports Broadcom NetXtremeII 10 gigabit Ethernet cards.
+	  To compile this driver as a module, choose M here: the module
+	  will be called bnx2x.  This is recommended.
+
+endif # NET_VENDOR_BROADCOM

+ 11 - 0
drivers/net/ethernet/broadcom/Makefile

@@ -0,0 +1,11 @@
+#
+# Makefile for the Broadcom network device drivers.
+#
+
+obj-$(CONFIG_B44) += b44.o
+obj-$(CONFIG_BCM63XX_ENET) += bcm63xx_enet.o
+obj-$(CONFIG_BNX2) += bnx2.o
+obj-$(CONFIG_CNIC) += cnic.o
+obj-$(CONFIG_BNX2X) += bnx2x/
+obj-$(CONFIG_SB1250_MAC) += sb1250-mac.o
+obj-$(CONFIG_TIGON3) += tg3.o

+ 0 - 0
drivers/net/b44.c → drivers/net/ethernet/broadcom/b44.c


+ 0 - 0
drivers/net/b44.h → drivers/net/ethernet/broadcom/b44.h


+ 0 - 0
drivers/net/bcm63xx_enet.c → drivers/net/ethernet/broadcom/bcm63xx_enet.c


+ 0 - 0
drivers/net/bcm63xx_enet.h → drivers/net/ethernet/broadcom/bcm63xx_enet.h


+ 0 - 0
drivers/net/bnx2.c → drivers/net/ethernet/broadcom/bnx2.c


+ 0 - 0
drivers/net/bnx2.h → drivers/net/ethernet/broadcom/bnx2.h


+ 0 - 0
drivers/net/bnx2_fw.h → drivers/net/ethernet/broadcom/bnx2_fw.h


+ 0 - 0
drivers/net/bnx2x/Makefile → drivers/net/ethernet/broadcom/bnx2x/Makefile


+ 0 - 0
drivers/net/bnx2x/bnx2x.h → drivers/net/ethernet/broadcom/bnx2x/bnx2x.h


+ 0 - 0
drivers/net/bnx2x/bnx2x_cmn.c → drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c


+ 0 - 0
drivers/net/bnx2x/bnx2x_cmn.h → drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.h


+ 0 - 0
drivers/net/bnx2x/bnx2x_dcb.c → drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.c


+ 0 - 0
drivers/net/bnx2x/bnx2x_dcb.h → drivers/net/ethernet/broadcom/bnx2x/bnx2x_dcb.h


+ 0 - 0
drivers/net/bnx2x/bnx2x_dump.h → drivers/net/ethernet/broadcom/bnx2x/bnx2x_dump.h


+ 0 - 0
drivers/net/bnx2x/bnx2x_ethtool.c → drivers/net/ethernet/broadcom/bnx2x/bnx2x_ethtool.c


+ 0 - 0
drivers/net/bnx2x/bnx2x_fw_defs.h → drivers/net/ethernet/broadcom/bnx2x/bnx2x_fw_defs.h


+ 0 - 0
drivers/net/bnx2x/bnx2x_fw_file_hdr.h → drivers/net/ethernet/broadcom/bnx2x/bnx2x_fw_file_hdr.h


+ 0 - 0
drivers/net/bnx2x/bnx2x_hsi.h → drivers/net/ethernet/broadcom/bnx2x/bnx2x_hsi.h


+ 0 - 0
drivers/net/bnx2x/bnx2x_init.h → drivers/net/ethernet/broadcom/bnx2x/bnx2x_init.h


+ 0 - 0
drivers/net/bnx2x/bnx2x_init_ops.h → drivers/net/ethernet/broadcom/bnx2x/bnx2x_init_ops.h


+ 0 - 0
drivers/net/bnx2x/bnx2x_link.c → drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.c


+ 0 - 0
drivers/net/bnx2x/bnx2x_link.h → drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.h


+ 0 - 0
drivers/net/bnx2x/bnx2x_main.c → drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c


+ 0 - 0
drivers/net/bnx2x/bnx2x_reg.h → drivers/net/ethernet/broadcom/bnx2x/bnx2x_reg.h


+ 0 - 0
drivers/net/bnx2x/bnx2x_sp.c → drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.c


+ 0 - 0
drivers/net/bnx2x/bnx2x_sp.h → drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.h


+ 0 - 0
drivers/net/bnx2x/bnx2x_stats.c → drivers/net/ethernet/broadcom/bnx2x/bnx2x_stats.c


+ 0 - 0
drivers/net/bnx2x/bnx2x_stats.h → drivers/net/ethernet/broadcom/bnx2x/bnx2x_stats.h


+ 2 - 2
drivers/net/cnic.c → drivers/net/ethernet/broadcom/cnic.c

@@ -45,8 +45,8 @@
 #include "bnx2x/bnx2x_reg.h"
 #include "bnx2x/bnx2x_fw_defs.h"
 #include "bnx2x/bnx2x_hsi.h"
-#include "../scsi/bnx2i/57xx_iscsi_constants.h"
-#include "../scsi/bnx2i/57xx_iscsi_hsi.h"
+#include "../../../scsi/bnx2i/57xx_iscsi_constants.h"
+#include "../../../scsi/bnx2i/57xx_iscsi_hsi.h"
 #include "cnic.h"
 #include "cnic_defs.h"
 

+ 0 - 0
drivers/net/cnic.h → drivers/net/ethernet/broadcom/cnic.h


+ 0 - 0
drivers/net/cnic_defs.h → drivers/net/ethernet/broadcom/cnic_defs.h


+ 0 - 0
drivers/net/cnic_if.h → drivers/net/ethernet/broadcom/cnic_if.h


+ 0 - 0
drivers/net/sb1250-mac.c → drivers/net/ethernet/broadcom/sb1250-mac.c


+ 0 - 0
drivers/net/tg3.c → drivers/net/ethernet/broadcom/tg3.c


+ 0 - 0
drivers/net/tg3.h → drivers/net/ethernet/broadcom/tg3.h


+ 1 - 1
drivers/scsi/bnx2fc/bnx2fc.h

@@ -58,7 +58,7 @@
 
 #include "57xx_hsi_bnx2fc.h"
 #include "bnx2fc_debug.h"
-#include "../../net/cnic_if.h"
+#include "../../net/ethernet/broadcom/cnic_if.h"
 #include "bnx2fc_constants.h"
 
 #define BNX2FC_NAME		"bnx2fc"

+ 1 - 1
drivers/scsi/bnx2i/bnx2i.h

@@ -40,7 +40,7 @@
 #include <scsi/libiscsi.h>
 #include <scsi/scsi_transport_iscsi.h>
 
-#include "../../net/cnic_if.h"
+#include "../../net/ethernet/broadcom/cnic_if.h"
 #include "57xx_iscsi_hsi.h"
 #include "57xx_iscsi_constants.h"