162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only 262306a36Sopenharmony_ci# 362306a36Sopenharmony_ci# Broadcom device configuration 462306a36Sopenharmony_ci# 562306a36Sopenharmony_ci 662306a36Sopenharmony_ciconfig NET_VENDOR_BROADCOM 762306a36Sopenharmony_ci bool "Broadcom devices" 862306a36Sopenharmony_ci default y 962306a36Sopenharmony_ci depends on (SSB_POSSIBLE && HAS_DMA) || PCI || BCM63XX || \ 1062306a36Sopenharmony_ci SIBYTE_SB1xxx_SOC 1162306a36Sopenharmony_ci help 1262306a36Sopenharmony_ci If you have a network (Ethernet) chipset belonging to this class, 1362306a36Sopenharmony_ci say Y. 1462306a36Sopenharmony_ci 1562306a36Sopenharmony_ci Note that the answer to this question does not directly affect 1662306a36Sopenharmony_ci the kernel: saying N will just cause the configurator to skip all 1762306a36Sopenharmony_ci the questions regarding Broadcom chipsets. If you say Y, you will 1862306a36Sopenharmony_ci be asked for your specific chipset/driver in the following questions. 1962306a36Sopenharmony_ci 2062306a36Sopenharmony_ciif NET_VENDOR_BROADCOM 2162306a36Sopenharmony_ci 2262306a36Sopenharmony_ciconfig B44 2362306a36Sopenharmony_ci tristate "Broadcom 440x/47xx ethernet support" 2462306a36Sopenharmony_ci depends on SSB_POSSIBLE && HAS_DMA 2562306a36Sopenharmony_ci select SSB 2662306a36Sopenharmony_ci select MII 2762306a36Sopenharmony_ci select PHYLIB 2862306a36Sopenharmony_ci help 2962306a36Sopenharmony_ci If you have a network (Ethernet) controller of this type, say Y 3062306a36Sopenharmony_ci or M here. 3162306a36Sopenharmony_ci 3262306a36Sopenharmony_ci To compile this driver as a module, choose M here. The module 3362306a36Sopenharmony_ci will be called b44. 3462306a36Sopenharmony_ci 3562306a36Sopenharmony_ci# Auto-select SSB PCI-HOST support, if possible 3662306a36Sopenharmony_ciconfig B44_PCI_AUTOSELECT 3762306a36Sopenharmony_ci bool 3862306a36Sopenharmony_ci depends on B44 && SSB_PCIHOST_POSSIBLE 3962306a36Sopenharmony_ci select SSB_PCIHOST 4062306a36Sopenharmony_ci default y 4162306a36Sopenharmony_ci 4262306a36Sopenharmony_ci# Auto-select SSB PCICORE driver, if possible 4362306a36Sopenharmony_ciconfig B44_PCICORE_AUTOSELECT 4462306a36Sopenharmony_ci bool 4562306a36Sopenharmony_ci depends on B44 && SSB_DRIVER_PCICORE_POSSIBLE 4662306a36Sopenharmony_ci select SSB_DRIVER_PCICORE 4762306a36Sopenharmony_ci default y 4862306a36Sopenharmony_ci 4962306a36Sopenharmony_ciconfig B44_PCI 5062306a36Sopenharmony_ci bool 5162306a36Sopenharmony_ci depends on B44_PCI_AUTOSELECT && B44_PCICORE_AUTOSELECT 5262306a36Sopenharmony_ci default y 5362306a36Sopenharmony_ci 5462306a36Sopenharmony_ciconfig BCM4908_ENET 5562306a36Sopenharmony_ci tristate "Broadcom BCM4908 internal mac support" 5662306a36Sopenharmony_ci depends on ARCH_BCMBCA || COMPILE_TEST 5762306a36Sopenharmony_ci default y if ARCH_BCMBCA 5862306a36Sopenharmony_ci help 5962306a36Sopenharmony_ci This driver supports Ethernet controller integrated into Broadcom 6062306a36Sopenharmony_ci BCM4908 family SoCs. 6162306a36Sopenharmony_ci 6262306a36Sopenharmony_ciconfig BCM63XX_ENET 6362306a36Sopenharmony_ci tristate "Broadcom 63xx internal mac support" 6462306a36Sopenharmony_ci depends on BCM63XX 6562306a36Sopenharmony_ci select MII 6662306a36Sopenharmony_ci select PHYLIB 6762306a36Sopenharmony_ci help 6862306a36Sopenharmony_ci This driver supports the ethernet MACs in the Broadcom 63xx 6962306a36Sopenharmony_ci MIPS chipset family (BCM63XX). 7062306a36Sopenharmony_ci 7162306a36Sopenharmony_ciconfig BCMGENET 7262306a36Sopenharmony_ci tristate "Broadcom GENET internal MAC support" 7362306a36Sopenharmony_ci depends on HAS_IOMEM 7462306a36Sopenharmony_ci depends on PTP_1588_CLOCK_OPTIONAL || !ARCH_BCM2835 7562306a36Sopenharmony_ci select MII 7662306a36Sopenharmony_ci select PHYLIB 7762306a36Sopenharmony_ci select FIXED_PHY 7862306a36Sopenharmony_ci select BCM7XXX_PHY 7962306a36Sopenharmony_ci select MDIO_BCM_UNIMAC 8062306a36Sopenharmony_ci select DIMLIB 8162306a36Sopenharmony_ci select BROADCOM_PHY if ARCH_BCM2835 8262306a36Sopenharmony_ci help 8362306a36Sopenharmony_ci This driver supports the built-in Ethernet MACs found in the 8462306a36Sopenharmony_ci Broadcom BCM7xxx Set Top Box family chipset. 8562306a36Sopenharmony_ci 8662306a36Sopenharmony_ciconfig BNX2 8762306a36Sopenharmony_ci tristate "QLogic bnx2 support" 8862306a36Sopenharmony_ci depends on PCI 8962306a36Sopenharmony_ci select CRC32 9062306a36Sopenharmony_ci select FW_LOADER 9162306a36Sopenharmony_ci help 9262306a36Sopenharmony_ci This driver supports QLogic bnx2 gigabit Ethernet cards. 9362306a36Sopenharmony_ci 9462306a36Sopenharmony_ci To compile this driver as a module, choose M here: the module 9562306a36Sopenharmony_ci will be called bnx2. This is recommended. 9662306a36Sopenharmony_ci 9762306a36Sopenharmony_ciconfig CNIC 9862306a36Sopenharmony_ci tristate "QLogic CNIC support" 9962306a36Sopenharmony_ci depends on PCI && (IPV6 || IPV6=n) 10062306a36Sopenharmony_ci depends on MMU 10162306a36Sopenharmony_ci select BNX2 10262306a36Sopenharmony_ci select UIO 10362306a36Sopenharmony_ci help 10462306a36Sopenharmony_ci This driver supports offload features of QLogic bnx2 gigabit 10562306a36Sopenharmony_ci Ethernet cards. 10662306a36Sopenharmony_ci 10762306a36Sopenharmony_ci To compile this driver as a module, choose M here: the module 10862306a36Sopenharmony_ci will be called cnic. This is recommended. 10962306a36Sopenharmony_ci 11062306a36Sopenharmony_ciconfig SB1250_MAC 11162306a36Sopenharmony_ci tristate "SB1250 Gigabit Ethernet support" 11262306a36Sopenharmony_ci depends on SIBYTE_SB1xxx_SOC 11362306a36Sopenharmony_ci select PHYLIB 11462306a36Sopenharmony_ci help 11562306a36Sopenharmony_ci This driver supports Gigabit Ethernet interfaces based on the 11662306a36Sopenharmony_ci Broadcom SiByte family of System-On-a-Chip parts. They include 11762306a36Sopenharmony_ci the BCM1120, BCM1125, BCM1125H, BCM1250, BCM1255, BCM1280, BCM1455 11862306a36Sopenharmony_ci and BCM1480 chips. 11962306a36Sopenharmony_ci 12062306a36Sopenharmony_ci To compile this driver as a module, choose M here: the module 12162306a36Sopenharmony_ci will be called sb1250-mac. 12262306a36Sopenharmony_ci 12362306a36Sopenharmony_ciconfig TIGON3 12462306a36Sopenharmony_ci tristate "Broadcom Tigon3 support" 12562306a36Sopenharmony_ci depends on PCI 12662306a36Sopenharmony_ci depends on PTP_1588_CLOCK_OPTIONAL 12762306a36Sopenharmony_ci select PHYLIB 12862306a36Sopenharmony_ci help 12962306a36Sopenharmony_ci This driver supports Broadcom Tigon3 based gigabit Ethernet cards. 13062306a36Sopenharmony_ci 13162306a36Sopenharmony_ci To compile this driver as a module, choose M here: the module 13262306a36Sopenharmony_ci will be called tg3. This is recommended. 13362306a36Sopenharmony_ci 13462306a36Sopenharmony_ciconfig TIGON3_HWMON 13562306a36Sopenharmony_ci bool "Broadcom Tigon3 HWMON support" 13662306a36Sopenharmony_ci default y 13762306a36Sopenharmony_ci depends on TIGON3 && HWMON && !(TIGON3=y && HWMON=m) 13862306a36Sopenharmony_ci help 13962306a36Sopenharmony_ci Say Y if you want to expose the thermal sensor on Tigon3 devices. 14062306a36Sopenharmony_ci 14162306a36Sopenharmony_ciconfig BNX2X 14262306a36Sopenharmony_ci tristate "Broadcom NetXtremeII 10Gb support" 14362306a36Sopenharmony_ci depends on PCI 14462306a36Sopenharmony_ci depends on PTP_1588_CLOCK_OPTIONAL 14562306a36Sopenharmony_ci select FW_LOADER 14662306a36Sopenharmony_ci select ZLIB_INFLATE 14762306a36Sopenharmony_ci select LIBCRC32C 14862306a36Sopenharmony_ci select MDIO 14962306a36Sopenharmony_ci help 15062306a36Sopenharmony_ci This driver supports Broadcom NetXtremeII 10 gigabit Ethernet cards. 15162306a36Sopenharmony_ci To compile this driver as a module, choose M here: the module 15262306a36Sopenharmony_ci will be called bnx2x. This is recommended. 15362306a36Sopenharmony_ci 15462306a36Sopenharmony_ciconfig BNX2X_SRIOV 15562306a36Sopenharmony_ci bool "Broadcom 578xx and 57712 SR-IOV support" 15662306a36Sopenharmony_ci depends on BNX2X && PCI_IOV 15762306a36Sopenharmony_ci default y 15862306a36Sopenharmony_ci help 15962306a36Sopenharmony_ci This configuration parameter enables Single Root Input Output 16062306a36Sopenharmony_ci Virtualization support in the 578xx and 57712 products. This 16162306a36Sopenharmony_ci allows for virtual function acceleration in virtual environments. 16262306a36Sopenharmony_ci 16362306a36Sopenharmony_ciconfig BGMAC 16462306a36Sopenharmony_ci tristate 16562306a36Sopenharmony_ci help 16662306a36Sopenharmony_ci This enables the integrated ethernet controller support for many 16762306a36Sopenharmony_ci Broadcom (mostly iProc) SoCs. An appropriate bus interface driver 16862306a36Sopenharmony_ci needs to be enabled to select this. 16962306a36Sopenharmony_ci 17062306a36Sopenharmony_ciconfig BGMAC_BCMA 17162306a36Sopenharmony_ci tristate "Broadcom iProc GBit BCMA support" 17262306a36Sopenharmony_ci depends on BCMA && BCMA_HOST_SOC 17362306a36Sopenharmony_ci depends on BCM47XX || ARCH_BCM_5301X || COMPILE_TEST 17462306a36Sopenharmony_ci select BGMAC 17562306a36Sopenharmony_ci select PHYLIB 17662306a36Sopenharmony_ci select FIXED_PHY 17762306a36Sopenharmony_ci help 17862306a36Sopenharmony_ci This driver supports GBit MAC and BCM4706 GBit MAC cores on BCMA bus. 17962306a36Sopenharmony_ci They can be found on BCM47xx SoCs and provide gigabit ethernet. 18062306a36Sopenharmony_ci In case of using this driver on BCM4706 it's also requires to enable 18162306a36Sopenharmony_ci BCMA_DRIVER_GMAC_CMN to make it work. 18262306a36Sopenharmony_ci 18362306a36Sopenharmony_ciconfig BGMAC_PLATFORM 18462306a36Sopenharmony_ci tristate "Broadcom iProc GBit platform support" 18562306a36Sopenharmony_ci depends on ARCH_BCM_IPROC || COMPILE_TEST 18662306a36Sopenharmony_ci select BGMAC 18762306a36Sopenharmony_ci select PHYLIB 18862306a36Sopenharmony_ci select FIXED_PHY 18962306a36Sopenharmony_ci default ARCH_BCM_IPROC 19062306a36Sopenharmony_ci help 19162306a36Sopenharmony_ci Say Y here if you want to use the Broadcom iProc Gigabit Ethernet 19262306a36Sopenharmony_ci controller through the generic platform interface 19362306a36Sopenharmony_ci 19462306a36Sopenharmony_ciconfig SYSTEMPORT 19562306a36Sopenharmony_ci tristate "Broadcom SYSTEMPORT internal MAC support" 19662306a36Sopenharmony_ci depends on HAS_IOMEM 19762306a36Sopenharmony_ci depends on NET_DSA || !NET_DSA 19862306a36Sopenharmony_ci select MII 19962306a36Sopenharmony_ci select PHYLIB 20062306a36Sopenharmony_ci select FIXED_PHY 20162306a36Sopenharmony_ci select DIMLIB 20262306a36Sopenharmony_ci help 20362306a36Sopenharmony_ci This driver supports the built-in Ethernet MACs found in the 20462306a36Sopenharmony_ci Broadcom BCM7xxx Set Top Box family chipset using an internal 20562306a36Sopenharmony_ci Ethernet switch. 20662306a36Sopenharmony_ci 20762306a36Sopenharmony_ciconfig BNXT 20862306a36Sopenharmony_ci tristate "Broadcom NetXtreme-C/E support" 20962306a36Sopenharmony_ci depends on PCI 21062306a36Sopenharmony_ci depends on PTP_1588_CLOCK_OPTIONAL 21162306a36Sopenharmony_ci select FW_LOADER 21262306a36Sopenharmony_ci select LIBCRC32C 21362306a36Sopenharmony_ci select NET_DEVLINK 21462306a36Sopenharmony_ci select PAGE_POOL 21562306a36Sopenharmony_ci select DIMLIB 21662306a36Sopenharmony_ci select AUXILIARY_BUS 21762306a36Sopenharmony_ci help 21862306a36Sopenharmony_ci This driver supports Broadcom NetXtreme-C/E 10/25/40/50 gigabit 21962306a36Sopenharmony_ci Ethernet cards. To compile this driver as a module, choose M here: 22062306a36Sopenharmony_ci the module will be called bnxt_en. This is recommended. 22162306a36Sopenharmony_ci 22262306a36Sopenharmony_ciconfig BNXT_SRIOV 22362306a36Sopenharmony_ci bool "Broadcom NetXtreme-C/E SR-IOV support" 22462306a36Sopenharmony_ci depends on BNXT && PCI_IOV 22562306a36Sopenharmony_ci default y 22662306a36Sopenharmony_ci help 22762306a36Sopenharmony_ci This configuration parameter enables Single Root Input Output 22862306a36Sopenharmony_ci Virtualization support in the NetXtreme-C/E products. This 22962306a36Sopenharmony_ci allows for virtual function acceleration in virtual environments. 23062306a36Sopenharmony_ci 23162306a36Sopenharmony_ciconfig BNXT_FLOWER_OFFLOAD 23262306a36Sopenharmony_ci bool "TC Flower offload support for NetXtreme-C/E" 23362306a36Sopenharmony_ci depends on BNXT 23462306a36Sopenharmony_ci default y 23562306a36Sopenharmony_ci help 23662306a36Sopenharmony_ci This configuration parameter enables TC Flower packet classifier 23762306a36Sopenharmony_ci offload for eswitch. This option enables SR-IOV switchdev eswitch 23862306a36Sopenharmony_ci offload. 23962306a36Sopenharmony_ci 24062306a36Sopenharmony_ciconfig BNXT_DCB 24162306a36Sopenharmony_ci bool "Data Center Bridging (DCB) Support" 24262306a36Sopenharmony_ci default n 24362306a36Sopenharmony_ci depends on BNXT && DCB 24462306a36Sopenharmony_ci help 24562306a36Sopenharmony_ci Say Y here if you want to use Data Center Bridging (DCB) in the 24662306a36Sopenharmony_ci driver. 24762306a36Sopenharmony_ci 24862306a36Sopenharmony_ci If unsure, say N. 24962306a36Sopenharmony_ci 25062306a36Sopenharmony_ciconfig BNXT_HWMON 25162306a36Sopenharmony_ci bool "Broadcom NetXtreme-C/E HWMON support" 25262306a36Sopenharmony_ci default y 25362306a36Sopenharmony_ci depends on BNXT && HWMON && !(BNXT=y && HWMON=m) 25462306a36Sopenharmony_ci help 25562306a36Sopenharmony_ci Say Y if you want to expose the thermal sensor data on NetXtreme-C/E 25662306a36Sopenharmony_ci devices, via the hwmon sysfs interface. 25762306a36Sopenharmony_ci 25862306a36Sopenharmony_ciconfig BCMASP 25962306a36Sopenharmony_ci tristate "Broadcom ASP 2.0 Ethernet support" 26062306a36Sopenharmony_ci depends on ARCH_BRCMSTB || COMPILE_TEST 26162306a36Sopenharmony_ci default ARCH_BRCMSTB 26262306a36Sopenharmony_ci depends on OF 26362306a36Sopenharmony_ci select MII 26462306a36Sopenharmony_ci select PHYLIB 26562306a36Sopenharmony_ci select MDIO_BCM_UNIMAC 26662306a36Sopenharmony_ci help 26762306a36Sopenharmony_ci This configuration enables the Broadcom ASP 2.0 Ethernet controller 26862306a36Sopenharmony_ci driver which is present in Broadcom STB SoCs such as 72165. 26962306a36Sopenharmony_ci 27062306a36Sopenharmony_ciendif # NET_VENDOR_BROADCOM 271