Merge tag 'nfsd-5.3-1' of git://linux-nfs.org/~bfields/linux
[sfrench/cifs-2.6.git] / drivers / net / ethernet / broadcom / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 #
3 # Broadcom device configuration
4 #
5
6 config NET_VENDOR_BROADCOM
7         bool "Broadcom devices"
8         default y
9         depends on (SSB_POSSIBLE && HAS_DMA) || PCI || BCM63XX || \
10                    SIBYTE_SB1xxx_SOC
11         select DIMLIB
12         ---help---
13           If you have a network (Ethernet) chipset belonging to this class,
14           say Y.
15
16           Note that the answer to this question does not directly affect
17           the kernel: saying N will just cause the configurator to skip all
18           the questions regarding Broadcom chipsets. If you say Y, you will
19           be asked for your specific chipset/driver in the following questions.
20
21 if NET_VENDOR_BROADCOM
22
23 config B44
24         tristate "Broadcom 440x/47xx ethernet support"
25         depends on SSB_POSSIBLE && HAS_DMA
26         select SSB
27         select MII
28         select PHYLIB
29         ---help---
30           If you have a network (Ethernet) controller of this type, say Y
31           or M here.
32
33           To compile this driver as a module, choose M here. The module
34           will be called b44.
35
36 # Auto-select SSB PCI-HOST support, if possible
37 config B44_PCI_AUTOSELECT
38         bool
39         depends on B44 && SSB_PCIHOST_POSSIBLE
40         select SSB_PCIHOST
41         default y
42
43 # Auto-select SSB PCICORE driver, if possible
44 config B44_PCICORE_AUTOSELECT
45         bool
46         depends on B44 && SSB_DRIVER_PCICORE_POSSIBLE
47         select SSB_DRIVER_PCICORE
48         default y
49
50 config B44_PCI
51         bool
52         depends on B44_PCI_AUTOSELECT && B44_PCICORE_AUTOSELECT
53         default y
54
55 config BCM63XX_ENET
56         tristate "Broadcom 63xx internal mac support"
57         depends on BCM63XX
58         select MII
59         select PHYLIB
60         help
61           This driver supports the ethernet MACs in the Broadcom 63xx
62           MIPS chipset family (BCM63XX).
63
64 config BCMGENET
65         tristate "Broadcom GENET internal MAC support"
66         depends on HAS_IOMEM
67         select MII
68         select PHYLIB
69         select FIXED_PHY
70         select BCM7XXX_PHY
71         select MDIO_BCM_UNIMAC
72         help
73           This driver supports the built-in Ethernet MACs found in the
74           Broadcom BCM7xxx Set Top Box family chipset.
75
76 config BNX2
77         tristate "QLogic bnx2 support"
78         depends on PCI
79         select CRC32
80         select FW_LOADER
81         ---help---
82           This driver supports QLogic bnx2 gigabit Ethernet cards.
83
84           To compile this driver as a module, choose M here: the module
85           will be called bnx2.  This is recommended.
86
87 config CNIC
88         tristate "QLogic CNIC support"
89         depends on PCI && (IPV6 || IPV6=n)
90         select BNX2
91         select UIO
92         ---help---
93           This driver supports offload features of QLogic bnx2 gigabit
94           Ethernet cards.
95
96           To compile this driver as a module, choose M here: the module
97           will be called cnic.  This is recommended.
98
99 config SB1250_MAC
100         tristate "SB1250 Gigabit Ethernet support"
101         depends on SIBYTE_SB1xxx_SOC
102         select PHYLIB
103         ---help---
104           This driver supports Gigabit Ethernet interfaces based on the
105           Broadcom SiByte family of System-On-a-Chip parts.  They include
106           the BCM1120, BCM1125, BCM1125H, BCM1250, BCM1255, BCM1280, BCM1455
107           and BCM1480 chips.
108
109           To compile this driver as a module, choose M here: the module
110           will be called sb1250-mac.
111
112 config TIGON3
113         tristate "Broadcom Tigon3 support"
114         depends on PCI
115         select PHYLIB
116         imply PTP_1588_CLOCK
117         ---help---
118           This driver supports Broadcom Tigon3 based gigabit Ethernet cards.
119
120           To compile this driver as a module, choose M here: the module
121           will be called tg3.  This is recommended.
122
123 config TIGON3_HWMON
124         bool "Broadcom Tigon3 HWMON support"
125         default y
126         depends on TIGON3 && HWMON && !(TIGON3=y && HWMON=m)
127         ---help---
128           Say Y if you want to expose the thermal sensor on Tigon3 devices.
129
130 config BNX2X
131         tristate "Broadcom NetXtremeII 10Gb support"
132         depends on PCI
133         imply PTP_1588_CLOCK
134         select FW_LOADER
135         select ZLIB_INFLATE
136         select LIBCRC32C
137         select MDIO
138         ---help---
139           This driver supports Broadcom NetXtremeII 10 gigabit Ethernet cards.
140           To compile this driver as a module, choose M here: the module
141           will be called bnx2x.  This is recommended.
142
143 config BNX2X_SRIOV
144         bool "Broadcom 578xx and 57712 SR-IOV support"
145         depends on BNX2X && PCI_IOV
146         default y
147         ---help---
148           This configuration parameter enables Single Root Input Output
149           Virtualization support in the 578xx and 57712 products. This
150           allows for virtual function acceleration in virtual environments.
151
152 config BGMAC
153         tristate
154         help
155           This enables the integrated ethernet controller support for many
156           Broadcom (mostly iProc) SoCs. An appropriate bus interface driver
157           needs to be enabled to select this.
158
159 config BGMAC_BCMA
160         tristate "Broadcom iProc GBit BCMA support"
161         depends on BCMA && BCMA_HOST_SOC
162         depends on BCM47XX || ARCH_BCM_5301X || COMPILE_TEST
163         select BGMAC
164         select PHYLIB
165         select FIXED_PHY
166         ---help---
167           This driver supports GBit MAC and BCM4706 GBit MAC cores on BCMA bus.
168           They can be found on BCM47xx SoCs and provide gigabit ethernet.
169           In case of using this driver on BCM4706 it's also requires to enable
170           BCMA_DRIVER_GMAC_CMN to make it work.
171
172 config BGMAC_PLATFORM
173         tristate "Broadcom iProc GBit platform support"
174         depends on ARCH_BCM_IPROC || COMPILE_TEST
175         depends on OF
176         select BGMAC
177         select PHYLIB
178         select FIXED_PHY
179         default ARCH_BCM_IPROC
180         ---help---
181           Say Y here if you want to use the Broadcom iProc Gigabit Ethernet
182           controller through the generic platform interface
183
184 config SYSTEMPORT
185         tristate "Broadcom SYSTEMPORT internal MAC support"
186         depends on HAS_IOMEM
187         depends on NET_DSA || !NET_DSA
188         select MII
189         select PHYLIB
190         select FIXED_PHY
191         help
192           This driver supports the built-in Ethernet MACs found in the
193           Broadcom BCM7xxx Set Top Box family chipset using an internal
194           Ethernet switch.
195
196 config BNXT
197         tristate "Broadcom NetXtreme-C/E support"
198         depends on PCI
199         select FW_LOADER
200         select LIBCRC32C
201         select NET_DEVLINK
202         select PAGE_POOL
203         ---help---
204           This driver supports Broadcom NetXtreme-C/E 10/25/40/50 gigabit
205           Ethernet cards.  To compile this driver as a module, choose M here:
206           the module will be called bnxt_en.  This is recommended.
207
208 config BNXT_SRIOV
209         bool "Broadcom NetXtreme-C/E SR-IOV support"
210         depends on BNXT && PCI_IOV
211         default y
212         ---help---
213           This configuration parameter enables Single Root Input Output
214           Virtualization support in the NetXtreme-C/E products. This
215           allows for virtual function acceleration in virtual environments.
216
217 config BNXT_FLOWER_OFFLOAD
218         bool "TC Flower offload support for NetXtreme-C/E"
219         depends on BNXT
220         default y
221         ---help---
222           This configuration parameter enables TC Flower packet classifier
223           offload for eswitch.  This option enables SR-IOV switchdev eswitch
224           offload.
225
226 config BNXT_DCB
227         bool "Data Center Bridging (DCB) Support"
228         default n
229         depends on BNXT && DCB
230         ---help---
231           Say Y here if you want to use Data Center Bridging (DCB) in the
232           driver.
233
234           If unsure, say N.
235
236 config BNXT_HWMON
237         bool "Broadcom NetXtreme-C/E HWMON support"
238         default y
239         depends on BNXT && HWMON && !(BNXT=y && HWMON=m)
240         ---help---
241           Say Y if you want to expose the thermal sensor data on NetXtreme-C/E
242           devices, via the hwmon sysfs interface.
243
244 endif # NET_VENDOR_BROADCOM