armsr: armv8: enable serial console for Renesas platforms
[openwrt/staging/stintel.git] / package / kernel / linux / modules / netdevices.mk
1 #
2 # Copyright (C) 2006-2011 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 NETWORK_DEVICES_MENU:=Network Devices
9
10 define KernelPackage/sis190
11 SUBMENU:=$(NETWORK_DEVICES_MENU)
12 TITLE:=SiS 190 Fast/Gigabit Ethernet support
13 DEPENDS:=@PCI_SUPPORT +kmod-mii
14 KCONFIG:=CONFIG_SIS190
15 FILES:=$(LINUX_DIR)/drivers/net/ethernet/sis/sis190.ko
16 AUTOLOAD:=$(call AutoProbe,sis190)
17 endef
18
19 $(eval $(call KernelPackage,sis190))
20
21
22 define KernelPackage/skge
23 SUBMENU:=$(NETWORK_DEVICES_MENU)
24 TITLE:=SysKonnect Yukon support
25 DEPENDS:=@PCI_SUPPORT
26 KCONFIG:=CONFIG_SKGE \
27 CONFIG_SKGE_DEBUG=n \
28 CONFIG_SKGE_GENESIS=n
29 FILES:=$(LINUX_DIR)/drivers/net/ethernet/marvell/skge.ko
30 AUTOLOAD:=$(call AutoProbe,skge)
31 endef
32
33 $(eval $(call KernelPackage,skge))
34
35
36 define KernelPackage/alx
37 SUBMENU:=$(NETWORK_DEVICES_MENU)
38 TITLE:=Qualcomm Atheros AR816x/AR817x PCI-E Ethernet Network Driver
39 DEPENDS:=@PCI_SUPPORT +kmod-mdio
40 KCONFIG:=CONFIG_ALX
41 FILES:=$(LINUX_DIR)/drivers/net/ethernet/atheros/alx/alx.ko
42 AUTOLOAD:=$(call AutoProbe,alx)
43 endef
44
45 $(eval $(call KernelPackage,alx))
46
47
48 define KernelPackage/atl2
49 SUBMENU:=$(NETWORK_DEVICES_MENU)
50 TITLE:=Atheros L2 Fast Ethernet support
51 DEPENDS:=@PCI_SUPPORT
52 KCONFIG:=CONFIG_ATL2
53 FILES:=$(LINUX_DIR)/drivers/net/ethernet/atheros/atlx/atl2.ko
54 AUTOLOAD:=$(call AutoProbe,atl2)
55 endef
56
57 $(eval $(call KernelPackage,atl2))
58
59
60 define KernelPackage/atl1
61 SUBMENU:=$(NETWORK_DEVICES_MENU)
62 TITLE:=Atheros L1 Gigabit Ethernet support
63 DEPENDS:=@PCI_SUPPORT +kmod-mii
64 KCONFIG:=CONFIG_ATL1
65 FILES:=$(LINUX_DIR)/drivers/net/ethernet/atheros/atlx/atl1.ko
66 AUTOLOAD:=$(call AutoProbe,atl1)
67 endef
68
69 $(eval $(call KernelPackage,atl1))
70
71
72 define KernelPackage/atl1c
73 SUBMENU:=$(NETWORK_DEVICES_MENU)
74 TITLE:=Atheros L1C
75 DEPENDS:=@PCI_SUPPORT
76 KCONFIG:=CONFIG_ATL1C
77 FILES:=$(LINUX_DIR)/drivers/net/ethernet/atheros/atl1c/atl1c.ko
78 AUTOLOAD:=$(call AutoProbe,atl1c)
79 endef
80
81 $(eval $(call KernelPackage,atl1c))
82
83
84 define KernelPackage/atl1e
85 SUBMENU:=$(NETWORK_DEVICES_MENU)
86 TITLE:=Atheros L1E
87 DEPENDS:=@PCI_SUPPORT
88 KCONFIG:=CONFIG_ATL1E
89 FILES:=$(LINUX_DIR)/drivers/net/ethernet/atheros/atl1e/atl1e.ko
90 AUTOLOAD:=$(call AutoProbe,atl1e)
91 endef
92
93 $(eval $(call KernelPackage,atl1e))
94
95
96 define KernelPackage/libphy
97 SUBMENU:=$(NETWORK_DEVICES_MENU)
98 TITLE:=PHY library
99 KCONFIG:=CONFIG_PHYLIB
100 FILES:=$(LINUX_DIR)/drivers/net/phy/libphy.ko
101 AUTOLOAD:=$(call AutoLoad,15,libphy,1)
102 endef
103
104 define KernelPackage/libphy/description
105 PHY library
106 endef
107
108 $(eval $(call KernelPackage,libphy))
109
110
111 define KernelPackage/phylink
112 SUBMENU:=$(NETWORK_DEVICES_MENU)
113 TITLE:=Model for MAC to optional PHY connection
114 DEPENDS:=+kmod-libphy
115 KCONFIG:=CONFIG_PHYLINK
116 FILES:=$(LINUX_DIR)/drivers/net/phy/phylink.ko
117 AUTOLOAD:=$(call AutoLoad,15,phylink,1)
118 endef
119
120 define KernelPackage/phylink/description
121 Model for MAC to optional PHY connection
122 endef
123
124 $(eval $(call KernelPackage,phylink))
125
126
127 define KernelPackage/mii
128 SUBMENU:=$(NETWORK_DEVICES_MENU)
129 TITLE:=MII library
130 KCONFIG:=CONFIG_MII
131 FILES:=$(LINUX_DIR)/drivers/net/mii.ko
132 AUTOLOAD:=$(call AutoLoad,15,mii,1)
133 endef
134
135 define KernelPackage/mii/description
136 MII library
137 endef
138
139 $(eval $(call KernelPackage,mii))
140
141
142 define KernelPackage/mdio-devres
143 SUBMENU:=$(NETWORK_DEVICES_MENU)
144 TITLE:=Supports MDIO device registration
145 DEPENDS:=+kmod-libphy +(TARGET_armsr||TARGET_bcm27xx_bcm2708||TARGET_malta||TARGET_tegra):kmod-of-mdio
146 KCONFIG:=CONFIG_MDIO_DEVRES
147 HIDDEN:=1
148 FILES:=$(LINUX_DIR)/drivers/net/phy/mdio_devres.ko
149 AUTOLOAD:=$(call AutoProbe,mdio-devres)
150 endef
151
152 define KernelPackage/mdio-devres/description
153 Supports MDIO device registration
154 endef
155
156 $(eval $(call KernelPackage,mdio-devres))
157
158
159 define KernelPackage/mdio-gpio
160 SUBMENU:=$(NETWORK_DEVICES_MENU)
161 TITLE:= Supports GPIO lib-based MDIO busses
162 DEPENDS:=+kmod-libphy @GPIO_SUPPORT +(TARGET_armsr||TARGET_bcm27xx_bcm2708||TARGET_malta||TARGET_tegra):kmod-of-mdio
163 KCONFIG:= \
164 CONFIG_MDIO_BITBANG \
165 CONFIG_MDIO_GPIO
166 FILES:= \
167 $(LINUX_DIR)/drivers/net/mdio/mdio-gpio.ko \
168 $(LINUX_DIR)/drivers/net/mdio/mdio-bitbang.ko
169 AUTOLOAD:=$(call AutoProbe,mdio-gpio)
170 endef
171
172 define KernelPackage/mdio-gpio/description
173 Supports GPIO lib-based MDIO busses
174 endef
175
176 $(eval $(call KernelPackage,mdio-gpio))
177
178
179 define KernelPackage/et131x
180 SUBMENU:=$(NETWORK_DEVICES_MENU)
181 TITLE:=Agere ET131x Gigabit Ethernet driver
182 URL:=http://sourceforge.net/projects/et131x
183 FILES:= \
184 $(LINUX_DIR)/drivers/net/ethernet/agere/et131x.ko
185 KCONFIG:= \
186 CONFIG_ET131X \
187 CONFIG_ET131X_DEBUG=n
188 DEPENDS:=@PCI_SUPPORT +kmod-libphy
189 AUTOLOAD:=$(call AutoProbe,et131x)
190 endef
191
192 define KernelPackage/et131x/description
193 This package contains the et131x kernel module
194 endef
195
196 $(eval $(call KernelPackage,et131x))
197
198 define KernelPackage/phy-microchip
199 SUBMENU:=$(NETWORK_DEVICES_MENU)
200 TITLE:=Microchip Ethernet PHY driver
201 KCONFIG:=CONFIG_MICROCHIP_PHY
202 DEPENDS:=+kmod-libphy
203 FILES:=$(LINUX_DIR)/drivers/net/phy/microchip.ko
204 AUTOLOAD:=$(call AutoLoad,18,microchip,1)
205 endef
206
207 define KernelPackage/phy-microchip/description
208 Supports the LAN88XX PHYs.
209 endef
210
211 $(eval $(call KernelPackage,phy-microchip))
212
213
214 define KernelPackage/phylib-broadcom
215 SUBMENU:=$(NETWORK_DEVICES_MENU)
216 TITLE:=Broadcom Ethernet PHY library
217 KCONFIG:=CONFIG_BCM_NET_PHYLIB
218 HIDDEN:=1
219 DEPENDS:=+kmod-libphy
220 FILES:=$(LINUX_DIR)/drivers/net/phy/bcm-phy-lib.ko
221 AUTOLOAD:=$(call AutoLoad,17,bcm-phy-lib)
222 endef
223
224 $(eval $(call KernelPackage,phylib-broadcom))
225
226
227 define KernelPackage/phy-amd
228 SUBMENU:=$(NETWORK_DEVICES_MENU)
229 TITLE:=AMD PHY driver
230 KCONFIG:=CONFIG_AMD_PHY
231 DEPENDS:=+kmod-libphy
232 FILES:=$(LINUX_DIR)/drivers/net/phy/amd.ko
233 AUTOLOAD:=$(call AutoProbe,amd,1)
234 endef
235
236 define KernelPackage/phy-amd/description
237 Currently supports the AMD and Altima PHYs.
238 endef
239
240 $(eval $(call KernelPackage,phy-amd))
241
242
243 define KernelPackage/phy-ax88796b
244 SUBMENU:=$(NETWORK_DEVICES_MENU)
245 TITLE:=Asix PHY driver
246 KCONFIG:=CONFIG_AX88796B_PHY
247 DEPENDS:=+kmod-libphy
248 FILES:=$(LINUX_DIR)/drivers/net/phy/ax88796b.ko
249 AUTOLOAD:=$(call AutoProbe,ax88796b)
250 endef
251
252 define KernelPackage/phy-ax88796b/description
253 Currently supports the Asix Electronics PHY found in the X-Surf 100
254 AX88796B package.
255 endef
256
257 $(eval $(call KernelPackage,phy-ax88796b))
258
259
260 define KernelPackage/phy-broadcom
261 SUBMENU:=$(NETWORK_DEVICES_MENU)
262 TITLE:=Broadcom Ethernet PHY driver
263 KCONFIG:=CONFIG_BROADCOM_PHY
264 DEPENDS:=+kmod-libphy +kmod-phylib-broadcom
265 FILES:=$(LINUX_DIR)/drivers/net/phy/broadcom.ko
266 AUTOLOAD:=$(call AutoLoad,18,broadcom,1)
267 endef
268
269 define KernelPackage/phy-broadcom/description
270 Currently supports the BCM5411, BCM5421, BCM5461, BCM5464, BCM5481,
271 BCM5482 and BCM57780 PHYs.
272 endef
273
274 $(eval $(call KernelPackage,phy-broadcom))
275
276
277 define KernelPackage/phy-bcm84881
278 SUBMENU:=$(NETWORK_DEVICES_MENU)
279 TITLE:=Broadcom BCM84881 PHY driver
280 KCONFIG:=CONFIG_BCM84881_PHY
281 DEPENDS:=+kmod-libphy
282 FILES:=$(LINUX_DIR)/drivers/net/phy/bcm84881.ko
283 AUTOLOAD:=$(call AutoLoad,18,bcm84881,1)
284 endef
285
286 define KernelPackage/phy-bcm84881/description
287 Supports the Broadcom 84881 PHY.
288 endef
289
290 $(eval $(call KernelPackage,phy-bcm84881))
291
292
293 define KernelPackage/phy-marvell
294 SUBMENU:=$(NETWORK_DEVICES_MENU)
295 TITLE:=Marvell Gigabit Ethernet PHY driver
296 KCONFIG:=CONFIG_MARVELL_PHY
297 DEPENDS:=+kmod-libphy
298 FILES:=$(LINUX_DIR)/drivers/net/phy/marvell.ko
299 AUTOLOAD:=$(call AutoLoad,18,marvell)
300 endef
301
302 define KernelPackage/phy-marvell/description
303 Supports Marvell Gigabit Ethernet PHYs:
304 * 88E1101
305 * 88E1112
306 * 88E1111 (incl. Finisar variant)
307 * 88E1118
308 * 88E1121R
309 * 88E1145
310 * 88E1149R
311 * 88E1240
312 * 88E1318S
313 * 88E1116R
314 * 88E1510
315 * 88E1540
316 * 88E1545
317 * 88E3016
318 * 88E6341 family
319 * 88E6390 family
320 * 88E6393 family
321 * 88E1340S
322 * 88E1548P
323 endef
324
325 $(eval $(call KernelPackage,phy-marvell))
326
327 define KernelPackage/phy-marvell-10g
328 SUBMENU:=$(NETWORK_DEVICES_MENU)
329 TITLE:=Marvell 10 Gigabit Ethernet PHY driver
330 KCONFIG:=CONFIG_MARVELL_10G_PHY
331 DEPENDS:=+kmod-libphy
332 FILES:=$(LINUX_DIR)/drivers/net/phy/marvell10g.ko
333 AUTOLOAD:=$(call AutoLoad,18,marvell10g)
334 endef
335
336 define KernelPackage/phy-marvell/description
337 Supports Marvell 10 Gigabit Ethernet PHYs:
338 * 88E2110
339 * 88E2111
340 * 88x3310
341 * 88x3340
342 endef
343
344 $(eval $(call KernelPackage,phy-marvell-10g))
345
346 define KernelPackage/phy-realtek
347 SUBMENU:=$(NETWORK_DEVICES_MENU)
348 TITLE:=Realtek Ethernet PHY driver
349 KCONFIG:=CONFIG_REALTEK_PHY
350 DEPENDS:=+kmod-libphy
351 FILES:=$(LINUX_DIR)/drivers/net/phy/realtek.ko
352 AUTOLOAD:=$(call AutoLoad,18,realtek,1)
353 endef
354
355 define KernelPackage/phy-realtek/description
356 Supports the Realtek 821x PHY.
357 endef
358
359 $(eval $(call KernelPackage,phy-realtek))
360
361
362 define KernelPackage/phy-smsc
363 SUBMENU:=$(NETWORK_DEVICES_MENU)
364 TITLE:=SMSC PHY driver
365 KCONFIG:=CONFIG_SMSC_PHY
366 DEPENDS:=+kmod-libphy +LINUX_6_6:kmod-lib-crc16
367 FILES:=$(LINUX_DIR)/drivers/net/phy/smsc.ko
368 AUTOLOAD:=$(call AutoProbe,smsc)
369 endef
370
371 define KernelPackage/phy-smsc/description
372 Currently supports the LAN83C185, LAN8187 and LAN8700 PHYs
373 endef
374
375 $(eval $(call KernelPackage,phy-smsc))
376
377
378 define KernelPackage/phy-airoha-en8811h
379 SUBMENU:=$(NETWORK_DEVICES_MENU)
380 TITLE:=Airoha EN8811H 2.5G Ethernet PHY
381 DEPENDS:=+airoha-en8811h-firmware +kmod-libphy @!LINUX_5_15
382 KCONFIG:=CONFIG_AIR_EN8811H_PHY
383 FILES:= \
384 $(LINUX_DIR)/drivers/net/phy/air_en8811h.ko
385 AUTOLOAD:=$(call AutoLoad,18,air_en8811h,1)
386 endef
387
388 define KernelPackage/phy-airoha-en8811h/description
389 Kernel modules for Airoha EN8811H 2.5G Ethernet PHY
390 endef
391
392 $(eval $(call KernelPackage,phy-airoha-en8811h))
393
394
395 define KernelPackage/phy-aquantia
396 SUBMENU:=$(NETWORK_DEVICES_MENU)
397 TITLE:=Aquantia Ethernet PHYs
398 DEPENDS:=+kmod-libphy +kmod-hwmon-core +kmod-lib-crc-ccitt
399 KCONFIG:=CONFIG_AQUANTIA_PHY
400 FILES:=$(LINUX_DIR)/drivers/net/phy/aquantia/aquantia.ko
401 AUTOLOAD:=$(call AutoLoad,18,aquantia,1)
402 endef
403
404 define KernelPackage/phy-aquantia/description
405 Kernel modules for Aquantia Ethernet PHYs
406 endef
407
408 $(eval $(call KernelPackage,phy-aquantia))
409
410 define KernelPackage/dsa-tag-dsa
411 SUBMENU:=$(NETWORK_DEVICES_MENU)
412 TITLE:=Marvell DSA type DSA and EDSA taggers
413 KCONFIG:= CONFIG_NET_DSA_TAG_DSA_COMMON \
414 CONFIG_NET_DSA_TAG_DSA \
415 CONFIG_NET_DSA_TAG_EDSA \
416 CONFIG_NET_DSA=y
417 FILES:=$(LINUX_DIR)/net/dsa/tag_dsa.ko
418 AUTOLOAD:=$(call AutoLoad,40,tag_dsa,1)
419 endef
420
421 define KernelPackage/dsa-tag-dsa/description
422 Kernel modules for Marvell DSA and EDSA tagging
423 endef
424
425 $(eval $(call KernelPackage,dsa-tag-dsa))
426
427 define KernelPackage/dsa-mv88e6xxx
428 SUBMENU:=$(NETWORK_DEVICES_MENU)
429 TITLE:=Marvell MV88E6XXX DSA Switch
430 DEPENDS:=+kmod-ptp +kmod-phy-marvell +kmod-dsa-tag-dsa
431 KCONFIG:=CONFIG_NET_DSA_MV88E6XXX \
432 CONFIG_NET_DSA_MV88E6XXX_PTP=y \
433 CONFIG_NET_DSA=y
434 FILES:=$(LINUX_DIR)/drivers/net/dsa/mv88e6xxx/mv88e6xxx.ko
435 AUTOLOAD:=$(call AutoLoad,41,mv88e6xxx,1)
436 endef
437
438 define KernelPackage/dsa-mv88e6xxx/description
439 Kernel modules for MV88E6XXX DSA switches
440 endef
441
442 $(eval $(call KernelPackage,dsa-mv88e6xxx))
443
444
445 define KernelPackage/swconfig
446 SUBMENU:=$(NETWORK_DEVICES_MENU)
447 TITLE:=switch configuration API
448 DEPENDS:=+kmod-libphy
449 KCONFIG:=CONFIG_SWCONFIG
450 FILES:=$(LINUX_DIR)/drivers/net/phy/swconfig.ko
451 AUTOLOAD:=$(call AutoLoad,41,swconfig)
452 endef
453
454 define KernelPackage/swconfig/description
455 Switch configuration API module
456 endef
457
458 $(eval $(call KernelPackage,swconfig))
459
460 define KernelPackage/switch-bcm53xx
461 SUBMENU:=$(NETWORK_DEVICES_MENU)
462 TITLE:=Broadcom bcm53xx switch support
463 DEPENDS:=+kmod-swconfig
464 KCONFIG:=CONFIG_SWCONFIG_B53
465 FILES:=$(LINUX_DIR)/drivers/net/phy/b53/b53_common.ko
466 AUTOLOAD:=$(call AutoLoad,42,b53_common)
467 endef
468
469 define KernelPackage/switch-bcm53xx/description
470 Broadcom bcm53xx switch support
471 endef
472
473 $(eval $(call KernelPackage,switch-bcm53xx))
474
475 define KernelPackage/switch-bcm53xx-mdio
476 SUBMENU:=$(NETWORK_DEVICES_MENU)
477 TITLE:=Broadcom bcm53xx switch MDIO support
478 DEPENDS:=+kmod-switch-bcm53xx
479 KCONFIG:=CONFIG_SWCONFIG_B53_PHY_DRIVER
480 FILES:=$(LINUX_DIR)/drivers/net/phy/b53/b53_mdio.ko
481 AUTOLOAD:=$(call AutoLoad,42,b53_mdio)
482 endef
483
484 define KernelPackage/switch-bcm53xx-mdio/description
485 Broadcom bcm53xx switch MDIO support
486 endef
487
488 $(eval $(call KernelPackage,switch-bcm53xx-mdio))
489
490
491 define KernelPackage/switch-ip17xx
492 SUBMENU:=$(NETWORK_DEVICES_MENU)
493 TITLE:=IC+ IP17XX switch support
494 DEPENDS:=+kmod-swconfig
495 KCONFIG:=CONFIG_IP17XX_PHY
496 FILES:=$(LINUX_DIR)/drivers/net/phy/ip17xx.ko
497 AUTOLOAD:=$(call AutoLoad,42,ip17xx)
498 endef
499
500 define KernelPackage/switch-ip17xx/description
501 IC+ IP175C/IP178C switch support
502 endef
503
504 $(eval $(call KernelPackage,switch-ip17xx))
505
506
507 define KernelPackage/switch-rtl8306
508 SUBMENU:=$(NETWORK_DEVICES_MENU)
509 TITLE:=Realtek RTL8306S switch support
510 DEPENDS:=+kmod-swconfig
511 KCONFIG:=CONFIG_RTL8306_PHY
512 FILES:=$(LINUX_DIR)/drivers/net/phy/rtl8306.ko
513 AUTOLOAD:=$(call AutoLoad,43,rtl8306)
514 endef
515
516 define KernelPackage/switch-rtl8306/description
517 Realtek RTL8306S switch support
518 endef
519
520 $(eval $(call KernelPackage,switch-rtl8306))
521
522
523 define KernelPackage/switch-rtl8366-smi
524 SUBMENU:=$(NETWORK_DEVICES_MENU)
525 TITLE:=Realtek RTL8366 SMI switch interface support
526 DEPENDS:=@GPIO_SUPPORT +kmod-swconfig +(TARGET_armsr||TARGET_bcm27xx_bcm2708||TARGET_malta||TARGET_tegra):kmod-of-mdio
527 KCONFIG:=CONFIG_RTL8366_SMI
528 FILES:=$(LINUX_DIR)/drivers/net/phy/rtl8366_smi.ko
529 AUTOLOAD:=$(call AutoLoad,42,rtl8366_smi,1)
530 endef
531
532 define KernelPackage/switch-rtl8366-smi/description
533 Realtek RTL8366 series SMI switch interface support
534 endef
535
536 $(eval $(call KernelPackage,switch-rtl8366-smi))
537
538
539 define KernelPackage/switch-rtl8366rb
540 SUBMENU:=$(NETWORK_DEVICES_MENU)
541 TITLE:=Realtek RTL8366RB switch support
542 DEPENDS:=+kmod-switch-rtl8366-smi
543 KCONFIG:=CONFIG_RTL8366RB_PHY
544 FILES:=$(LINUX_DIR)/drivers/net/phy/rtl8366rb.ko
545 AUTOLOAD:=$(call AutoLoad,43,rtl8366rb,1)
546 endef
547
548 define KernelPackage/switch-rtl8366rb/description
549 Realtek RTL8366RB switch support
550 endef
551
552 $(eval $(call KernelPackage,switch-rtl8366rb))
553
554
555 define KernelPackage/switch-rtl8366s
556 SUBMENU:=$(NETWORK_DEVICES_MENU)
557 TITLE:=Realtek RTL8366S switch support
558 DEPENDS:=+kmod-switch-rtl8366-smi
559 KCONFIG:=CONFIG_RTL8366S_PHY
560 FILES:=$(LINUX_DIR)/drivers/net/phy/rtl8366s.ko
561 AUTOLOAD:=$(call AutoLoad,43,rtl8366s,1)
562 endef
563
564 define KernelPackage/switch-rtl8366s/description
565 Realtek RTL8366S switch support
566 endef
567
568 $(eval $(call KernelPackage,switch-rtl8366s))
569
570
571 define KernelPackage/switch-rtl8367
572 SUBMENU:=$(NETWORK_DEVICES_MENU)
573 TITLE:=Realtek RTL8367 switch support
574 DEPENDS:=+kmod-switch-rtl8366-smi
575 KCONFIG:=CONFIG_RTL8367_PHY
576 FILES:=$(LINUX_DIR)/drivers/net/phy/rtl8367.ko
577 AUTOLOAD:=$(call AutoLoad,43,rtl8367,1)
578 endef
579
580 define KernelPackage/switch-rtl8367/description
581 Realtek RTL8367 switch support
582 endef
583
584 $(eval $(call KernelPackage,switch-rtl8367))
585
586
587 define KernelPackage/switch-rtl8367b
588 SUBMENU:=$(NETWORK_DEVICES_MENU)
589 TITLE:=Realtek RTL8367R/B switch support
590 DEPENDS:=+kmod-switch-rtl8366-smi
591 KCONFIG:=CONFIG_RTL8367B_PHY
592 FILES:=$(LINUX_DIR)/drivers/net/phy/rtl8367b.ko
593 AUTOLOAD:=$(call AutoLoad,43,rtl8367b,1)
594 endef
595
596 define KernelPackage/switch-rtl8367b/description
597 Realtek RTL8367R/B switch support
598 endef
599
600 $(eval $(call KernelPackage,switch-rtl8367b))
601
602
603 define KernelPackage/switch-ar8xxx
604 SUBMENU:=$(NETWORK_DEVICES_MENU)
605 TITLE:=Atheros AR8216/8327 switch support
606 DEPENDS:=+kmod-swconfig +kmod-mdio-devres
607 KCONFIG:=CONFIG_AR8216_PHY
608 FILES:=$(LINUX_DIR)/drivers/net/phy/ar8xxx.ko
609 AUTOLOAD:=$(call AutoLoad,43,ar8xxx,1)
610 endef
611
612 define KernelPackage/switch-ar8xxx/description
613 Atheros AR8216/8327 switch support
614 endef
615
616 $(eval $(call KernelPackage,switch-ar8xxx))
617
618
619 define KernelPackage/natsemi
620 SUBMENU:=$(NETWORK_DEVICES_MENU)
621 TITLE:=National Semiconductor DP8381x series
622 DEPENDS:=@PCI_SUPPORT
623 KCONFIG:=CONFIG_NATSEMI
624 FILES:=$(LINUX_DIR)/drivers/net/ethernet/natsemi/natsemi.ko
625 AUTOLOAD:=$(call AutoLoad,20,natsemi)
626 endef
627
628 define KernelPackage/natsemi/description
629 Kernel modules for National Semiconductor DP8381x series PCI Ethernet
630 adapters.
631 endef
632
633 $(eval $(call KernelPackage,natsemi))
634
635
636 define KernelPackage/r6040
637 SUBMENU:=$(NETWORK_DEVICES_MENU)
638 TITLE:=RDC Fast-Ethernet support
639 DEPENDS:=@PCI_SUPPORT +kmod-libphy
640 KCONFIG:=CONFIG_R6040 \
641 CONFIG_R6040_NAPI=y
642 FILES:=$(LINUX_DIR)/drivers/net/ethernet/rdc/r6040.ko
643 AUTOLOAD:=$(call AutoProbe,r6040)
644 endef
645
646 define KernelPackage/r6040/description
647 Kernel modules for RDC Fast-Ethernet adapters.
648 endef
649
650 $(eval $(call KernelPackage,r6040))
651
652
653 define KernelPackage/niu
654 SUBMENU:=$(NETWORK_DEVICES_MENU)
655 TITLE:=Sun Neptune 10Gbit Ethernet support
656 DEPENDS:=@PCI_SUPPORT
657 KCONFIG:=CONFIG_NIU
658 FILES:=$(LINUX_DIR)/drivers/net/ethernet/sun/niu.ko
659 AUTOLOAD:=$(call AutoProbe,niu)
660 endef
661
662 define KernelPackage/niu/description
663 This enables support for cards based upon Sun's Neptune chipset.
664 endef
665
666 $(eval $(call KernelPackage,niu))
667
668
669 define KernelPackage/sis900
670 SUBMENU:=$(NETWORK_DEVICES_MENU)
671 TITLE:=SiS 900 Ethernet support
672 DEPENDS:=@PCI_SUPPORT +kmod-mii
673 KCONFIG:=CONFIG_SIS900
674 FILES:=$(LINUX_DIR)/drivers/net/ethernet/sis/sis900.ko
675 AUTOLOAD:=$(call AutoProbe,sis900)
676 endef
677
678 define KernelPackage/sis900/description
679 Kernel modules for Sis 900 Ethernet adapters.
680 endef
681
682 $(eval $(call KernelPackage,sis900))
683
684
685 define KernelPackage/sky2
686 SUBMENU:=$(NETWORK_DEVICES_MENU)
687 TITLE:=SysKonnect Yukon2 support
688 DEPENDS:=@PCI_SUPPORT
689 KCONFIG:=CONFIG_SKY2
690 FILES:=$(LINUX_DIR)/drivers/net/ethernet/marvell/sky2.ko
691 AUTOLOAD:=$(call AutoProbe,sky2)
692 endef
693
694 define KernelPackage/sky2/description
695 This driver supports Gigabit Ethernet adapters based on the
696 Marvell Yukon 2 chipset:
697 Marvell 88E8021/88E8022/88E8035/88E8036/88E8038/88E8050/88E8052/
698 88E8053/88E8055/88E8061/88E8062, SysKonnect SK-9E21D/SK-9S21
699
700 There is companion driver for the older Marvell Yukon and
701 Genesis based adapters: skge.
702 endef
703
704 $(eval $(call KernelPackage,sky2))
705
706
707 define KernelPackage/via-rhine
708 SUBMENU:=$(NETWORK_DEVICES_MENU)
709 TITLE:=Via Rhine ethernet support
710 DEPENDS:=@PCI_SUPPORT +kmod-mii
711 KCONFIG:=CONFIG_VIA_RHINE \
712 CONFIG_VIA_RHINE_MMIO=y
713 FILES:=$(LINUX_DIR)/drivers/net/ethernet/via/via-rhine.ko
714 AUTOLOAD:=$(call AutoProbe,via-rhine)
715 endef
716
717 define KernelPackage/via-rhine/description
718 Kernel modules for Via Rhine Ethernet chipsets
719 endef
720
721 $(eval $(call KernelPackage,via-rhine))
722
723
724 define KernelPackage/via-velocity
725 SUBMENU:=$(NETWORK_DEVICES_MENU)
726 TITLE:=VIA Velocity Gigabit Ethernet Adapter kernel support
727 DEPENDS:=@PCI_SUPPORT +kmod-lib-crc-ccitt
728 KCONFIG:=CONFIG_VIA_VELOCITY
729 FILES:=$(LINUX_DIR)/drivers/net/ethernet/via/via-velocity.ko
730 AUTOLOAD:=$(call AutoProbe,via-velocity)
731 endef
732
733 define KernelPackage/via-velocity/description
734 Kernel modules for VIA Velocity Gigabit Ethernet chipsets
735 endef
736
737 $(eval $(call KernelPackage,via-velocity))
738
739
740 define KernelPackage/8139too
741 SUBMENU:=$(NETWORK_DEVICES_MENU)
742 TITLE:=RealTek RTL-8139 PCI Fast Ethernet Adapter kernel support
743 DEPENDS:=@PCI_SUPPORT +kmod-mii
744 KCONFIG:=CONFIG_8139TOO \
745 CONFIG_8139TOO_PIO=y \
746 CONFIG_8139TOO_TUNE_TWISTER=n \
747 CONFIG_8139TOO_8129=n \
748 CONFIG_8139_OLD_RX_RESET=n
749 FILES:=$(LINUX_DIR)/drivers/net/ethernet/realtek/8139too.ko
750 AUTOLOAD:=$(call AutoProbe,8139too)
751 endef
752
753 define KernelPackage/8139too/description
754 Kernel modules for RealTek RTL-8139 PCI Fast Ethernet adapters
755 endef
756
757 $(eval $(call KernelPackage,8139too))
758
759
760 define KernelPackage/8139cp
761 SUBMENU:=$(NETWORK_DEVICES_MENU)
762 TITLE:=RealTek RTL-8139C+ PCI Fast Ethernet Adapter kernel support
763 DEPENDS:=@PCI_SUPPORT +kmod-mii
764 KCONFIG:=CONFIG_8139CP
765 FILES:=$(LINUX_DIR)/drivers/net/ethernet/realtek/8139cp.ko
766 AUTOLOAD:=$(call AutoProbe,8139cp)
767 endef
768
769 define KernelPackage/8139cp/description
770 Kernel module for RealTek RTL-8139C+ PCI Fast Ethernet adapters
771 endef
772
773 $(eval $(call KernelPackage,8139cp))
774
775
776 define KernelPackage/r8169
777 SUBMENU:=$(NETWORK_DEVICES_MENU)
778 TITLE:=RealTek RTL-8169 PCI Gigabit Ethernet Adapter kernel support
779 DEPENDS:=@PCI_SUPPORT +kmod-mii +r8169-firmware +kmod-phy-realtek +kmod-mdio-devres
780 KCONFIG:= \
781 CONFIG_R8169 \
782 CONFIG_R8169_NAPI=y \
783 CONFIG_R8169_VLAN=n
784 FILES:=$(LINUX_DIR)/drivers/net/ethernet/realtek/r8169.ko
785 AUTOLOAD:=$(call AutoProbe,r8169)
786 endef
787
788 define KernelPackage/r8169/description
789 Kernel modules for RealTek RTL-8169 PCI Gigabit Ethernet adapters
790 endef
791
792 $(eval $(call KernelPackage,r8169))
793
794
795 define KernelPackage/ne2k-pci
796 SUBMENU:=$(NETWORK_DEVICES_MENU)
797 TITLE:=ne2k-pci Ethernet Adapter kernel support
798 DEPENDS:=@PCI_SUPPORT
799 KCONFIG:=CONFIG_NE2K_PCI
800 FILES:= \
801 $(LINUX_DIR)/drivers/net/ethernet/8390/ne2k-pci.ko \
802 $(LINUX_DIR)/drivers/net/ethernet/8390/8390.ko
803 AUTOLOAD:=$(call AutoProbe,8390 ne2k-pci)
804 endef
805
806 define KernelPackage/ne2k-pci/description
807 Kernel modules for NE2000 PCI Ethernet Adapter kernel
808 endef
809
810 $(eval $(call KernelPackage,ne2k-pci))
811
812
813 define KernelPackage/e100
814 SUBMENU:=$(NETWORK_DEVICES_MENU)
815 TITLE:=Intel(R) PRO/100+ cards kernel support
816 DEPENDS:=@PCI_SUPPORT +kmod-mii +e100-firmware
817 KCONFIG:=CONFIG_E100
818 FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/e100.ko
819 AUTOLOAD:=$(call AutoProbe,e100)
820 endef
821
822 define KernelPackage/e100/description
823 Kernel modules for Intel(R) PRO/100+ Ethernet adapters
824 endef
825
826 $(eval $(call KernelPackage,e100))
827
828
829 define KernelPackage/e1000
830 SUBMENU:=$(NETWORK_DEVICES_MENU)
831 TITLE:=Intel(R) PRO/1000 PCI cards kernel support
832 DEPENDS:=@PCI_SUPPORT
833 KCONFIG:=CONFIG_E1000 \
834 CONFIG_E1000_DISABLE_PACKET_SPLIT=n \
835 CONFIG_E1000_NAPI=y
836 FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/e1000/e1000.ko
837 AUTOLOAD:=$(call AutoLoad,35,e1000)
838 endef
839
840 define KernelPackage/e1000/description
841 Kernel modules for Intel(R) PRO/1000 PCI Ethernet adapters.
842 endef
843
844 $(eval $(call KernelPackage,e1000))
845
846
847 define KernelPackage/e1000e
848 SUBMENU:=$(NETWORK_DEVICES_MENU)
849 TITLE:=Intel(R) PRO/1000 PCIe cards kernel support
850 DEPENDS:=@PCIE_SUPPORT +kmod-ptp
851 KCONFIG:=CONFIG_E1000E
852 FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/e1000e/e1000e.ko
853 AUTOLOAD:=$(call AutoProbe,e1000e)
854 MODPARAMS.e1000e:= \
855 IntMode=1 \
856 InterruptThrottleRate=4,4,4,4,4,4,4,4
857 endef
858
859 define KernelPackage/e1000e/description
860 Kernel modules for Intel(R) PRO/1000 PCIe Ethernet adapters.
861 endef
862
863 $(eval $(call KernelPackage,e1000e))
864
865
866 define KernelPackage/igb
867 SUBMENU:=$(NETWORK_DEVICES_MENU)
868 TITLE:=Intel(R) 82575/82576 PCI-Express Gigabit Ethernet support
869 DEPENDS:=@PCI_SUPPORT +kmod-i2c-core +kmod-i2c-algo-bit +kmod-ptp +kmod-hwmon-core
870 KCONFIG:=CONFIG_IGB \
871 CONFIG_IGB_HWMON=y \
872 CONFIG_IGB_DCA=n
873 FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/igb/igb.ko
874 AUTOLOAD:=$(call AutoLoad,35,igb,1)
875 endef
876
877 define KernelPackage/igb/description
878 Kernel modules for Intel(R) 82575/82576 PCI-Express Gigabit Ethernet adapters.
879 endef
880
881 $(eval $(call KernelPackage,igb))
882
883
884 define KernelPackage/igbvf
885 SUBMENU:=$(NETWORK_DEVICES_MENU)
886 TITLE:=Intel(R) 82576 Virtual Function Ethernet support
887 DEPENDS:=@PCI_SUPPORT @TARGET_x86 +kmod-i2c-core +kmod-i2c-algo-bit +kmod-ptp
888 KCONFIG:=CONFIG_IGBVF \
889 CONFIG_IGB_HWMON=y \
890 CONFIG_IGB_DCA=n
891 FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/igbvf/igbvf.ko
892 AUTOLOAD:=$(call AutoLoad,35,igbvf)
893 endef
894
895 define KernelPackage/igbvf/description
896 Kernel modules for Intel(R) 82576 Virtual Function Ethernet adapters.
897 endef
898
899 $(eval $(call KernelPackage,igbvf))
900
901
902 define KernelPackage/ixgbe
903 SUBMENU:=$(NETWORK_DEVICES_MENU)
904 TITLE:=Intel(R) 82598/82599 PCI-Express 10 Gigabit Ethernet support
905 DEPENDS:=@PCI_SUPPORT +kmod-mdio +kmod-ptp +kmod-hwmon-core +kmod-libphy +kmod-mdio-devres
906 KCONFIG:=CONFIG_IXGBE \
907 CONFIG_IXGBE_VXLAN=n \
908 CONFIG_IXGBE_HWMON=y \
909 CONFIG_IXGBE_DCA=n
910 FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/ixgbe/ixgbe.ko
911 AUTOLOAD:=$(call AutoLoad,35,ixgbe)
912 endef
913
914 define KernelPackage/ixgbe/description
915 Kernel modules for Intel(R) 82598/82599 PCI-Express 10 Gigabit Ethernet adapters.
916 endef
917
918 $(eval $(call KernelPackage,ixgbe))
919
920
921 define KernelPackage/ixgbevf
922 SUBMENU:=$(NETWORK_DEVICES_MENU)
923 TITLE:=Intel(R) 82599 Virtual Function Ethernet support
924 DEPENDS:=@PCI_SUPPORT +kmod-ixgbe
925 KCONFIG:=CONFIG_IXGBEVF \
926 CONFIG_IXGBE_VXLAN=n \
927 CONFIG_IXGBE_HWMON=y \
928 CONFIG_IXGBE_DCA=n
929 FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/ixgbevf/ixgbevf.ko
930 AUTOLOAD:=$(call AutoLoad,35,ixgbevf)
931 endef
932
933 define KernelPackage/ixgbevf/description
934 Kernel modules for Intel(R) 82599 Virtual Function Ethernet adapters.
935 endef
936
937 $(eval $(call KernelPackage,ixgbevf))
938
939
940 define KernelPackage/i40e
941 SUBMENU:=$(NETWORK_DEVICES_MENU)
942 TITLE:=Intel(R) Ethernet Controller XL710 Family support
943 DEPENDS:=@PCI_SUPPORT +kmod-mdio +kmod-ptp +kmod-hwmon-core +kmod-libphy
944 KCONFIG:=CONFIG_I40E \
945 CONFIG_I40E_VXLAN=n \
946 CONFIG_I40E_HWMON=y \
947 CONFIG_I40E_DCA=n
948 FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/i40e/i40e.ko
949 AUTOLOAD:=$(call AutoProbe,i40e)
950 endef
951
952 define KernelPackage/i40e/description
953 Kernel modules for Intel(R) Ethernet Controller XL710 Family 40 Gigabit Ethernet adapters.
954 endef
955
956 $(eval $(call KernelPackage,i40e))
957
958
959 define KernelPackage/iavf
960 SUBMENU:=$(NETWORK_DEVICES_MENU)
961 TITLE:=Intel(R) Ethernet Adaptive Virtual Function support
962 DEPENDS:=@PCI_SUPPORT
963 KCONFIG:= \
964 CONFIG_I40EVF \
965 CONFIG_IAVF
966 FILES:= \
967 $(LINUX_DIR)/drivers/net/ethernet/intel/iavf/iavf.ko
968 AUTOLOAD:=$(call AutoProbe,i40evf iavf)
969 AUTOLOAD:=$(call AutoProbe,iavf)
970 endef
971
972 define KernelPackage/iavf/description
973 Kernel modules for Intel XL710,
974 X710, X722, XXV710, and all devices advertising support for
975 Intel Ethernet Adaptive Virtual Function devices.
976 endef
977
978 $(eval $(call KernelPackage,iavf))
979
980
981 define KernelPackage/b44
982 TITLE:=Broadcom 44xx driver
983 KCONFIG:=CONFIG_B44
984 DEPENDS:=@PCI_SUPPORT @!TARGET_bcm47xx_mips74k +!TARGET_bcm47xx:kmod-ssb +kmod-mii +kmod-libphy
985 SUBMENU:=$(NETWORK_DEVICES_MENU)
986 FILES:=$(LINUX_DIR)/drivers/net/ethernet/broadcom/b44.ko
987 AUTOLOAD:=$(call AutoLoad,19,b44,1)
988 endef
989
990 define KernelPackage/b44/description
991 Kernel modules for Broadcom 44xx Ethernet adapters.
992 endef
993
994 $(eval $(call KernelPackage,b44))
995
996
997 define KernelPackage/3c59x
998 SUBMENU:=$(NETWORK_DEVICES_MENU)
999 TITLE:=3Com 3c590/3c900 series (592/595/597) Vortex/Boomerang
1000 DEPENDS:=@PCI_SUPPORT +kmod-mii
1001 KCONFIG:=CONFIG_VORTEX
1002 FILES:=$(LINUX_DIR)/drivers/net/ethernet/3com/3c59x.ko
1003 AUTOLOAD:=$(call AutoProbe,3c59x)
1004 endef
1005
1006 define KernelPackage/3c59x/description
1007 This option enables driver support for a large number of 10mbps and
1008 10/100mbps EISA, PCI and PCMCIA 3Com Ethernet adapters:
1009 - "Vortex" (Fast EtherLink 3c590/3c592/3c595/3c597) EISA and PCI
1010 - "Boomerang" (EtherLink XL 3c900 or 3c905) PCI
1011 - "Cyclone" (3c540/3c900/3c905/3c980/3c575/3c656) PCI and Cardbus
1012 - "Tornado" (3c905) PCI
1013 - "Hurricane" (3c555/3cSOHO) PCI
1014 endef
1015
1016 $(eval $(call KernelPackage,3c59x))
1017
1018
1019 define KernelPackage/pcnet32
1020 SUBMENU:=$(NETWORK_DEVICES_MENU)
1021 TITLE:=AMD PCnet32 PCI support
1022 DEPENDS:=@(PCI_SUPPORT||TARGET_malta) +kmod-mii
1023 KCONFIG:=CONFIG_PCNET32
1024 FILES:=$(LINUX_DIR)/drivers/net/ethernet/amd/pcnet32.ko
1025 AUTOLOAD:=$(call AutoProbe,pcnet32)
1026 endef
1027
1028 define KernelPackage/pcnet32/description
1029 Kernel modules for AMD PCnet32 Ethernet adapters
1030 endef
1031
1032 $(eval $(call KernelPackage,pcnet32))
1033
1034
1035 define KernelPackage/tg3
1036 TITLE:=Broadcom Tigon3 Gigabit Ethernet
1037 KCONFIG:=CONFIG_TIGON3 \
1038 CONFIG_TIGON3_HWMON=n
1039 DEPENDS:=@PCI_SUPPORT +!TARGET_bcm47xx:kmod-libphy +kmod-ptp
1040 SUBMENU:=$(NETWORK_DEVICES_MENU)
1041 FILES:=$(LINUX_DIR)/drivers/net/ethernet/broadcom/tg3.ko
1042 AUTOLOAD:=$(call AutoLoad,19,tg3,1)
1043 endef
1044
1045 define KernelPackage/tg3/description
1046 Kernel modules for Broadcom Tigon3 Gigabit Ethernet adapters
1047 endef
1048
1049 $(eval $(call KernelPackage,tg3))
1050
1051
1052 define KernelPackage/hfcpci
1053 TITLE:=HFC PCI cards (single port) support for mISDN
1054 KCONFIG:=CONFIG_MISDN_HFCPCI
1055 DEPENDS:=@PCI_SUPPORT +kmod-misdn
1056 SUBMENU:=$(NETWORK_DEVICES_MENU)
1057 FILES:=$(LINUX_DIR)/drivers/isdn/hardware/mISDN/hfcpci.ko
1058 AUTOLOAD:=$(call AutoLoad,31,hfcpci)
1059 endef
1060
1061 define KernelPackage/hfcpci/description
1062 Kernel modules for Cologne AG's HFC pci cards (single port)
1063 using the mISDN V2 stack
1064 endef
1065
1066 $(eval $(call KernelPackage,hfcpci))
1067
1068
1069 define KernelPackage/hfcmulti
1070 TITLE:=HFC multiport cards (HFC-4S/8S/E1) support for mISDN
1071 KCONFIG:=CONFIG_MISDN_HFCMULTI
1072 DEPENDS:=@PCI_SUPPORT +kmod-misdn
1073 SUBMENU:=$(NETWORK_DEVICES_MENU)
1074 FILES:=$(LINUX_DIR)/drivers/isdn/hardware/mISDN/hfcmulti.ko
1075 AUTOLOAD:=$(call AutoLoad,31,hfcmulti)
1076 endef
1077
1078 define KernelPackage/hfcmulti/description
1079 Kernel modules for Cologne AG's HFC multiport cards (HFC-4S/8S/E1)
1080 using the mISDN V2 stack
1081 endef
1082
1083 $(eval $(call KernelPackage,hfcmulti))
1084
1085
1086 define KernelPackage/macvlan
1087 SUBMENU:=$(NETWORK_DEVICES_MENU)
1088 TITLE:=MAC-VLAN support
1089 KCONFIG:=CONFIG_MACVLAN
1090 FILES:=$(LINUX_DIR)/drivers/net/macvlan.ko
1091 AUTOLOAD:=$(call AutoProbe,macvlan)
1092 endef
1093
1094 define KernelPackage/macvlan/description
1095 A kernel module which allows one to create virtual interfaces that
1096 map packets to or from specific MAC addresses to a particular interface
1097 endef
1098
1099 $(eval $(call KernelPackage,macvlan))
1100
1101
1102 define KernelPackage/ipvlan
1103 SUBMENU:=$(NETWORK_DEVICES_MENU)
1104 TITLE:=IP-VLAN support
1105 KCONFIG:=CONFIG_IPVLAN
1106 FILES:=$(LINUX_DIR)/drivers/net/ipvlan/ipvlan.ko
1107 AUTOLOAD:=$(call AutoProbe,ipvlan)
1108 endef
1109
1110 define KernelPackage/ipvlan/description
1111 A kernel module which allows one to create virtual interfaces that
1112 map packets to or from specific IP addresses to a particular interface
1113 endef
1114
1115 $(eval $(call KernelPackage,ipvlan))
1116
1117
1118 define KernelPackage/tulip
1119 TITLE:=Tulip family network device support
1120 DEPENDS:=@PCI_SUPPORT +kmod-mii
1121 SUBMENU:=$(NETWORK_DEVICES_MENU)
1122 KCONFIG:= \
1123 CONFIG_NET_TULIP=y \
1124 CONFIG_DE2104X \
1125 CONFIG_DE2104X_DSL=0 \
1126 CONFIG_TULIP \
1127 CONFIG_TULIP_MWI=y \
1128 CONFIG_TULIP_MMIO=y \
1129 CONFIG_TULIP_NAPI=y \
1130 CONFIG_TULIP_NAPI_HW_MITIGATION=y \
1131 CONFIG_DE4X5=n \
1132 CONFIG_WINBOND_840 \
1133 CONFIG_DM9102 \
1134 CONFIG_ULI526X
1135 FILES:= \
1136 $(LINUX_DIR)/drivers/net/ethernet/dec/tulip/tulip.ko \
1137 $(LINUX_DIR)/drivers/net/ethernet/dec/tulip/de2104x.ko \
1138 $(LINUX_DIR)/drivers/net/ethernet/dec/tulip/dmfe.ko \
1139 $(LINUX_DIR)/drivers/net/ethernet/dec/tulip/uli526x.ko \
1140 $(LINUX_DIR)/drivers/net/ethernet/dec/tulip/winbond-840.ko
1141 AUTOLOAD:=$(call AutoProbe,tulip)
1142 endef
1143
1144 define KernelPackage/tulip/description
1145 Kernel modules for the Tulip family of network cards,
1146 including DECchip Tulip, DIGITAL EtherWORKS, Winbond W89c840,
1147 Davicom DM910x/DM980x and ULi M526x controller support.
1148 endef
1149
1150 $(eval $(call KernelPackage,tulip))
1151
1152
1153 define KernelPackage/solos-pci
1154 SUBMENU:=$(NETWORK_DEVICES_MENU)
1155 TITLE:=Solos ADSL2+ multiport modem
1156 DEPENDS:=@PCI_SUPPORT +kmod-atm
1157 KCONFIG:=CONFIG_ATM_SOLOS
1158 FILES:=$(LINUX_DIR)/drivers/atm/solos-pci.ko
1159 AUTOLOAD:=$(call AutoProbe,solos-pci)
1160 endef
1161
1162 define KernelPackage/solos-pci/description
1163 Kernel module for Traverse Technologies' Solos PCI cards
1164 and Geos ADSL2+ x86 motherboard
1165 endef
1166
1167 $(eval $(call KernelPackage,solos-pci))
1168
1169
1170 define KernelPackage/dummy
1171 SUBMENU:=$(NETWORK_DEVICES_MENU)
1172 TITLE:=Dummy network device
1173 KCONFIG:=CONFIG_DUMMY
1174 FILES:=$(LINUX_DIR)/drivers/net/dummy.ko
1175 AUTOLOAD:=$(call AutoLoad,34,dummy)
1176 endef
1177
1178 define KernelPackage/dummy/description
1179 The dummy network device
1180 endef
1181
1182 $(eval $(call KernelPackage,dummy))
1183
1184
1185 define KernelPackage/ifb
1186 SUBMENU:=$(NETWORK_DEVICES_MENU)
1187 TITLE:=Intermediate Functional Block support
1188 KCONFIG:= \
1189 CONFIG_IFB \
1190 CONFIG_NET_CLS=y
1191 FILES:=$(LINUX_DIR)/drivers/net/ifb.ko
1192 AUTOLOAD:=$(call AutoLoad,34,ifb)
1193 MODPARAMS.ifb:=numifbs=0
1194 endef
1195
1196 define KernelPackage/ifb/description
1197 The Intermediate Functional Block
1198 endef
1199
1200 $(eval $(call KernelPackage,ifb))
1201
1202
1203 define KernelPackage/dm9000
1204 SUBMENU:=$(NETWORK_DEVICES_MENU)
1205 TITLE:=Davicom 9000 Ethernet support
1206 DEPENDS:=+kmod-mii
1207 KCONFIG:=CONFIG_DM9000 \
1208 CONFIG_DM9000_DEBUGLEVEL=4 \
1209 CONFIG_DM9000_FORCE_SIMPLE_PHY_POLL=y
1210 FILES:=$(LINUX_DIR)/drivers/net/ethernet/davicom/dm9000.ko
1211 AUTOLOAD:=$(call AutoLoad,34,dm9000)
1212 endef
1213
1214 define KernelPackage/dm9000/description
1215 Kernel driver for Davicom 9000 Ethernet adapters.
1216 endef
1217
1218 $(eval $(call KernelPackage,dm9000))
1219
1220
1221 define KernelPackage/forcedeth
1222 SUBMENU:=$(NETWORK_DEVICES_MENU)
1223 TITLE:=nForce Ethernet support
1224 DEPENDS:=@PCI_SUPPORT
1225 KCONFIG:=CONFIG_FORCEDETH
1226 FILES:=$(LINUX_DIR)/drivers/net/ethernet/nvidia/forcedeth.ko
1227 AUTOLOAD:=$(call AutoProbe,forcedeth)
1228 endef
1229
1230 define KernelPackage/forcedeth/description
1231 Kernel driver for Nvidia Ethernet support
1232 endef
1233
1234 $(eval $(call KernelPackage,forcedeth))
1235
1236 define KernelPackage/fixed-phy
1237 SUBMENU:=$(NETWORK_DEVICES_MENU)
1238 TITLE:=MDIO Bus/PHY emulation with fixed speed/link PHYs
1239 DEPENDS:=+kmod-libphy
1240 KCONFIG:=CONFIG_FIXED_PHY
1241 FILES:=$(LINUX_DIR)/drivers/net/phy/fixed_phy.ko
1242 AUTOLOAD:=$(call AutoProbe,fixed_phy)
1243 endef
1244
1245 define KernelPackage/fixed-phy/description
1246 Kernel driver for "fixed" MDIO Bus to cover the boards
1247 and devices that use PHYs that are not connected to the real MDIO bus.
1248 endef
1249
1250 $(eval $(call KernelPackage,fixed-phy))
1251
1252 define KernelPackage/of-mdio
1253 SUBMENU:=$(NETWORK_DEVICES_MENU)
1254 TITLE:=OpenFirmware MDIO support
1255 DEPENDS:=+kmod-libphy +kmod-fixed-phy @!TARGET_x86
1256 KCONFIG:=CONFIG_OF_MDIO
1257 FILES:= \
1258 $(LINUX_DIR)/drivers/net/mdio/of_mdio.ko \
1259 $(LINUX_DIR)/drivers/net/mdio/fwnode_mdio.ko
1260 AUTOLOAD:=$(call AutoLoad,41,of_mdio)
1261 endef
1262
1263 define KernelPackage/of-mdio/description
1264 Kernel driver for OpenFirmware MDIO support
1265 endef
1266
1267 $(eval $(call KernelPackage,of-mdio))
1268
1269
1270 define KernelPackage/vmxnet3
1271 SUBMENU:=$(NETWORK_DEVICES_MENU)
1272 TITLE:=VMware VMXNET3 ethernet driver
1273 DEPENDS:=@PCI_SUPPORT
1274 KCONFIG:=CONFIG_VMXNET3
1275 FILES:=$(LINUX_DIR)/drivers/net/vmxnet3/vmxnet3.ko
1276 AUTOLOAD:=$(call AutoLoad,35,vmxnet3)
1277 endef
1278
1279 define KernelPackage/vmxnet3/description
1280 Kernel modules for VMware VMXNET3 ethernet adapters.
1281 endef
1282
1283 $(eval $(call KernelPackage,vmxnet3))
1284
1285
1286 define KernelPackage/spi-ks8995
1287 SUBMENU:=$(NETWORK_DEVICES_MENU)
1288 TITLE:=Micrel/Kendin KS8995 Ethernet switch control
1289 FILES:=$(LINUX_DIR)/drivers/net/phy/spi_ks8995.ko
1290 KCONFIG:=CONFIG_MICREL_KS8995MA \
1291 CONFIG_SPI=y \
1292 CONFIG_SPI_MASTER=y
1293 AUTOLOAD:=$(call AutoLoad,50,spi_ks8995)
1294 endef
1295
1296 define KernelPackage/spi-ks8995/description
1297 Kernel module for Micrel/Kendin KS8995 ethernet switch
1298 endef
1299
1300 $(eval $(call KernelPackage,spi-ks8995))
1301
1302
1303 define KernelPackage/ethoc
1304 SUBMENU:=$(NETWORK_DEVICES_MENU)
1305 TITLE:=Opencore.org ethoc driver
1306 DEPENDS:=+kmod-libphy
1307 FILES:=$(LINUX_DIR)/drivers/net/ethernet/ethoc.ko
1308 KCONFIG:=CONFIG_ETHOC
1309 AUTOLOAD:=$(call AutoProbe,ethoc)
1310 endef
1311
1312 define KernelPackage/ethoc/description
1313 Kernel module for the Opencores.org ethernet adapter
1314 endef
1315
1316 $(eval $(call KernelPackage,ethoc))
1317
1318
1319 define KernelPackage/bnx2
1320 SUBMENU:=$(NETWORK_DEVICES_MENU)
1321 TITLE:=BCM5706/5708/5709/5716 ethernet adapter driver
1322 DEPENDS:=@PCI_SUPPORT +bnx2-firmware
1323 FILES:=$(LINUX_DIR)/drivers/net/ethernet/broadcom/bnx2.ko
1324 KCONFIG:=CONFIG_BNX2
1325 AUTOLOAD:=$(call AutoProbe,bnx2)
1326 endef
1327
1328 define KernelPackage/bnx2/description
1329 Kernel module for the BCM5706/5708/5709/5716 ethernet adapter
1330 endef
1331
1332 $(eval $(call KernelPackage,bnx2))
1333
1334
1335 define KernelPackage/bnx2x
1336 SUBMENU:=$(NETWORK_DEVICES_MENU)
1337 TITLE:=QLogic 5771x/578xx 10/20-Gigabit ethernet adapter driver
1338 DEPENDS:=@PCI_SUPPORT +bnx2x-firmware +kmod-lib-crc32c +kmod-mdio +kmod-ptp +kmod-lib-zlib-inflate
1339 FILES:=$(LINUX_DIR)/drivers/net/ethernet/broadcom/bnx2x/bnx2x.ko
1340 KCONFIG:= \
1341 CONFIG_BNX2X \
1342 CONFIG_BNX2X_SRIOV=y
1343 AUTOLOAD:=$(call AutoProbe,bnx2x)
1344 endef
1345
1346 define KernelPackage/bnx2x/description
1347 QLogic BCM57710/57711/57711E/57712/57712_MF/57800/57800_MF/57810/57810_MF/57840/57840_MF Driver
1348 endef
1349
1350 $(eval $(call KernelPackage,bnx2x))
1351
1352 define KernelPackage/be2net
1353 SUBMENU:=$(NETWORK_DEVICES_MENU)
1354 TITLE:=Broadcom Emulex OneConnect 10Gbps NIC
1355 DEPENDS:=@PCI_SUPPORT +kmod-hwmon-core
1356 FILES:=$(LINUX_DIR)/drivers/net/ethernet/emulex/benet/be2net.ko
1357 KCONFIG:= \
1358 CONFIG_BE2NET \
1359 CONFIG_BE2NET_BE2=y \
1360 CONFIG_BE2NET_BE3=y \
1361 CONFIG_BE2NET_LANCER=y \
1362 CONFIG_BE2NET_SKYHAWK=y \
1363 CONFIG_BE2NET_HWMON=y
1364 AUTOLOAD:=$(call AutoProbe,be2net)
1365 endef
1366
1367 define KernelPackage/be2net/description
1368 Broadcom Emulex OneConnect 10Gbit SFP+ support, OneConnect OCe10xxx OCe11xxx OCe14xxx, LightPulse LPe12xxx
1369 endef
1370
1371 $(eval $(call KernelPackage,be2net))
1372
1373 define KernelPackage/mlx4-core
1374 SUBMENU:=$(NETWORK_DEVICES_MENU)
1375 TITLE:=Mellanox ConnectX(R) mlx4 core Network Driver
1376 DEPENDS:=@PCI_SUPPORT +kmod-ptp
1377 FILES:= \
1378 $(LINUX_DIR)/drivers/net/ethernet/mellanox/mlx4/mlx4_core.ko \
1379 $(LINUX_DIR)/drivers/net/ethernet/mellanox/mlx4/mlx4_en.ko
1380 KCONFIG:= CONFIG_MLX4_EN \
1381 CONFIG_MLX4_EN_DCB=n \
1382 CONFIG_MLX4_CORE=y \
1383 CONFIG_MLX4_CORE_GEN2=y \
1384 CONFIG_MLX4_DEBUG=n
1385 AUTOLOAD:=$(call AutoProbe,mlx4_core mlx4_en)
1386 endef
1387
1388 define KernelPackage/mlx4-core/description
1389 Supports Mellanox ConnectX-3 series and previous cards
1390 endef
1391
1392 $(eval $(call KernelPackage,mlx4-core))
1393
1394 define KernelPackage/mlx5-core
1395 SUBMENU:=$(NETWORK_DEVICES_MENU)
1396 TITLE:=Mellanox ConnectX(R) mlx5 core Network Driver
1397 DEPENDS:=@PCI_SUPPORT +kmod-ptp +kmod-mlxfw +LINUX_6_6:kmod-hwmon-core
1398 FILES:=$(LINUX_DIR)/drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.ko
1399 KCONFIG:= CONFIG_MLX5_CORE \
1400 CONFIG_MLX5_CORE_EN=y \
1401 CONFIG_MLX5_CORE_EN_DCB=n \
1402 CONFIG_MLX5_CORE_IPOIB=n \
1403 CONFIG_MLX5_EN_ARFS=n \
1404 CONFIG_MLX5_EN_IPSEC=n \
1405 CONFIG_MLX5_EN_RXNFC=y \
1406 CONFIG_MLX5_EN_TLS=n \
1407 CONFIG_MLX5_ESWITCH=n \
1408 CONFIG_MLX5_FPGA=n \
1409 CONFIG_MLX5_FPGA_IPSEC=n \
1410 CONFIG_MLX5_FPGA_TLS=n \
1411 CONFIG_MLX5_MPFS=y \
1412 CONFIG_MLX5_SW_STEERING=n \
1413 CONFIG_MLX5_TC_CT=n \
1414 CONFIG_MLX5_TLS=n \
1415 CONFIG_MLX5_VFIO_PCI=n
1416 AUTOLOAD:=$(call AutoProbe,mlx5_core)
1417 endef
1418
1419 define KernelPackage/mlx5-core/description
1420 Supports Mellanox Connect-IB/ConnectX-4 series and later cards
1421 endef
1422
1423 $(eval $(call KernelPackage,mlx5-core))
1424
1425
1426 define KernelPackage/mlxfw
1427 SUBMENU:=$(NETWORK_DEVICES_MENU)
1428 TITLE:=Mellanox Technologies firmware flash module
1429 FILES:=$(LINUX_DIR)/drivers/net/ethernet/mellanox/mlxfw/mlxfw.ko
1430 KCONFIG:=CONFIG_MLXFW
1431 AUTOLOAD:=$(call AutoProbe,mlxfw)
1432 endef
1433
1434 define KernelPackage/mlxfw/description
1435 This driver supports Mellanox Technologies Firmware
1436 flashing common logic.
1437 endef
1438
1439 $(eval $(call KernelPackage,mlxfw))
1440
1441
1442 define KernelPackage/mlxsw-core
1443 SUBMENU:=$(NETWORK_DEVICES_MENU)
1444 TITLE:=Mellanox Technologies Switch ASICs support
1445 DEPENDS:=+kmod-mlxfw +kmod-hwmon-core
1446 FILES:=$(LINUX_DIR)/drivers/net/ethernet/mellanox/mlxsw/mlxsw_core.ko
1447 KCONFIG:= \
1448 CONFIG_MLXSW_CORE \
1449 CONFIG_MLXSW_CORE_HWMON=y \
1450 CONFIG_MLXSW_CORE_THERMAL=y
1451 AUTOLOAD:=$(call AutoProbe,mlxsw_core)
1452 endef
1453
1454 define KernelPackage/mlxsw-core/description
1455 This driver supports Mellanox Technologies Switch ASICs family.
1456 endef
1457
1458 $(eval $(call KernelPackage,mlxsw-core))
1459
1460
1461 define KernelPackage/mlxsw-i2c
1462 SUBMENU:=$(NETWORK_DEVICES_MENU)
1463 TITLE:=I2C bus implementation for Mellanox Technologies Switch ASICs
1464 DEPENDS:=+kmod-mlxsw-core +kmod-i2c-core
1465 FILES:=$(LINUX_DIR)/drivers/net/ethernet/mellanox/mlxsw/mlxsw_i2c.ko
1466 KCONFIG:=CONFIG_MLXSW_I2C
1467 AUTOLOAD:=$(call AutoProbe,mlxsw_i2c)
1468 endef
1469
1470 define KernelPackage/mlxsw-i2c/description
1471 This is I2C bus implementation for Mellanox Technologies Switch ASICs.
1472 endef
1473
1474 $(eval $(call KernelPackage,mlxsw-i2c))
1475
1476
1477 define KernelPackage/mlxsw-minimal
1478 SUBMENU:=$(NETWORK_DEVICES_MENU)
1479 TITLE:=Mellanox Technologies minimal I2C support
1480 DEPENDS:=+kmod-mlxsw-core +kmod-mlxsw-i2c
1481 FILES:=$(LINUX_DIR)/drivers/net/ethernet/mellanox/mlxsw/mlxsw_minimal.ko
1482 KCONFIG:=CONFIG_MLXSW_MINIMAL
1483 AUTOLOAD:=$(call AutoProbe,mlxsw_minimal)
1484 endef
1485
1486 define KernelPackage/mlxsw-minimal/description
1487 This driver supports I2C access for Mellanox Technologies Switch
1488 ASICs.
1489 endef
1490
1491 $(eval $(call KernelPackage,mlxsw-minimal))
1492
1493
1494 define KernelPackage/mlxsw-pci
1495 SUBMENU:=$(NETWORK_DEVICES_MENU)
1496 TITLE:=PCI bus implementation for Mellanox Technologies Switch ASICs
1497 DEPENDS:=@PCI_SUPPORT +kmod-mlxsw-core
1498 FILES:=$(LINUX_DIR)/drivers/net/ethernet/mellanox/mlxsw/mlxsw_pci.ko
1499 KCONFIG:=CONFIG_MLXSW_PCI
1500 AUTOLOAD:=$(call AutoProbe,mlxsw_pci)
1501 endef
1502
1503 define KernelPackage/mlxsw-pci/description
1504 This is PCI bus implementation for Mellanox Technologies Switch ASICs.
1505 endef
1506
1507 $(eval $(call KernelPackage,mlxsw-pci))
1508
1509
1510 define KernelPackage/mlxsw-spectrum
1511 SUBMENU:=$(NETWORK_DEVICES_MENU)
1512 TITLE:=Mellanox Technologies Spectrum family support
1513 DEPENDS:= \
1514 +kmod-mlxsw-core +kmod-mlxsw-pci +kmod-lib-objagg +kmod-lib-parman \
1515 +kmod-ip6-tunnel +kmod-ptp +kmod-sched-act-sample +kmod-vxlan
1516 FILES:=$(LINUX_DIR)/drivers/net/ethernet/mellanox/mlxsw/mlxsw_spectrum.ko
1517 KCONFIG:= \
1518 CONFIG_MLXSW_SPECTRUM \
1519 CONFIG_NET_SWITCHDEV=y \
1520 CONFIG_MLXSW_SPECTRUM_DCB=y \
1521 CONFIG_DCB=y \
1522 CONFIG_AMD_XGBE_DCB=n \
1523 CONFIG_IXGBE_DCB=n \
1524 CONFIG_I40E_DCB=n \
1525 CONFIG_QLCNIC_DCB=n \
1526 CONFIG_FSL_DPAA2_ETH_DCB=n \
1527 CONFIG_FSL_DPAA2_SWITCH=n
1528 AUTOLOAD:=$(call AutoProbe,mlxsw_spectrum)
1529 endef
1530
1531 define KernelPackage/mlxsw-spectrum/description
1532 This driver supports Mellanox Technologies
1533 Spectrum/Spectrum-2/Spectrum-3/Spectrum-4 Ethernet Switch ASICs.
1534 endef
1535
1536 $(eval $(call KernelPackage,mlxsw-spectrum))
1537
1538
1539 define KernelPackage/net-selftests
1540 SUBMENU:=$(NETWORK_DEVICES_MENU)
1541 DEPENDS:=+kmod-libphy
1542 TITLE:=Network generic selftest support
1543 KCONFIG:=CONFIG_NET_SELFTESTS
1544 FILES:=$(LINUX_DIR)/net/core/selftests.ko
1545 AUTOLOAD:=$(call AutoLoad,99,selftests)
1546 endef
1547
1548 define KernelPackage/net-selftests/description
1549 Kernel modules for the generic selftest support
1550 endef
1551
1552 $(eval $(call KernelPackage,net-selftests))
1553
1554
1555 define KernelPackage/qlcnic
1556 SUBMENU:=$(NETWORK_DEVICES_MENU)
1557 DEPENDS:=@PCI_SUPPORT +kmod-hwmon-core
1558 TITLE:=QLogic QLE8240 and QLE8242 device support
1559 KCONFIG:= \
1560 CONFIG_QLCNIC \
1561 CONFIG_QLCNIC_HWMON=y \
1562 CONFIG_QLCNIC_SRIOV=y
1563 FILES:=$(LINUX_DIR)/drivers/net/ethernet/qlogic/qlcnic/qlcnic.ko
1564 AUTOLOAD:=$(call AutoProbe,qlcnic)
1565 endef
1566
1567 define KernelPackage/qlcnic/description
1568 This driver supports QLogic QLE8240 and QLE8242 Converged Ethernet
1569 devices.
1570 endef
1571
1572 $(eval $(call KernelPackage,qlcnic))
1573
1574
1575 define KernelPackage/sfp
1576 SUBMENU:=$(NETWORK_DEVICES_MENU)
1577 TITLE:=SFP cage support
1578 DEPENDS:=+kmod-i2c-core +kmod-hwmon-core +kmod-phylink
1579 KCONFIG:= \
1580 CONFIG_SFP \
1581 CONFIG_MDIO_I2C
1582 FILES:= \
1583 $(LINUX_DIR)/drivers/net/phy/sfp.ko \
1584 $(LINUX_DIR)/drivers/net/mdio/mdio-i2c.ko
1585 AUTOLOAD:=$(call AutoProbe,mdio-i2c sfp)
1586 endef
1587
1588 define KernelPackage/sfp/description
1589 Kernel module to support SFP cages
1590 endef
1591
1592 $(eval $(call KernelPackage,sfp))
1593
1594
1595 define KernelPackage/pcs-xpcs
1596 SUBMENU:=$(NETWORK_DEVICES_MENU)
1597 TITLE:=Synopsis DesignWare PCS driver
1598 DEPENDS:=@(TARGET_x86_64||TARGET_armsr_armv8) +kmod-phylink
1599 KCONFIG:=CONFIG_PCS_XPCS
1600 FILES:=$(LINUX_DIR)/drivers/net/pcs/pcs_xpcs.ko
1601 AUTOLOAD:=$(call AutoLoad,20,pcs_xpcs)
1602 endef
1603
1604 $(eval $(call KernelPackage,pcs-xpcs))
1605
1606
1607 define KernelPackage/stmmac-core
1608 SUBMENU:=$(NETWORK_DEVICES_MENU)
1609 TITLE:=Synopsis Ethernet Controller core (NXP,STMMicro,others)
1610 DEPENDS:=@TARGET_x86_64||TARGET_armsr_armv8 +kmod-pcs-xpcs +LINUX_6_6:kmod-of-mdio +kmod-ptp
1611 KCONFIG:=CONFIG_STMMAC_ETH \
1612 CONFIG_STMMAC_SELFTESTS=n \
1613 CONFIG_STMMAC_PLATFORM \
1614 CONFIG_CONFIG_DWMAC_DWC_QOS_ETH=n \
1615 CONFIG_DWMAC_GENERIC
1616 FILES=$(LINUX_DIR)/drivers/net/ethernet/stmicro/stmmac/stmmac.ko \
1617 $(LINUX_DIR)/drivers/net/ethernet/stmicro/stmmac/stmmac-platform.ko \
1618 $(LINUX_DIR)/drivers/net/ethernet/stmicro/stmmac/dwmac-generic.ko
1619 AUTOLOAD=$(call AutoLoad,40,stmmac stmmac-platform dwmac-generic)
1620 endef
1621
1622 $(eval $(call KernelPackage,stmmac-core))
1623
1624
1625 define KernelPackage/igc
1626 SUBMENU:=$(NETWORK_DEVICES_MENU)
1627 TITLE:=Intel(R) Ethernet Controller I225 Series support
1628 DEPENDS:=@PCI_SUPPORT +kmod-ptp
1629 KCONFIG:=CONFIG_IGC
1630 FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/igc/igc.ko
1631 AUTOLOAD:=$(call AutoProbe,igc)
1632 endef
1633
1634 define KernelPackage/igc/description
1635 Kernel modules for Intel(R) Ethernet Controller I225 Series
1636 endef
1637
1638 $(eval $(call KernelPackage,igc))
1639
1640 define KernelPackage/sfc
1641 SUBMENU:=$(NETWORK_DEVICES_MENU)
1642 TITLE:=Solarflare SFC9000/SFC9100/EF100-family support
1643 DEPENDS:=@PCI_SUPPORT +kmod-mdio +kmod-lib-crc32c +kmod-ptp +kmod-hwmon-core
1644 KCONFIG:= \
1645 CONFIG_SFC \
1646 CONFIG_SFC_MTD=y \
1647 CONFIG_SFC_MCDI_MON=y \
1648 CONFIG_SFC_MCDI_LOGGING=y \
1649 CONFIG_SFC_SRIOV=y
1650 FILES:=$(LINUX_DIR)/drivers/net/ethernet/sfc/sfc.ko
1651 AUTOLOAD:=$(call AutoProbe,sfc)
1652 endef
1653
1654 define KernelPackage/sfc/description
1655 Solarflare SFC9000/SFC9100/EF100-family support
1656 Solarflare EF100 support requires at least kernel version 5.9
1657 endef
1658
1659 $(eval $(call KernelPackage,sfc))
1660
1661 define KernelPackage/sfc-falcon
1662 SUBMENU:=$(NETWORK_DEVICES_MENU)
1663 TITLE:=Solarflare SFC4000 support
1664 DEPENDS:=@PCI_SUPPORT +kmod-mdio +kmod-lib-crc32c +kmod-i2c-algo-bit
1665 KCONFIG:= \
1666 CONFIG_SFC_FALCON \
1667 CONFIG_SFC_FALCON_MTD=y
1668 FILES:=$(LINUX_DIR)/drivers/net/ethernet/sfc/falcon/sfc-falcon.ko
1669 AUTOLOAD:=$(call AutoProbe,sfc-falcon)
1670 endef
1671
1672 define KernelPackage/sfc-falcon/description
1673 Solarflare SFC4000 support
1674 endef
1675
1676 $(eval $(call KernelPackage,sfc-falcon))
1677
1678
1679 define KernelPackage/wwan
1680 SUBMENU:=$(NETWORK_DEVICES_MENU)
1681 TITLE:=WWAN Driver Core
1682 KCONFIG:= \
1683 CONFIG_WWAN \
1684 CONFIG_WWAN_DEBUGFS=y@ge5.17
1685 FILES:=$(LINUX_DIR)/drivers/net/wwan/wwan.ko
1686 AUTOLOAD:=$(call AutoProbe,wwan)
1687 endef
1688
1689 define KernelPackage/wwan/description
1690 This driver provides a common framework for WWAN drivers.
1691 endef
1692
1693 $(eval $(call KernelPackage,wwan))
1694
1695
1696 define KernelPackage/mhi-net
1697 SUBMENU:=$(NETWORK_DEVICES_MENU)
1698 TITLE:=MHI Network Device
1699 DEPENDS:=@PCI_SUPPORT +kmod-mhi-bus
1700 KCONFIG:=CONFIG_MHI_NET
1701 FILES:=$(LINUX_DIR)/drivers/net/mhi_net.ko
1702 AUTOLOAD:=$(call AutoProbe,mhi_net)
1703 endef
1704
1705 define KernelPackage/mhi-net/description
1706 Driver for MHI network interface
1707 endef
1708
1709 $(eval $(call KernelPackage,mhi-net))
1710
1711 define KernelPackage/mhi-wwan-ctrl
1712 SUBMENU:=$(NETWORK_DEVICES_MENU)
1713 TITLE:=MHI WWAN Control
1714 DEPENDS:=@PCI_SUPPORT +kmod-mhi-bus +kmod-wwan
1715 KCONFIG:=CONFIG_MHI_WWAN_CTRL
1716 FILES:=$(LINUX_DIR)/drivers/net/wwan/mhi_wwan_ctrl.ko
1717 AUTOLOAD:=$(call AutoProbe,mhi_wwan_ctrl)
1718 endef
1719
1720 define KernelPackage/mhi-wwan-ctrl/description
1721 Driver for MHI WWAN Control
1722 This exposes all modem control ports like AT, MBIM, QMI, DIAG, ..
1723 endef
1724
1725 $(eval $(call KernelPackage,mhi-wwan-ctrl))
1726
1727 define KernelPackage/mhi-wwan-mbim
1728 SUBMENU:=$(NETWORK_DEVICES_MENU)
1729 TITLE:=MHI MBIM
1730 DEPENDS:=@PCI_SUPPORT +kmod-mhi-bus +kmod-wwan
1731 KCONFIG:=CONFIG_MHI_WWAN_MBIM
1732 FILES:=$(LINUX_DIR)/drivers/net/wwan/mhi_wwan_mbim.ko
1733 AUTOLOAD:=$(call AutoProbe,mhi_wwan_mbim)
1734 endef
1735
1736 define KernelPackage/mhi-wwan-mbim/description
1737 Driver for MHI MBIM
1738 This implements MBIM over MHI
1739 endef
1740
1741 $(eval $(call KernelPackage,mhi-wwan-mbim))
1742
1743
1744 define KernelPackage/mtk-t7xx
1745 SUBMENU:=$(NETWORK_DEVICES_MENU)
1746 TITLE:=MediaTek T7xx 5G modem
1747 DEPENDS:=@!LINUX_5_15 @PCI_SUPPORT +kmod-wwan
1748 KCONFIG:=CONFIG_MTK_T7XX
1749 FILES:=$(LINUX_DIR)/drivers/net/wwan/t7xx/mtk_t7xx.ko
1750 AUTOLOAD:=$(call AutoProbe,mtk_t7xx)
1751 endef
1752
1753 define KernelPackage/mtk-t7xx/description
1754 Driver for MediaTek PCIe 5G WWAN modem T7xx device
1755 endef
1756
1757 $(eval $(call KernelPackage,mtk-t7xx))
1758
1759
1760 define KernelPackage/atlantic
1761 SUBMENU:=$(NETWORK_DEVICES_MENU)
1762 TITLE:=Aquantia AQtion 10Gbps Ethernet NIC
1763 DEPENDS:=@PCI_SUPPORT +kmod-ptp +kmod-hwmon-core +kmod-macsec
1764 KCONFIG:=CONFIG_AQTION
1765 FILES:=$(LINUX_DIR)/drivers/net/ethernet/aquantia/atlantic/atlantic.ko
1766 AUTOLOAD:=$(call AutoProbe,atlantic)
1767 endef
1768
1769 define KernelPackage/atlantic/description
1770 Kernel modules for Aquantia AQtion 10Gbps Ethernet NIC
1771 endef
1772
1773 $(eval $(call KernelPackage,atlantic))
1774
1775
1776 define KernelPackage/lan743x
1777 SUBMENU:=$(NETWORK_DEVICES_MENU)
1778 TITLE:=Microchip LAN743x PCI Express Gigabit Ethernet NIC
1779 DEPENDS:=@PCI_SUPPORT +kmod-ptp +kmod-mdio-devres +!LINUX_6_1:kmod-fixed-phy
1780 KCONFIG:=CONFIG_LAN743X
1781 FILES:=$(LINUX_DIR)/drivers/net/ethernet/microchip/lan743x.ko
1782 AUTOLOAD:=$(call AutoProbe,lan743x)
1783 endef
1784
1785 define KernelPackage/lan743x/description
1786 Kernel module for Microchip LAN743x PCI Express Gigabit Ethernet NIC
1787 endef
1788
1789 $(eval $(call KernelPackage,lan743x))
1790
1791 define KernelPackage/amazon-ena
1792 SUBMENU:=$(NETWORK_DEVICES_MENU)
1793 TITLE:=Elastic Network Adapter (for Amazon AWS)
1794 DEPENDS:=@TARGET_x86_64||TARGET_armsr_armv8
1795 KCONFIG:=CONFIG_ENA_ETHERNET
1796 FILES:=$(LINUX_DIR)/drivers/net/ethernet/amazon/ena/ena.ko
1797 AUTOLOAD:=$(call AutoLoad,12,ena)
1798 endef
1799
1800 define KernelPackage/amazon-ena/description
1801 This driver supports Elastic Network Adapter (ENA)
1802 used by Amazon AWS T3 (2018) and later instances.
1803 endef
1804
1805 $(eval $(call KernelPackage,amazon-ena))