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