network.mk 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433
  1. #
  2. # Copyright (C) 2006 OpenWrt.org
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. # See /LICENSE for more information.
  6. #
  7. # $Id$
  8. NSMENU:=Network Support
  9. define KernelPackage/atm
  10. TITLE:=ATM support
  11. DESCRIPTION:= \
  12. Kernel modules for ATM support
  13. DEPENDS:=@LINUX_2_6
  14. FILES:= \
  15. $(LINUX_DIR)/net/atm/atm.$(LINUX_KMOD_SUFFIX) \
  16. $(LINUX_DIR)/net/atm/br2684.$(LINUX_KMOD_SUFFIX)
  17. KCONFIG:=CONFIG_ATM
  18. SUBMENU:=$(NSMENU)
  19. AUTOLOAD:=$(call AutoLoad,30,atm br2684)
  20. endef
  21. $(eval $(call KernelPackage,atm))
  22. define KernelPackage/atmtcp
  23. TITLE:=ATM over TCP
  24. DESCRIPTION:= \
  25. Kernel module for ATM over TCP support
  26. DEPENDS:=@LINUX_2_6 kmod-atm
  27. FILES:=$(LINUX_DIR)/drivers/atm/atmtcp.$(LINUX_KMOD_SUFFIX)
  28. KCONFIG:=CONFIG_ATM_TCP CONFIG_ATM_DRIVERS=y
  29. SUBMENU:=$(NSMENU)
  30. AUTOLOAD:=$(call AutoLoad,40,atmtcp)
  31. endef
  32. $(eval $(call KernelPackage,atmtcp))
  33. define KernelPackage/bonding
  34. TITLE:=Ethernet bonding driver
  35. DESCRIPTION:= \
  36. Kernel module for NIC bonding.
  37. FILES:=$(LINUX_DIR)/drivers/net/bonding/bonding.$(LINUX_KMOD_SUFFIX)
  38. KCONFIG:=CONFIG_BONDING
  39. SUBMENU:=$(NSMENU)
  40. AUTOLOAD:=$(call AutoLoad,40,bonding)
  41. endef
  42. $(eval $(call KernelPackage,bonding))
  43. define KernelPackage/ipip
  44. TITLE:=IP in IP encapsulation support
  45. DESCRIPTION:=\
  46. Kernel modules for IP in IP encapsulation
  47. KCONFIG:=CONFIG_NET_IPIP
  48. SUBMENU:=$(NSMENU)
  49. endef
  50. define KernelPackage/ipip/2.4
  51. FILES:=$(LINUX_DIR)/net/ipv4/ipip.$(LINUX_KMOD_SUFFIX)
  52. AUTOLOAD:=$(call AutoLoad,30,ipip)
  53. endef
  54. define KernelPackage/ipip/2.6
  55. FILES:= \
  56. $(LINUX_DIR)/net/ipv4/ipip.$(LINUX_KMOD_SUFFIX) \
  57. $(LINUX_DIR)/net/ipv4/tunnel4.$(LINUX_KMOD_SUFFIX)
  58. AUTOLOAD:=$(call AutoLoad,30,ipip tunnel4)
  59. endef
  60. $(eval $(call KernelPackage,ipip))
  61. define KernelPackage/ipsec
  62. TITLE:=IPsec related modules (IPv4 and IPv6)
  63. DESCRIPTION:=\
  64. Kernel modules for IPsec support in both IPv4 and IPv6.\\\
  65. Includes:\\\
  66. - af_key\\\
  67. - xfrm_user
  68. SUBMENU:=$(NSMENU)
  69. DEPENDS:=@LINUX_2_6
  70. KCONFIG:=CONFIG_NET_KEY
  71. FILES:= \
  72. $(LINUX_DIR)/net/key/af_key.$(LINUX_KMOD_SUFFIX) \
  73. $(LINUX_DIR)/net/xfrm/xfrm_user.$(LINUX_KMOD_SUFFIX)
  74. endef
  75. $(eval $(call KernelPackage,ipsec))
  76. define KernelPackage/ipsec4
  77. TITLE:=IPsec related modules (IPv4)
  78. DESCRIPTION:=\
  79. Kernel modules for IPsec support in IPv4.\\\
  80. Includes:\\\
  81. - ah4\\\
  82. - esp4\\\
  83. - ipcomp\\\
  84. - xfrm4_tunnel
  85. SUBMENU:=$(NSMENU)
  86. KCONFIG:=CONFIG_INET_AH
  87. DEPENDS:=kmod-ipsec
  88. FILES:= $(foreach mod,ah4 esp4 ipcomp xfrm4_tunnel, \
  89. $(LINUX_DIR)/net/ipv4/$(mod).$(LINUX_KMOD_SUFFIX) \
  90. )
  91. endef
  92. $(eval $(call KernelPackage,ipsec4))
  93. define KernelPackage/ipsec6
  94. TITLE:=IPsec related modules (IPv6)
  95. DESCRIPTION:=\
  96. Kernel modules for IPsec support in IPv6.\\\
  97. Includes:\\\
  98. - ah6\\\
  99. - esp6\\\
  100. - ipcomp6\\\
  101. - xfrm6_tunnel\\\
  102. - tunnel6
  103. SUBMENU:=$(NSMENU)
  104. KCONFIG:=CONFIG_INET6_AH
  105. DEPENDS:=kmod-ipsec
  106. FILES:= $(foreach mod,ah6 esp6 ipcomp6 xfrm6_tunnel tunnel6, \
  107. $(LINUX_DIR)/net/ipv6/$(mod).$(LINUX_KMOD_SUFFIX) \
  108. )
  109. endef
  110. $(eval $(call KernelPackage,ipsec6))
  111. define KernelPackage/ipv6
  112. TITLE:=IPv6 support
  113. DESCRIPTION:=\
  114. Kernel modules for IPv6 support
  115. KCONFIG:=CONFIG_IPV6
  116. SUBMENU:=$(NSMENU)
  117. AUTOLOAD:=$(call AutoLoad,20,ipv6)
  118. endef
  119. define KernelPackage/ipv6/2.4
  120. FILES:=$(LINUX_DIR)/net/ipv6/ipv6.$(LINUX_KMOD_SUFFIX)
  121. endef
  122. define KernelPackage/ipv6/2.6
  123. FILES:= \
  124. $(LINUX_DIR)/net/ipv6/ipv6.$(LINUX_KMOD_SUFFIX) \
  125. $(LINUX_DIR)/net/ipv6/sit.$(LINUX_KMOD_SUFFIX)
  126. endef
  127. $(eval $(call KernelPackage,ipv6))
  128. define KernelPackage/gre
  129. TITLE:=GRE support
  130. DESCRIPTION:=\
  131. Generic Routing Encapsulation support
  132. KCONFIG:=CONFIG_NET_IPGRE
  133. FILES=$(LINUX_DIR)/net/ipv4/ip_gre.$(LINUX_KMOD_SUFFIX)
  134. SUBMENU:=$(NSMENU)
  135. endef
  136. $(eval $(call KernelPackage,gre))
  137. define KernelPackage/tun
  138. TITLE:=Universal TUN/TAP driver
  139. DESCRIPTION:=\
  140. Kernel support for the TUN/TAP tunneling device
  141. KCONFIG:=CONFIG_TUN
  142. FILES:=$(LINUX_DIR)/drivers/net/tun.$(LINUX_KMOD_SUFFIX)
  143. SUBMENU:=$(NSMENU)
  144. AUTOLOAD:=$(call AutoLoad,30,tun)
  145. endef
  146. $(eval $(call KernelPackage,tun))
  147. define KernelPackage/ppp
  148. TITLE:=PPP modules
  149. DESCRIPTION:=\
  150. Kernel modules for PPP support
  151. KCONFIG:=CONFIG_PPP
  152. SUBMENU:=$(NSMENU)
  153. endef
  154. define KernelPackage/ppp/2.6
  155. FILES:= \
  156. $(LINUX_DIR)/drivers/net/ppp_async.ko \
  157. $(LINUX_DIR)/drivers/net/ppp_generic.ko \
  158. $(LINUX_DIR)/drivers/net/slhc.ko \
  159. $(LINUX_DIR)/lib/crc-ccitt.ko
  160. AUTOLOAD:=$(call AutoLoad,30,crc-ccitt slhc ppp_generic ppp_async)
  161. endef
  162. define KernelPackage/ppp/2.4
  163. FILES:= \
  164. $(LINUX_DIR)/drivers/net/ppp_async.o \
  165. $(LINUX_DIR)/drivers/net/ppp_generic.o \
  166. $(LINUX_DIR)/drivers/net/slhc.o
  167. AUTOLOAD:=$(call AutoLoad,30,slhc ppp_generic ppp_async)
  168. endef
  169. $(eval $(call KernelPackage,ppp))
  170. define KernelPackage/pppoe
  171. TITLE:=PPPoE support
  172. DESCRIPTION:=\
  173. Kernel modules for PPPoE (PPP over Ethernet) support
  174. DEPENDS:=kmod-ppp
  175. KCONFIG:=CONFIG_PPPOE
  176. FILES:= \
  177. $(LINUX_DIR)/drivers/net/pppoe.$(LINUX_KMOD_SUFFIX) \
  178. $(LINUX_DIR)/drivers/net/pppox.$(LINUX_KMOD_SUFFIX)
  179. SUBMENU:=$(NSMENU)
  180. endef
  181. $(eval $(call KernelPackage,pppoe))
  182. define KernelPackage/pppoa
  183. TITLE:=PPPoA support
  184. DESCRIPTION:=\
  185. Kernel modules for PPPoA (PPP over ATM) support
  186. DEPENDS:=kmod-ppp kmod-atm
  187. KCONFIG:=CONFIG_PPPOATM
  188. FILES:=$(LINUX_DIR)/net/atm/pppoatm.$(LINUX_KMOD_SUFFIX)
  189. AUTOLOAD:=$(call AutoLoad,40,pppoatm)
  190. SUBMENU:=$(NSMENU)
  191. endef
  192. $(eval $(call KernelPackage,pppoa))
  193. define KernelPackage/mppe
  194. TITLE:=Microsoft PPP compression/encryption
  195. DESCRIPTION:=Kernel modules for Microsoft PPP compression/encryption
  196. DEPENDS:=kmod-ppp
  197. KCONFIG:=CONFIG_PPP_MPPE_MPPC CONFIG_PPP_MPPE
  198. SUBMENU:=$(NSMENU)
  199. endef
  200. define KernelPackage/mppe/2.4
  201. FILES:=$(LINUX_DIR)/drivers/net/ppp_mppe_mppc.$(LINUX_KMOD_SUFFIX)
  202. AUTOLOAD:=$(call AutoLoad,31,ppp_mppe_mppc)
  203. endef
  204. define KernelPackage/mppe/2.6
  205. FILES:=$(LINUX_DIR)/drivers/net/ppp_mppe.$(LINUX_KMOD_SUFFIX)
  206. AUTOLOAD:=$(call AutoLoad,31,ppp_mppe)
  207. endef
  208. $(eval $(call KernelPackage,mppe))
  209. define KernelPackage/sched
  210. TITLE:=Traffic schedulers
  211. DESCRIPTION:=\
  212. Kernel schedulers for IP traffic
  213. FILES:=$(LINUX_DIR)/net/sched/*.$(LINUX_KMOD_SUFFIX)
  214. SUBMENU:=$(NSMENU)
  215. endef
  216. $(eval $(call KernelPackage,sched))
  217. define KernelPackage/ax25
  218. TITLE:=AX25 support
  219. DESCRIPTION:=Kernel modules for AX25 support
  220. SUBMENU:=$(NSMENU)
  221. KCONFIG:=CONFIG_AX25 CONFIG_MKISS
  222. FILES:= \
  223. $(LINUX_DIR)/net/ax25/ax25.$(LINUX_KMOD_SUFFIX) \
  224. $(LINUX_DIR)/drivers/net/hamradio/mkiss.$(LINUX_KMOD_SUFFIX)
  225. AUTOLOAD:=$(call AutoLoad,80,ax25 mkiss)
  226. endef
  227. $(eval $(call KernelPackage,ax25))
  228. define KernelPackage/mp-alg
  229. TITLE:=ECMP caching algorithms
  230. DEPENDS:=@LINUX_2_6
  231. DESCRIPTION:= \
  232. Kernel modules that provide several different algorithms for multipath \\\
  233. route selection from the route cache. The iproute "mpath" argument allows \\\
  234. specifying which algorithm to use for routes. \\\
  235. quagga (at least <=0.99.6) requires a multipath patch to support this \\\
  236. cached mp route feature.
  237. SUBMENU:=$(NSMENU)
  238. KCONFIG:=CONFIG_IP_ROUTE_MULTIPATH_RR CONFIG_IP_ROUTE_MULTIPATH_RANDOM CONFIG_IP_ROUTE_MULTIPATH_WRANDOM CONFIG_IP_ROUTE_MULTIPATH_DRR
  239. FILES:=$(LINUX_DIR)/net/ipv4/multipath_*.$(LINUX_KMOD_SUFFIX)
  240. AUTOLOAD:=$(call AutoLoad,35,multipath_rr multipath_random multipath_wrandom multipath_drr)
  241. endef
  242. $(eval $(call KernelPackage,mp-alg))
  243. NDMENU:=Network Devices
  244. define KernelPackage/natsemi
  245. TITLE:=National Semiconductor DP8381x series
  246. DESCRIPTION:=\
  247. Kernel modules for National Semiconductor DP8381x series PCI Ethernet \\\
  248. adapters.
  249. FILES:=$(LINUX_DIR)/drivers/net/natsemi.$(LINUX_KMOD_SUFFIX)
  250. KCONFIG:=CONFIG_NATSEMI
  251. DEPENDS:=@LINUX_2_6_X86
  252. SUBMENU:=$(NDMENU)
  253. AUTOLOAD:=$(call AutoLoad,20,natsemi)
  254. endef
  255. $(eval $(call KernelPackage,natsemi))
  256. define KernelPackage/r6040
  257. TITLE:=RDC Fast-Ethernet support
  258. DESCRIPTION:=\
  259. Kernel modules for RDC Fast-Ethernet adapters.
  260. FILES:=$(LINUX_DIR)/drivers/net/r6040.$(LINUX_KMOD_SUFFIX)
  261. KCONFIG:=CONFIG_R6040
  262. DEPENDS:=@LINUX_2_6_RDC
  263. SUBMENU:=$(NDMENU)
  264. endef
  265. $(eval $(call KernelPackage,r6040))
  266. define KernelPackage/sis900
  267. TITLE:=SiS 900 Ethernet support
  268. DESCRIPTION:=\
  269. Kernel modules for Sis 900 Ethernet adapters.
  270. FILES:=$(LINUX_DIR)/drivers/net/sis900.$(LINUX_KMOD_SUFFIX)
  271. KCONFIG:=CONFIG_SIS900
  272. DEPENDS:=@LINUX_2_6_X86
  273. SUBMENU:=$(NDMENU)
  274. AUTOLOAD:=$(call AutoLoad,50,sis900)
  275. endef
  276. $(eval $(call KernelPackage,sis900))
  277. define KernelPackage/via-rhine
  278. TITLE:=Via Rhine ethernet support
  279. DESCRIPTION:=\
  280. Kernel modules for Via Rhine Ethernet chipsets.
  281. FILES:=$(LINUX_DIR)/drivers/net/via-rhine.$(LINUX_KMOD_SUFFIX)
  282. KCONFIG:=CONFIG_VIA_RHINE
  283. DEPENDS:=@LINUX_2_6_X86
  284. SUBMENU:=$(NDMENU)
  285. AUTOLOAD:=$(call AutoLoad,50,via-rhine)
  286. endef
  287. $(eval $(call KernelPackage,via-rhine))
  288. define KernelPackage/via-velocity
  289. TITLE:=VIA Velocity Gigabit Ethernet Adapter kernel support
  290. DESCRIPTION:=\
  291. Kernel modules for VIA Velocity Gigabit Ethernet chipsets.
  292. FILES:=$(LINUX_DIR)/drivers/net/via-velocity.$(LINUX_KMOD_SUFFIX)
  293. KCONFIG:=CONFIG_VIA_VELOCITY
  294. DEPENDS:=@LINUX_2_6_IXP4XX
  295. SUBMENU:=$(NDMENU)
  296. AUTOLOAD:=$(call AutoLoad,50,via-velocity)
  297. endef
  298. $(eval $(call KernelPackage,via-velocity))
  299. define KernelPackage/8139too
  300. TITLE:=RealTek RTL-8139 PCI Fast Ethernet Adapter kernel support
  301. DESCRIPTION:=\
  302. Kernel modules for RealTek RTL-8139 PCI Fast Ethernet adapters.
  303. FILES:=$(LINUX_DIR)/drivers/net/8139too.$(LINUX_KMOD_SUFFIX)
  304. KCONFIG:=CONFIG_8139TOO
  305. DEPENDS:=@LINUX_2_6_X86
  306. SUBMENU:=$(NDMENU)
  307. AUTOLOAD:=$(call AutoLoad,50,8139too)
  308. endef
  309. $(eval $(call KernelPackage,8139too))
  310. define KernelPackage/r8169
  311. TITLE:=RealTek RTL-8169 PCI Gigabit Ethernet Adapter kernel support
  312. DESCRIPTION:=\
  313. Kernel modules for RealTek RTL-8169 PCI Gigabit Ethernet adapters.
  314. FILES:=$(LINUX_DIR)/drivers/net/r8169.$(LINUX_KMOD_SUFFIX)
  315. KCONFIG:=CONFIG_R8169 CONFIG_R8169_NAPI=y CONFIG_R8169_VLAN=n
  316. DEPENDS:=@LINUX_2_6_X86
  317. SUBMENU:=$(NDMENU)
  318. AUTOLOAD:=$(call AutoLoad,50,r8169)
  319. endef
  320. $(eval $(call KernelPackage,r8169))
  321. define KernelPackage/ne2k-pci
  322. TITLE:=ne2k-pci Ethernet Adapter kernel support
  323. DESCRIPTION:=\
  324. ne2k-pci Ethernet Adapter kernel support.
  325. FILES:=$(LINUX_DIR)/drivers/net/ne2k-pci.$(LINUX_KMOD_SUFFIX) \
  326. $(LINUX_DIR)/drivers/net/8390.$(LINUX_KMOD_SUFFIX)
  327. KCONFIG:=CONFIG_NE2K_PCI
  328. DEPENDS:=@LINUX_2_6_X86
  329. SUBMENU:=$(NDMENU)
  330. AUTOLOAD:=$(call AutoLoad,50,8390 ne2k-pci)
  331. endef
  332. $(eval $(call KernelPackage,ne2k-pci))
  333. define KernelPackage/ixp4xx-npe
  334. TITLE:=Intel(R) IXP4xx ethernet support
  335. DESCRIPTION:=\
  336. Kernel modules for Intel(R) IXP4xx onboard ethernet.
  337. FILES:=$(LINUX_DIR)/drivers/net/ixp4xx/ixp4xx_npe.$(LINUX_KMOD_SUFFIX) \
  338. $(LINUX_DIR)/drivers/net/ixp4xx/ixp4xx_qmgr.$(LINUX_KMOD_SUFFIX) \
  339. $(LINUX_DIR)/drivers/net/ixp4xx/ixp4xx_mac.$(LINUX_KMOD_SUFFIX)
  340. KCONFIG:=CONFIG_IXP4XX_MAC
  341. DEPENDS:=@LINUX_2_6_IXP4XX
  342. SUBMENU:=$(NDMENU)
  343. AUTOLOAD:=$(call AutoLoad,20,ixp4xx_npe ixp4xx_qmgr ixp4xx_mac)
  344. endef
  345. $(eval $(call KernelPackage,ixp4xx-npe))
  346. define KernelPackage/e100
  347. TITLE:=Intel(R) PRO/100+ cards kernel support
  348. DESCRIPTION:=\
  349. Kernel modules for Intel(R) PRO/100+ Ethernet adapters.
  350. FILES:=$(LINUX_DIR)/drivers/net/e100.$(LINUX_KMOD_SUFFIX)
  351. KCONFIG:=CONFIG_E100
  352. DEPENDS:=@LINUX_2_6_X86
  353. SUBMENU:=$(NDMENU)
  354. AUTOLOAD:=$(call AutoLoad,50,e100)
  355. endef
  356. $(eval $(call KernelPackage,e100))
  357. define KernelPackage/e1000
  358. TITLE:=Intel(R) PRO/1000 cards kernel support
  359. DESCRIPTION:=\
  360. Kernel modules for Intel(R) PRO/1000 Ethernet adapters.
  361. FILES:=$(LINUX_DIR)/drivers/net/e1000/e1000.$(LINUX_KMOD_SUFFIX)
  362. KCONFIG:=CONFIG_E1000
  363. DEPENDS:=@LINUX_2_6_X86
  364. SUBMENU:=$(NDMENU)
  365. AUTOLOAD:=$(call AutoLoad,50,e1000)
  366. endef
  367. $(eval $(call KernelPackage,e1000))
  368. define KernelPackage/3c59x
  369. TITLE:=3Com 3c590/3c900 series (592/595/597) Vortex/Boomerang
  370. DESCRIPTION:=\
  371. This option enables driver support for a large number of 10mbps and \\\
  372. 10/100mbps EISA, PCI and PCMCIA 3Com Ethernet adapters: \\\
  373. - "Vortex" (Fast EtherLink 3c590/3c592/3c595/3c597) EISA and PCI \\\
  374. - "Boomerang" (EtherLink XL 3c900 or 3c905) PCI \\\
  375. - "Cyclone" (3c540/3c900/3c905/3c980/3c575/3c656) PCI and Cardbus \\\
  376. - "Tornado" (3c905) PCI \\\
  377. - "Hurricane" (3c555/3cSOHO) PCI
  378. FILES:=$(LINUX_DIR)/drivers/net/3c59x.$(LINUX_KMOD_SUFFIX)
  379. KCONFIG:=CONFIG_3C59X
  380. DEPENDS:=@LINUX_2_6_X86
  381. SUBMENU:=$(NDMENU)
  382. AUTOLOAD:=$(call AutoLoad,50,3c59x)
  383. endef
  384. $(eval $(call KernelPackage,3c59x))