xref: /linux/drivers/net/ethernet/broadcom/Kconfig (revision ddc790e92b3afa4e366ffb41818cfcd19015031e)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
2adfc5217SJeff Kirsher#
3adfc5217SJeff Kirsher# Broadcom device configuration
4adfc5217SJeff Kirsher#
5adfc5217SJeff Kirsher
6adfc5217SJeff Kirsherconfig NET_VENDOR_BROADCOM
7adfc5217SJeff Kirsher	bool "Broadcom devices"
888f07484SJeff Kirsher	default y
9adfc5217SJeff Kirsher	depends on (SSB_POSSIBLE && HAS_DMA) || PCI || BCM63XX || \
10adfc5217SJeff Kirsher		   SIBYTE_SB1xxx_SOC
11adfc5217SJeff Kirsher	---help---
12adfc5217SJeff Kirsher	  If you have a network (Ethernet) chipset belonging to this class,
13adfc5217SJeff Kirsher	  say Y.
14adfc5217SJeff Kirsher
15adfc5217SJeff Kirsher	  Note that the answer to this question does not directly affect
16aca3432aSGeert Uytterhoeven	  the kernel: saying N will just cause the configurator to skip all
17aca3432aSGeert Uytterhoeven	  the questions regarding Broadcom chipsets. If you say Y, you will
18aca3432aSGeert Uytterhoeven	  be asked for your specific chipset/driver in the following questions.
19adfc5217SJeff Kirsher
20adfc5217SJeff Kirsherif NET_VENDOR_BROADCOM
21adfc5217SJeff Kirsher
22adfc5217SJeff Kirsherconfig B44
23adfc5217SJeff Kirsher	tristate "Broadcom 440x/47xx ethernet support"
24adfc5217SJeff Kirsher	depends on SSB_POSSIBLE && HAS_DMA
25adfc5217SJeff Kirsher	select SSB
26adfc5217SJeff Kirsher	select MII
2786f4ea63SHauke Mehrtens	select PHYLIB
28adfc5217SJeff Kirsher	---help---
29adfc5217SJeff Kirsher	  If you have a network (Ethernet) controller of this type, say Y
30138b15edSPaul Gortmaker	  or M here.
31adfc5217SJeff Kirsher
32adfc5217SJeff Kirsher	  To compile this driver as a module, choose M here. The module
33adfc5217SJeff Kirsher	  will be called b44.
34adfc5217SJeff Kirsher
35adfc5217SJeff Kirsher# Auto-select SSB PCI-HOST support, if possible
36adfc5217SJeff Kirsherconfig B44_PCI_AUTOSELECT
37adfc5217SJeff Kirsher	bool
38adfc5217SJeff Kirsher	depends on B44 && SSB_PCIHOST_POSSIBLE
39adfc5217SJeff Kirsher	select SSB_PCIHOST
40adfc5217SJeff Kirsher	default y
41adfc5217SJeff Kirsher
42adfc5217SJeff Kirsher# Auto-select SSB PCICORE driver, if possible
43adfc5217SJeff Kirsherconfig B44_PCICORE_AUTOSELECT
44adfc5217SJeff Kirsher	bool
45adfc5217SJeff Kirsher	depends on B44 && SSB_DRIVER_PCICORE_POSSIBLE
46adfc5217SJeff Kirsher	select SSB_DRIVER_PCICORE
47adfc5217SJeff Kirsher	default y
48adfc5217SJeff Kirsher
49adfc5217SJeff Kirsherconfig B44_PCI
50adfc5217SJeff Kirsher	bool
51adfc5217SJeff Kirsher	depends on B44_PCI_AUTOSELECT && B44_PCICORE_AUTOSELECT
52adfc5217SJeff Kirsher	default y
53adfc5217SJeff Kirsher
54adfc5217SJeff Kirsherconfig BCM63XX_ENET
55adfc5217SJeff Kirsher	tristate "Broadcom 63xx internal mac support"
56adfc5217SJeff Kirsher	depends on BCM63XX
57adfc5217SJeff Kirsher	select MII
58adfc5217SJeff Kirsher	select PHYLIB
59adfc5217SJeff Kirsher	help
60adfc5217SJeff Kirsher	  This driver supports the ethernet MACs in the Broadcom 63xx
61adfc5217SJeff Kirsher	  MIPS chipset family (BCM63XX).
62adfc5217SJeff Kirsher
63bdaa53bdSFlorian Fainelliconfig BCMGENET
64bdaa53bdSFlorian Fainelli	tristate "Broadcom GENET internal MAC support"
657f7b7574SFlorian Fainelli	depends on HAS_IOMEM
66bdaa53bdSFlorian Fainelli	select MII
67bdaa53bdSFlorian Fainelli	select PHYLIB
68d8ced82eSFlorian Fainelli	select FIXED_PHY
69bdaa53bdSFlorian Fainelli	select BCM7XXX_PHY
709a4e7969SFlorian Fainelli	select MDIO_BCM_UNIMAC
71*ddc790e9SRandy Dunlap	select DIMLIB
72bdaa53bdSFlorian Fainelli	help
73bdaa53bdSFlorian Fainelli	  This driver supports the built-in Ethernet MACs found in the
74bdaa53bdSFlorian Fainelli	  Broadcom BCM7xxx Set Top Box family chipset.
75bdaa53bdSFlorian Fainelli
76adfc5217SJeff Kirsherconfig BNX2
772e0bf125SRasesh Mody	tristate "QLogic bnx2 support"
78adfc5217SJeff Kirsher	depends on PCI
79adfc5217SJeff Kirsher	select CRC32
80adfc5217SJeff Kirsher	select FW_LOADER
81adfc5217SJeff Kirsher	---help---
822e0bf125SRasesh Mody	  This driver supports QLogic bnx2 gigabit Ethernet cards.
83adfc5217SJeff Kirsher
84adfc5217SJeff Kirsher	  To compile this driver as a module, choose M here: the module
85adfc5217SJeff Kirsher	  will be called bnx2.  This is recommended.
86adfc5217SJeff Kirsher
87adfc5217SJeff Kirsherconfig CNIC
88d7afae05SJitendra Kalsaria	tristate "QLogic CNIC support"
89c99d667eSAnish Bhatt	depends on PCI && (IPV6 || IPV6=n)
90adfc5217SJeff Kirsher	select BNX2
91adfc5217SJeff Kirsher	select UIO
92adfc5217SJeff Kirsher	---help---
932e0bf125SRasesh Mody	  This driver supports offload features of QLogic bnx2 gigabit
942e0bf125SRasesh Mody	  Ethernet cards.
95adfc5217SJeff Kirsher
96adfc5217SJeff Kirsher	  To compile this driver as a module, choose M here: the module
97adfc5217SJeff Kirsher	  will be called cnic.  This is recommended.
98adfc5217SJeff Kirsher
99adfc5217SJeff Kirsherconfig SB1250_MAC
100adfc5217SJeff Kirsher	tristate "SB1250 Gigabit Ethernet support"
101adfc5217SJeff Kirsher	depends on SIBYTE_SB1xxx_SOC
102adfc5217SJeff Kirsher	select PHYLIB
103adfc5217SJeff Kirsher	---help---
104adfc5217SJeff Kirsher	  This driver supports Gigabit Ethernet interfaces based on the
105adfc5217SJeff Kirsher	  Broadcom SiByte family of System-On-a-Chip parts.  They include
106adfc5217SJeff Kirsher	  the BCM1120, BCM1125, BCM1125H, BCM1250, BCM1255, BCM1280, BCM1455
107adfc5217SJeff Kirsher	  and BCM1480 chips.
108adfc5217SJeff Kirsher
109adfc5217SJeff Kirsher	  To compile this driver as a module, choose M here: the module
110adfc5217SJeff Kirsher	  will be called sb1250-mac.
111adfc5217SJeff Kirsher
112adfc5217SJeff Kirsherconfig TIGON3
113adfc5217SJeff Kirsher	tristate "Broadcom Tigon3 support"
114adfc5217SJeff Kirsher	depends on PCI
115adfc5217SJeff Kirsher	select PHYLIB
116d1cbfd77SNicolas Pitre	imply PTP_1588_CLOCK
117adfc5217SJeff Kirsher	---help---
118adfc5217SJeff Kirsher	  This driver supports Broadcom Tigon3 based gigabit Ethernet cards.
119adfc5217SJeff Kirsher
120adfc5217SJeff Kirsher	  To compile this driver as a module, choose M here: the module
121adfc5217SJeff Kirsher	  will be called tg3.  This is recommended.
122adfc5217SJeff Kirsher
123038e893dSFlorian Fainelliconfig TIGON3_HWMON
124038e893dSFlorian Fainelli	bool "Broadcom Tigon3 HWMON support"
125038e893dSFlorian Fainelli	default y
126038e893dSFlorian Fainelli	depends on TIGON3 && HWMON && !(TIGON3=y && HWMON=m)
127038e893dSFlorian Fainelli	---help---
128038e893dSFlorian Fainelli	  Say Y if you want to expose the thermal sensor on Tigon3 devices.
129038e893dSFlorian Fainelli
130adfc5217SJeff Kirsherconfig BNX2X
131adfc5217SJeff Kirsher	tristate "Broadcom NetXtremeII 10Gb support"
132adfc5217SJeff Kirsher	depends on PCI
133d1cbfd77SNicolas Pitre	imply PTP_1588_CLOCK
134adfc5217SJeff Kirsher	select FW_LOADER
135adfc5217SJeff Kirsher	select ZLIB_INFLATE
136adfc5217SJeff Kirsher	select LIBCRC32C
137adfc5217SJeff Kirsher	select MDIO
138adfc5217SJeff Kirsher	---help---
139adfc5217SJeff Kirsher	  This driver supports Broadcom NetXtremeII 10 gigabit Ethernet cards.
140adfc5217SJeff Kirsher	  To compile this driver as a module, choose M here: the module
141adfc5217SJeff Kirsher	  will be called bnx2x.  This is recommended.
142adfc5217SJeff Kirsher
1436411280aSAriel Eliorconfig BNX2X_SRIOV
1446411280aSAriel Elior	bool "Broadcom 578xx and 57712 SR-IOV support"
1456411280aSAriel Elior	depends on BNX2X && PCI_IOV
1466411280aSAriel Elior	default y
1476411280aSAriel Elior	---help---
1486411280aSAriel Elior	  This configuration parameter enables Single Root Input Output
1496411280aSAriel Elior	  Virtualization support in the 578xx and 57712 products. This
1506411280aSAriel Elior	  allows for virtual function acceleration in virtual environments.
1516411280aSAriel Elior
152dd4544f0SRafał Miłeckiconfig BGMAC
153f6a95a24SJon Mason	tristate
154f6a95a24SJon Mason	help
155f6a95a24SJon Mason	  This enables the integrated ethernet controller support for many
156f6a95a24SJon Mason	  Broadcom (mostly iProc) SoCs. An appropriate bus interface driver
157f6a95a24SJon Mason	  needs to be enabled to select this.
158f6a95a24SJon Mason
159f6a95a24SJon Masonconfig BGMAC_BCMA
160f6a95a24SJon Mason	tristate "Broadcom iProc GBit BCMA support"
1611f820f53SArnd Bergmann	depends on BCMA && BCMA_HOST_SOC
1621f820f53SArnd Bergmann	depends on BCM47XX || ARCH_BCM_5301X || COMPILE_TEST
163f6a95a24SJon Mason	select BGMAC
16431bd2977SHauke Mehrtens	select PHYLIB
1651f820f53SArnd Bergmann	select FIXED_PHY
166dd4544f0SRafał Miłecki	---help---
167dd4544f0SRafał Miłecki	  This driver supports GBit MAC and BCM4706 GBit MAC cores on BCMA bus.
168dd4544f0SRafał Miłecki	  They can be found on BCM47xx SoCs and provide gigabit ethernet.
169dd4544f0SRafał Miłecki	  In case of using this driver on BCM4706 it's also requires to enable
170dd4544f0SRafał Miłecki	  BCMA_DRIVER_GMAC_CMN to make it work.
171dd4544f0SRafał Miłecki
172f6a95a24SJon Masonconfig BGMAC_PLATFORM
173f6a95a24SJon Mason	tristate "Broadcom iProc GBit platform support"
174f6a95a24SJon Mason	depends on ARCH_BCM_IPROC || COMPILE_TEST
175f6a95a24SJon Mason	depends on OF
176f6a95a24SJon Mason	select BGMAC
177f6a95a24SJon Mason	select PHYLIB
178f6a95a24SJon Mason	select FIXED_PHY
179f6a95a24SJon Mason	default ARCH_BCM_IPROC
180f6a95a24SJon Mason	---help---
181f6a95a24SJon Mason	  Say Y here if you want to use the Broadcom iProc Gigabit Ethernet
182f6a95a24SJon Mason	  controller through the generic platform interface
183f6a95a24SJon Mason
184a3862db2SFlorian Fainelliconfig SYSTEMPORT
185a3862db2SFlorian Fainelli	tristate "Broadcom SYSTEMPORT internal MAC support"
1867f7b7574SFlorian Fainelli	depends on HAS_IOMEM
18700fb3a7cSArnd Bergmann	depends on NET_DSA || !NET_DSA
188a3862db2SFlorian Fainelli	select MII
189a3862db2SFlorian Fainelli	select PHYLIB
190598ea823SFlorian Fainelli	select FIXED_PHY
191*ddc790e9SRandy Dunlap	select DIMLIB
192a3862db2SFlorian Fainelli	help
193a3862db2SFlorian Fainelli	  This driver supports the built-in Ethernet MACs found in the
194a3862db2SFlorian Fainelli	  Broadcom BCM7xxx Set Top Box family chipset using an internal
195a3862db2SFlorian Fainelli	  Ethernet switch.
196a3862db2SFlorian Fainelli
197c0c050c5SMichael Chanconfig BNXT
198c0c050c5SMichael Chan	tristate "Broadcom NetXtreme-C/E support"
199c0c050c5SMichael Chan	depends on PCI
200c0c050c5SMichael Chan	select FW_LOADER
201c0c050c5SMichael Chan	select LIBCRC32C
202f6b19b35SJiri Pirko	select NET_DEVLINK
203322b87caSAndy Gospodarek	select PAGE_POOL
204*ddc790e9SRandy Dunlap	select DIMLIB
205c0c050c5SMichael Chan	---help---
206c0c050c5SMichael Chan	  This driver supports Broadcom NetXtreme-C/E 10/25/40/50 gigabit
207c0c050c5SMichael Chan	  Ethernet cards.  To compile this driver as a module, choose M here:
208c0c050c5SMichael Chan	  the module will be called bnxt_en.  This is recommended.
209c0c050c5SMichael Chan
210c0c050c5SMichael Chanconfig BNXT_SRIOV
211c0c050c5SMichael Chan	bool "Broadcom NetXtreme-C/E SR-IOV support"
212c0c050c5SMichael Chan	depends on BNXT && PCI_IOV
213c0c050c5SMichael Chan	default y
214c0c050c5SMichael Chan	---help---
215c0c050c5SMichael Chan	  This configuration parameter enables Single Root Input Output
216c0c050c5SMichael Chan	  Virtualization support in the NetXtreme-C/E products. This
217c0c050c5SMichael Chan	  allows for virtual function acceleration in virtual environments.
218c0c050c5SMichael Chan
2192ae7408fSSathya Perlaconfig BNXT_FLOWER_OFFLOAD
2202ae7408fSSathya Perla	bool "TC Flower offload support for NetXtreme-C/E"
2212ae7408fSSathya Perla	depends on BNXT
2222ae7408fSSathya Perla	default y
2232ae7408fSSathya Perla	---help---
2242ae7408fSSathya Perla	  This configuration parameter enables TC Flower packet classifier
2252ae7408fSSathya Perla	  offload for eswitch.  This option enables SR-IOV switchdev eswitch
2262ae7408fSSathya Perla	  offload.
2272ae7408fSSathya Perla
2287df4ae9fSMichael Chanconfig BNXT_DCB
2297df4ae9fSMichael Chan	bool "Data Center Bridging (DCB) Support"
2307df4ae9fSMichael Chan	default n
2317df4ae9fSMichael Chan	depends on BNXT && DCB
2327df4ae9fSMichael Chan	---help---
2337df4ae9fSMichael Chan	  Say Y here if you want to use Data Center Bridging (DCB) in the
2347df4ae9fSMichael Chan	  driver.
2357df4ae9fSMichael Chan
2367df4ae9fSMichael Chan	  If unsure, say N.
2377df4ae9fSMichael Chan
238cde49a42SVasundhara Volamconfig BNXT_HWMON
239cde49a42SVasundhara Volam	bool "Broadcom NetXtreme-C/E HWMON support"
240cde49a42SVasundhara Volam	default y
241cde49a42SVasundhara Volam	depends on BNXT && HWMON && !(BNXT=y && HWMON=m)
242cde49a42SVasundhara Volam	---help---
243cde49a42SVasundhara Volam	  Say Y if you want to expose the thermal sensor data on NetXtreme-C/E
244cde49a42SVasundhara Volam	  devices, via the hwmon sysfs interface.
245cde49a42SVasundhara Volam
246adfc5217SJeff Kirsherendif # NET_VENDOR_BROADCOM
247