xref: /OK3568_Linux_fs/kernel/drivers/net/wireless/ralink/rt2x00/Kconfig (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun# SPDX-License-Identifier: GPL-2.0-only
2*4882a593Smuzhiyunmenuconfig RT2X00
3*4882a593Smuzhiyun	tristate "Ralink driver support"
4*4882a593Smuzhiyun	depends on MAC80211 && HAS_DMA
5*4882a593Smuzhiyun	help
6*4882a593Smuzhiyun	  This will enable the support for the Ralink drivers,
7*4882a593Smuzhiyun	  developed in the rt2x00 project <http://rt2x00.serialmonkey.com>.
8*4882a593Smuzhiyun
9*4882a593Smuzhiyun	  These drivers make use of the mac80211 stack.
10*4882a593Smuzhiyun
11*4882a593Smuzhiyun	  When building one of the individual drivers, the rt2x00 library
12*4882a593Smuzhiyun	  will also be created. That library (when the driver is built as
13*4882a593Smuzhiyun	  a module) will be called rt2x00lib.
14*4882a593Smuzhiyun
15*4882a593Smuzhiyun	  Additionally PCI and USB libraries will also be build depending
16*4882a593Smuzhiyun	  on the types of drivers being selected, these libraries will be
17*4882a593Smuzhiyun	  called rt2x00pci and rt2x00usb.
18*4882a593Smuzhiyun
19*4882a593Smuzhiyunif RT2X00
20*4882a593Smuzhiyun
21*4882a593Smuzhiyunconfig RT2400PCI
22*4882a593Smuzhiyun	tristate "Ralink rt2400 (PCI/PCMCIA) support"
23*4882a593Smuzhiyun	depends on PCI
24*4882a593Smuzhiyun	select RT2X00_LIB_MMIO
25*4882a593Smuzhiyun	select RT2X00_LIB_PCI
26*4882a593Smuzhiyun	select EEPROM_93CX6
27*4882a593Smuzhiyun	help
28*4882a593Smuzhiyun	  This adds support for rt2400 wireless chipset family.
29*4882a593Smuzhiyun	  Supported chips: RT2460.
30*4882a593Smuzhiyun
31*4882a593Smuzhiyun	  When compiled as a module, this driver will be called rt2400pci.
32*4882a593Smuzhiyun
33*4882a593Smuzhiyunconfig RT2500PCI
34*4882a593Smuzhiyun	tristate "Ralink rt2500 (PCI/PCMCIA) support"
35*4882a593Smuzhiyun	depends on PCI
36*4882a593Smuzhiyun	select RT2X00_LIB_MMIO
37*4882a593Smuzhiyun	select RT2X00_LIB_PCI
38*4882a593Smuzhiyun	select EEPROM_93CX6
39*4882a593Smuzhiyun	help
40*4882a593Smuzhiyun	  This adds support for rt2500 wireless chipset family.
41*4882a593Smuzhiyun	  Supported chips: RT2560.
42*4882a593Smuzhiyun
43*4882a593Smuzhiyun	  When compiled as a module, this driver will be called rt2500pci.
44*4882a593Smuzhiyun
45*4882a593Smuzhiyunconfig RT61PCI
46*4882a593Smuzhiyun	tristate "Ralink rt2501/rt61 (PCI/PCMCIA) support"
47*4882a593Smuzhiyun	depends on PCI
48*4882a593Smuzhiyun	select RT2X00_LIB_PCI
49*4882a593Smuzhiyun	select RT2X00_LIB_MMIO
50*4882a593Smuzhiyun	select RT2X00_LIB_FIRMWARE
51*4882a593Smuzhiyun	select RT2X00_LIB_CRYPTO
52*4882a593Smuzhiyun	select CRC_ITU_T
53*4882a593Smuzhiyun	select EEPROM_93CX6
54*4882a593Smuzhiyun	help
55*4882a593Smuzhiyun	  This adds support for rt2501 wireless chipset family.
56*4882a593Smuzhiyun	  Supported chips: RT2561, RT2561S & RT2661.
57*4882a593Smuzhiyun
58*4882a593Smuzhiyun	  When compiled as a module, this driver will be called rt61pci.
59*4882a593Smuzhiyun
60*4882a593Smuzhiyunconfig RT2800PCI
61*4882a593Smuzhiyun	tristate "Ralink rt27xx/rt28xx/rt30xx (PCI/PCIe/PCMCIA) support"
62*4882a593Smuzhiyun	depends on PCI
63*4882a593Smuzhiyun	select RT2800_LIB
64*4882a593Smuzhiyun	select RT2800_LIB_MMIO
65*4882a593Smuzhiyun	select RT2X00_LIB_MMIO
66*4882a593Smuzhiyun	select RT2X00_LIB_PCI
67*4882a593Smuzhiyun	select RT2X00_LIB_FIRMWARE
68*4882a593Smuzhiyun	select RT2X00_LIB_CRYPTO
69*4882a593Smuzhiyun	select CRC_CCITT
70*4882a593Smuzhiyun	select EEPROM_93CX6
71*4882a593Smuzhiyun	help
72*4882a593Smuzhiyun	  This adds support for rt27xx/rt28xx/rt30xx wireless chipset family.
73*4882a593Smuzhiyun	  Supported chips: RT2760, RT2790, RT2860, RT2880, RT2890, RT3052,
74*4882a593Smuzhiyun			   RT3090, RT3091 & RT3092
75*4882a593Smuzhiyun
76*4882a593Smuzhiyun	  When compiled as a module, this driver will be called "rt2800pci.ko".
77*4882a593Smuzhiyun
78*4882a593Smuzhiyunif RT2800PCI
79*4882a593Smuzhiyun
80*4882a593Smuzhiyunconfig RT2800PCI_RT33XX
81*4882a593Smuzhiyun	bool "rt2800pci - Include support for rt33xx devices"
82*4882a593Smuzhiyun	default y
83*4882a593Smuzhiyun	help
84*4882a593Smuzhiyun	  This adds support for rt33xx wireless chipset family to the
85*4882a593Smuzhiyun	  rt2800pci driver.
86*4882a593Smuzhiyun	  Supported chips: RT3390
87*4882a593Smuzhiyun
88*4882a593Smuzhiyunconfig RT2800PCI_RT35XX
89*4882a593Smuzhiyun	bool "rt2800pci - Include support for rt35xx devices (EXPERIMENTAL)"
90*4882a593Smuzhiyun	default y
91*4882a593Smuzhiyun	help
92*4882a593Smuzhiyun	  This adds support for rt35xx wireless chipset family to the
93*4882a593Smuzhiyun	  rt2800pci driver.
94*4882a593Smuzhiyun	  Supported chips: RT3060, RT3062, RT3562, RT3592
95*4882a593Smuzhiyun
96*4882a593Smuzhiyun
97*4882a593Smuzhiyunconfig RT2800PCI_RT53XX
98*4882a593Smuzhiyun	bool "rt2800pci - Include support for rt53xx devices (EXPERIMENTAL)"
99*4882a593Smuzhiyun	default y
100*4882a593Smuzhiyun	help
101*4882a593Smuzhiyun	  This adds support for rt53xx wireless chipset family to the
102*4882a593Smuzhiyun	  rt2800pci driver.
103*4882a593Smuzhiyun	  Supported chips: RT5390
104*4882a593Smuzhiyun
105*4882a593Smuzhiyunconfig RT2800PCI_RT3290
106*4882a593Smuzhiyun	bool "rt2800pci - Include support for rt3290 devices (EXPERIMENTAL)"
107*4882a593Smuzhiyun	default y
108*4882a593Smuzhiyun	help
109*4882a593Smuzhiyun	  This adds support for rt3290 wireless chipset family to the
110*4882a593Smuzhiyun	  rt2800pci driver.
111*4882a593Smuzhiyun	  Supported chips: RT3290
112*4882a593Smuzhiyunendif
113*4882a593Smuzhiyun
114*4882a593Smuzhiyunconfig RT2500USB
115*4882a593Smuzhiyun	tristate "Ralink rt2500 (USB) support"
116*4882a593Smuzhiyun	depends on USB
117*4882a593Smuzhiyun	select RT2X00_LIB_USB
118*4882a593Smuzhiyun	select RT2X00_LIB_CRYPTO
119*4882a593Smuzhiyun	help
120*4882a593Smuzhiyun	  This adds support for rt2500 wireless chipset family.
121*4882a593Smuzhiyun	  Supported chips: RT2571 & RT2572.
122*4882a593Smuzhiyun
123*4882a593Smuzhiyun	  When compiled as a module, this driver will be called rt2500usb.
124*4882a593Smuzhiyun
125*4882a593Smuzhiyunconfig RT73USB
126*4882a593Smuzhiyun	tristate "Ralink rt2501/rt73 (USB) support"
127*4882a593Smuzhiyun	depends on USB
128*4882a593Smuzhiyun	select RT2X00_LIB_USB
129*4882a593Smuzhiyun	select RT2X00_LIB_FIRMWARE
130*4882a593Smuzhiyun	select RT2X00_LIB_CRYPTO
131*4882a593Smuzhiyun	select CRC_ITU_T
132*4882a593Smuzhiyun	help
133*4882a593Smuzhiyun	  This adds support for rt2501 wireless chipset family.
134*4882a593Smuzhiyun	  Supported chips: RT2571W, RT2573 & RT2671.
135*4882a593Smuzhiyun
136*4882a593Smuzhiyun	  When compiled as a module, this driver will be called rt73usb.
137*4882a593Smuzhiyun
138*4882a593Smuzhiyunconfig RT2800USB
139*4882a593Smuzhiyun	tristate "Ralink rt27xx/rt28xx/rt30xx (USB) support"
140*4882a593Smuzhiyun	depends on USB
141*4882a593Smuzhiyun	select RT2800_LIB
142*4882a593Smuzhiyun	select RT2X00_LIB_USB
143*4882a593Smuzhiyun	select RT2X00_LIB_FIRMWARE
144*4882a593Smuzhiyun	select RT2X00_LIB_CRYPTO
145*4882a593Smuzhiyun	select CRC_CCITT
146*4882a593Smuzhiyun	help
147*4882a593Smuzhiyun	  This adds support for rt27xx/rt28xx/rt30xx wireless chipset family.
148*4882a593Smuzhiyun	  Supported chips: RT2770, RT2870 & RT3070, RT3071 & RT3072
149*4882a593Smuzhiyun
150*4882a593Smuzhiyun	  When compiled as a module, this driver will be called "rt2800usb.ko".
151*4882a593Smuzhiyun
152*4882a593Smuzhiyunif RT2800USB
153*4882a593Smuzhiyun
154*4882a593Smuzhiyunconfig RT2800USB_RT33XX
155*4882a593Smuzhiyun	bool "rt2800usb - Include support for rt33xx devices"
156*4882a593Smuzhiyun	default y
157*4882a593Smuzhiyun	help
158*4882a593Smuzhiyun	  This adds support for rt33xx wireless chipset family to the
159*4882a593Smuzhiyun	  rt2800usb driver.
160*4882a593Smuzhiyun	  Supported chips: RT3370
161*4882a593Smuzhiyun
162*4882a593Smuzhiyunconfig RT2800USB_RT35XX
163*4882a593Smuzhiyun	bool "rt2800usb - Include support for rt35xx devices (EXPERIMENTAL)"
164*4882a593Smuzhiyun	default y
165*4882a593Smuzhiyun	help
166*4882a593Smuzhiyun	  This adds support for rt35xx wireless chipset family to the
167*4882a593Smuzhiyun	  rt2800usb driver.
168*4882a593Smuzhiyun	  Supported chips: RT3572
169*4882a593Smuzhiyun
170*4882a593Smuzhiyunconfig RT2800USB_RT3573
171*4882a593Smuzhiyun	bool "rt2800usb - Include support for rt3573 devices (EXPERIMENTAL)"
172*4882a593Smuzhiyun	help
173*4882a593Smuzhiyun	  This enables support for RT3573 chipset based wireless USB devices
174*4882a593Smuzhiyun	  in the rt2800usb driver.
175*4882a593Smuzhiyun
176*4882a593Smuzhiyunconfig RT2800USB_RT53XX
177*4882a593Smuzhiyun	bool "rt2800usb - Include support for rt53xx devices (EXPERIMENTAL)"
178*4882a593Smuzhiyun	help
179*4882a593Smuzhiyun	  This adds support for rt53xx wireless chipset family to the
180*4882a593Smuzhiyun	  rt2800usb driver.
181*4882a593Smuzhiyun	  Supported chips: RT5370
182*4882a593Smuzhiyun
183*4882a593Smuzhiyunconfig RT2800USB_RT55XX
184*4882a593Smuzhiyun	bool "rt2800usb - Include support for rt55xx devices (EXPERIMENTAL)"
185*4882a593Smuzhiyun	help
186*4882a593Smuzhiyun	  This adds support for rt55xx wireless chipset family to the
187*4882a593Smuzhiyun	  rt2800usb driver.
188*4882a593Smuzhiyun	  Supported chips: RT5572
189*4882a593Smuzhiyun
190*4882a593Smuzhiyunconfig RT2800USB_UNKNOWN
191*4882a593Smuzhiyun	bool "rt2800usb - Include support for unknown (USB) devices"
192*4882a593Smuzhiyun	default n
193*4882a593Smuzhiyun	help
194*4882a593Smuzhiyun	  This adds support for rt2800usb devices that are known to
195*4882a593Smuzhiyun	  have a rt28xx family compatible chipset, but for which the exact
196*4882a593Smuzhiyun	  chipset is unknown.
197*4882a593Smuzhiyun
198*4882a593Smuzhiyun	  Support status for these devices is unknown, and enabling these
199*4882a593Smuzhiyun	  devices may or may not work.
200*4882a593Smuzhiyun
201*4882a593Smuzhiyunendif
202*4882a593Smuzhiyun
203*4882a593Smuzhiyunconfig RT2800SOC
204*4882a593Smuzhiyun	tristate "Ralink WiSoC support"
205*4882a593Smuzhiyun	depends on SOC_RT288X || SOC_RT305X || SOC_MT7620
206*4882a593Smuzhiyun	select RT2X00_LIB_SOC
207*4882a593Smuzhiyun	select RT2X00_LIB_MMIO
208*4882a593Smuzhiyun	select RT2X00_LIB_CRYPTO
209*4882a593Smuzhiyun	select RT2X00_LIB_FIRMWARE
210*4882a593Smuzhiyun	select RT2800_LIB
211*4882a593Smuzhiyun	select RT2800_LIB_MMIO
212*4882a593Smuzhiyun	help
213*4882a593Smuzhiyun	  This adds support for Ralink WiSoC devices.
214*4882a593Smuzhiyun	  Supported chips: RT2880, RT3050, RT3052, RT3350, RT3352.
215*4882a593Smuzhiyun
216*4882a593Smuzhiyun	  When compiled as a module, this driver will be called rt2800soc.
217*4882a593Smuzhiyun
218*4882a593Smuzhiyun
219*4882a593Smuzhiyunconfig RT2800_LIB
220*4882a593Smuzhiyun	tristate
221*4882a593Smuzhiyun
222*4882a593Smuzhiyunconfig RT2800_LIB_MMIO
223*4882a593Smuzhiyun	tristate
224*4882a593Smuzhiyun	select RT2X00_LIB_MMIO
225*4882a593Smuzhiyun	select RT2800_LIB
226*4882a593Smuzhiyun
227*4882a593Smuzhiyunconfig RT2X00_LIB_MMIO
228*4882a593Smuzhiyun	tristate
229*4882a593Smuzhiyun
230*4882a593Smuzhiyunconfig RT2X00_LIB_PCI
231*4882a593Smuzhiyun	tristate
232*4882a593Smuzhiyun	select RT2X00_LIB
233*4882a593Smuzhiyun
234*4882a593Smuzhiyunconfig RT2X00_LIB_SOC
235*4882a593Smuzhiyun	tristate
236*4882a593Smuzhiyun	select RT2X00_LIB
237*4882a593Smuzhiyun
238*4882a593Smuzhiyunconfig RT2X00_LIB_USB
239*4882a593Smuzhiyun	tristate
240*4882a593Smuzhiyun	select RT2X00_LIB
241*4882a593Smuzhiyun
242*4882a593Smuzhiyunconfig RT2X00_LIB
243*4882a593Smuzhiyun	tristate
244*4882a593Smuzhiyun
245*4882a593Smuzhiyunconfig RT2X00_LIB_FIRMWARE
246*4882a593Smuzhiyun	bool
247*4882a593Smuzhiyun	select FW_LOADER
248*4882a593Smuzhiyun
249*4882a593Smuzhiyunconfig RT2X00_LIB_CRYPTO
250*4882a593Smuzhiyun	bool
251*4882a593Smuzhiyun
252*4882a593Smuzhiyunconfig RT2X00_LIB_LEDS
253*4882a593Smuzhiyun	bool
254*4882a593Smuzhiyun	default y if (RT2X00_LIB=y && LEDS_CLASS=y) || (RT2X00_LIB=m && LEDS_CLASS!=n)
255*4882a593Smuzhiyun
256*4882a593Smuzhiyunconfig RT2X00_LIB_DEBUGFS
257*4882a593Smuzhiyun	bool "Ralink debugfs support"
258*4882a593Smuzhiyun	depends on RT2X00_LIB && MAC80211_DEBUGFS
259*4882a593Smuzhiyun	help
260*4882a593Smuzhiyun	  Enable creation of debugfs files for the rt2x00 drivers.
261*4882a593Smuzhiyun	  These debugfs files support both reading and writing of the
262*4882a593Smuzhiyun	  most important register types of the rt2x00 hardware.
263*4882a593Smuzhiyun
264*4882a593Smuzhiyunconfig RT2X00_DEBUG
265*4882a593Smuzhiyun	bool "Ralink debug output"
266*4882a593Smuzhiyun	depends on RT2X00_LIB
267*4882a593Smuzhiyun	help
268*4882a593Smuzhiyun	  Enable debugging output for all rt2x00 modules
269*4882a593Smuzhiyun
270*4882a593Smuzhiyunendif
271