network.mk 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412
  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. DEPENDS:=@ATM_SUPPORT
  12. DESCRIPTION:= \
  13. Kernel modules for ATM support
  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)
  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. DEPENDS:=@LINUX_2_6_X86
  38. FILES:=$(LINUX_DIR)/drivers/net/bonding/bonding.$(LINUX_KMOD_SUFFIX)
  39. KCONFIG:=$(CONFIG_BONDING)
  40. SUBMENU:=$(NSMENU)
  41. AUTOLOAD:=$(call AutoLoad,40,bonding)
  42. endef
  43. $(eval $(call KernelPackage,bonding))
  44. define KernelPackage/ipip
  45. TITLE:=IP in IP encapsulation support
  46. DESCRIPTION:=\
  47. Kernel modules for IP in IP encapsulation
  48. KCONFIG:=$(CONFIG_NET_IPIP)
  49. SUBMENU:=$(NSMENU)
  50. endef
  51. $(eval $(call KernelPackage,ipip))
  52. define KernelPackage/ipip/2.4
  53. FILES:=$(LINUX_DIR)/net/ipv4/ipip.$(LINUX_KMOD_SUFFIX)
  54. AUTOLOAD:=$(call AutoLoad,30,ipip)
  55. endef
  56. define KernelPackage/ipip/2.6
  57. FILES:= \
  58. $(LINUX_DIR)/net/ipv4/ipip.$(LINUX_KMOD_SUFFIX) \
  59. $(LINUX_DIR)/net/ipv4/tunnel4.$(LINUX_KMOD_SUFFIX)
  60. AUTOLOAD:=$(call AutoLoad,30,ipip tunnel4)
  61. endef
  62. define KernelPackage/ipsec
  63. TITLE:=IPsec related modules (IPv4 and IPv6)
  64. DESCRIPTION:=\
  65. Kernel modules for IPsec support in both IPv4 and IPv6.\\\
  66. Includes:\\\
  67. - af_key\\\
  68. - xfrm_user
  69. SUBMENU:=$(NSMENU)
  70. DEPENDS:=@LINUX_2_6
  71. KCONFIG:=$(CONFIG_NET_KEY)
  72. FILES:= \
  73. $(LINUX_DIR)/net/key/af_key.$(LINUX_KMOD_SUFFIX) \
  74. $(LINUX_DIR)/net/xfrm/xfrm_user.$(LINUX_KMOD_SUFFIX)
  75. endef
  76. $(eval $(call KernelPackage,ipsec))
  77. define KernelPackage/ipsec4
  78. TITLE:=IPsec related modules (IPv4)
  79. DESCRIPTION:=\
  80. Kernel modules for IPsec support in IPv4.\\\
  81. Includes:\\\
  82. - ah4\\\
  83. - esp4\\\
  84. - ipcomp\\\
  85. - xfrm4_tunnel
  86. SUBMENU:=$(NSMENU)
  87. KCONFIG:=$(CONFIG_INET_AH)
  88. DEPENDS:=kmod-ipsec
  89. FILES:= $(foreach mod,ah4 esp4 ipcomp xfrm4_tunnel, \
  90. $(LINUX_DIR)/net/ipv4/$(mod).$(LINUX_KMOD_SUFFIX) \
  91. )
  92. endef
  93. $(eval $(call KernelPackage,ipsec4))
  94. define KernelPackage/ipsec6
  95. TITLE:=IPsec related modules (IPv6)
  96. DESCRIPTION:=\
  97. Kernel modules for IPsec support in IPv6.\\\
  98. Includes:\\\
  99. - ah6\\\
  100. - esp6\\\
  101. - ipcomp6\\\
  102. - xfrm6_tunnel
  103. SUBMENU:=$(NSMENU)
  104. KCONFIG:=$(CONFIG_INET6_AH)
  105. DEPENDS:=kmod-ipsec
  106. FILES:= $(foreach mod,ah6 esp6 ipcomp6 xfrm6_tunnel, \
  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. endef
  118. define KernelPackage/ipv6/2.4
  119. FILES:=$(LINUX_DIR)/net/ipv6/ipv6.$(LINUX_KMOD_SUFFIX)
  120. endef
  121. define KernelPackage/ipv6/2.6
  122. FILES:= \
  123. $(LINUX_DIR)/net/ipv6/ipv6.$(LINUX_KMOD_SUFFIX) \
  124. $(LINUX_DIR)/net/ipv6/sit.$(LINUX_KMOD_SUFFIX)
  125. endef
  126. $(eval $(call KernelPackage,ipv6))
  127. define KernelPackage/gre
  128. TITLE:=GRE support
  129. DESCRIPTION:=\
  130. Generic Routing Encapsulation support
  131. KCONFIG=$(CONFIG_NET_IPGRE)
  132. FILES=$(LINUX_DIR)/net/ipv4/ip_gre.$(LINUX_KMOD_SUFFIX)
  133. SUBMENU:=$(NSMENU)
  134. endef
  135. $(eval $(call KernelPackage,gre))
  136. define KernelPackage/tun
  137. TITLE:=Universal TUN/TAP driver
  138. DESCRIPTION:=\
  139. Kernel support for the TUN/TAP tunneling device
  140. KCONFIG:=$(CONFIG_TUN)
  141. FILES:=$(LINUX_DIR)/drivers/net/tun.$(LINUX_KMOD_SUFFIX)
  142. SUBMENU:=$(NSMENU)
  143. AUTOLOAD:=$(call AutoLoad,30,tun)
  144. endef
  145. $(eval $(call KernelPackage,tun))
  146. define KernelPackage/ppp
  147. TITLE:=PPP modules
  148. DESCRIPTION:=\
  149. Kernel modules for PPP support
  150. KCONFIG:=$(CONFIG_PPP)
  151. SUBMENU:=$(NSMENU)
  152. endef
  153. define KernelPackage/ppp/2.6
  154. FILES:= \
  155. $(LINUX_DIR)/drivers/net/ppp_async.ko \
  156. $(LINUX_DIR)/drivers/net/ppp_generic.ko \
  157. $(LINUX_DIR)/drivers/net/slhc.ko \
  158. $(LINUX_DIR)/lib/crc-ccitt.ko
  159. AUTOLOAD:=$(call AutoLoad,30,crc-ccitt slhc ppp_generic ppp_async)
  160. endef
  161. define KernelPackage/ppp/2.4
  162. FILES:= \
  163. $(LINUX_DIR)/drivers/net/ppp_async.o \
  164. $(LINUX_DIR)/drivers/net/ppp_generic.o \
  165. $(LINUX_DIR)/drivers/net/slhc.o
  166. AUTOLOAD:=$(call AutoLoad,30,slhc ppp_generic ppp_async)
  167. endef
  168. $(eval $(call KernelPackage,ppp))
  169. define KernelPackage/pppoe
  170. TITLE:=PPPoE support
  171. DESCRIPTION:=\
  172. Kernel modules for PPPoE (PPP over Ethernet) support
  173. DEPENDS:=kmod-ppp
  174. KCONFIG:=$(CONFIG_PPPOE)
  175. FILES:= \
  176. $(LINUX_DIR)/drivers/net/pppoe.$(LINUX_KMOD_SUFFIX) \
  177. $(LINUX_DIR)/drivers/net/pppox.$(LINUX_KMOD_SUFFIX)
  178. SUBMENU:=$(NSMENU)
  179. endef
  180. $(eval $(call KernelPackage,pppoe))
  181. define KernelPackage/pppoa
  182. TITLE:=PPPoA support
  183. DESCRIPTION:=\
  184. Kernel modules for PPPoA (PPP over ATM) support
  185. DEPENDS:=kmod-ppp
  186. KCONFIG:=$(CONFIG_PPPOATM)
  187. FILES:=$(LINUX_DIR)/net/atm/pppoatm.$(LINUX_KMOD_SUFFIX)
  188. AUTOLOAD:=$(call AutoLoad,40,pppoatm)
  189. SUBMENU:=$(NSMENU)
  190. endef
  191. $(eval $(call KernelPackage,pppoa))
  192. define KernelPackage/mppe
  193. TITLE:=Microsoft PPP compression/encryption
  194. DESCRIPTION:=Kernel modules for Microsoft PPP compression/encryption
  195. DEPENDS:=kmod-ppp
  196. KCONFIG:=$(CONFIG_PPP_MPPE)
  197. SUBMENU:=$(NSMENU)
  198. endef
  199. define KernelPackage/mppe/2.4
  200. FILES:=$(LINUX_DIR)/drivers/net/ppp_mppe_mppc.$(LINUX_KMOD_SUFFIX)
  201. endef
  202. define KernelPackage/mppe/2.6
  203. FILES:=$(LINUX_DIR)/drivers/net/ppp_mppe.$(LINUX_KMOD_SUFFIX)
  204. endef
  205. $(eval $(call KernelPackage,mppe))
  206. define KernelPackage/sched
  207. TITLE:=Traffic schedulers
  208. DESCRIPTION:=\
  209. Kernel schedulers for IP traffic
  210. FILES:=$(LINUX_DIR)/net/sched/*.$(LINUX_KMOD_SUFFIX)
  211. SUBMENU:=$(NSMENU)
  212. endef
  213. $(eval $(call KernelPackage,sched))
  214. define KernelPackage/ax25
  215. TITLE:=AX25 support
  216. DESCRIPTION:=Kernel modules for AX25 support
  217. SUBMENU:=$(NSMENU)
  218. KCONFIG:=$(CONFIG_AX25)
  219. FILES:= \
  220. $(LINUX_DIR)/net/ax25/ax25.$(LINUX_KMOD_SUFFIX) \
  221. $(LINUX_DIR)/drivers/net/hamradio/mkiss.$(LINUX_KMOD_SUFFIX)
  222. AUTOLOAD:=$(call AutoLoad,80,ax25 mkiss)
  223. endef
  224. $(eval $(call KernelPackage,ax25))
  225. define KernelPackage/mp-alg
  226. TITLE:=ECMP caching algorithms
  227. DESCRIPTION:= \
  228. Kernel modules that provide several different algorithms for multipath \\\
  229. route selection from the route cache. The iproute "mpath" argument allows \\\
  230. specifying which algorithm to use for routes. \\\
  231. quagga (at least <=0.99.6) requires a multipath patch to support this \\\
  232. cached mp route feature.
  233. SUBMENU:=$(NSMENU)
  234. KCONFIG:= \
  235. $(CONFIG_IP_ROUTE_MULTIPATH_RR) \
  236. $(CONFIG_IP_ROUTE_MULTIPATH_RANDOM) \
  237. $(CONFIG_IP_ROUTE_MULTIPATH_WRANDOM) \
  238. $(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/sis900
  257. TITLE:=SiS 900 Ethernet support
  258. DESCRIPTION:=\
  259. Kernel modules for Sis 900 Ethernet adapters.
  260. FILES:=$(LINUX_DIR)/drivers/net/sis900.$(LINUX_KMOD_SUFFIX)
  261. KCONFIG:=$(CONFIG_SIS900)
  262. DEPENDS:=@LINUX_2_6_X86
  263. SUBMENU:=$(NDMENU)
  264. AUTOLOAD:=$(call AutoLoad,50,sis900)
  265. endef
  266. $(eval $(call KernelPackage,sis900))
  267. define KernelPackage/via-rhine
  268. TITLE:=Via Rhine ethernet support
  269. DESCRIPTION:=\
  270. Kernel modules for Via Rhine Ethernet chipsets.
  271. FILES:=$(LINUX_DIR)/drivers/net/via-rhine.$(LINUX_KMOD_SUFFIX)
  272. KCONFIG:=$(CONFIG_VIA_RHINE)
  273. DEPENDS:=@LINUX_2_6_X86
  274. SUBMENU:=$(NDMENU)
  275. AUTOLOAD:=$(call AutoLoad,50,via-rhine)
  276. endef
  277. $(eval $(call KernelPackage,via-rhine))
  278. define KernelPackage/8139too
  279. TITLE:=RealTek RTL-8139 PCI Fast Ethernet Adapter kernel support
  280. DESCRIPTION:=\
  281. Kernel modules for RealTek RTL-8139 PCI Fast Ethernet adapters.
  282. FILES:=$(LINUX_DIR)/drivers/net/8139too.$(LINUX_KMOD_SUFFIX)
  283. KCONFIG:=$(CONFIG_8139TOO)
  284. DEPENDS:=@LINUX_2_6_X86
  285. SUBMENU:=$(NDMENU)
  286. AUTOLOAD:=$(call AutoLoad,50,8139too)
  287. endef
  288. $(eval $(call KernelPackage,8139too))
  289. define KernelPackage/r8169
  290. TITLE:=RealTek RTL-8169 PCI Gigabit Ethernet Adapter kernel support
  291. DESCRIPTION:=\
  292. Kernel modules for RealTek RTL-8169 PCI Gigabit Ethernet adapters.
  293. FILES:=$(LINUX_DIR)/drivers/net/r8169.$(LINUX_KMOD_SUFFIX)
  294. KCONFIG:=$(CONFIG_R8169)
  295. DEPENDS:=@LINUX_2_6_X86
  296. SUBMENU:=$(NDMENU)
  297. AUTOLOAD:=$(call AutoLoad,50,r8169)
  298. endef
  299. $(eval $(call KernelPackage,r8169))
  300. define KernelPackage/ne2k-pci
  301. TITLE:=ne2k-pci Ethernet Adapter kernel support
  302. DESCRIPTION:=\
  303. ne2k-pci Ethernet Adapter kernel support.
  304. FILES:=$(LINUX_DIR)/drivers/net/ne2k-pci.$(LINUX_KMOD_SUFFIX) \
  305. $(LINUX_DIR)/drivers/net/8390.$(LINUX_KMOD_SUFFIX)
  306. KCONFIG:=$(CONFIG_NE2K_PCI)
  307. DEPENDS:=@LINUX_2_6_X86
  308. SUBMENU:=$(NDMENU)
  309. AUTOLOAD:=$(call AutoLoad,50,8390 ne2k-pci)
  310. endef
  311. $(eval $(call KernelPackage,ne2k-pci))
  312. define KernelPackage/ixp4xx-npe
  313. TITLE:=Intel(R) IXP4xx ethernet support
  314. DESCRIPTION:=\
  315. Kernel modules for Intel(R) IXP4xx onboard ethernet.
  316. FILES:=$(LINUX_DIR)/drivers/net/ixp4xx/ixp4xx_npe.$(LINUX_KMOD_SUFFIX) \
  317. $(LINUX_DIR)/drivers/net/ixp4xx/ixp4xx_qmgr.$(LINUX_KMOD_SUFFIX) \
  318. $(LINUX_DIR)/drivers/net/ixp4xx/ixp4xx_mac.$(LINUX_KMOD_SUFFIX)
  319. KCONFIG:=$(CONFIG_IXP4XX_MAC)
  320. DEPENDS:=@LINUX_2_6_IXP4XX
  321. SUBMENU:=$(NDMENU)
  322. AUTOLOAD:=$(call AutoLoad,20,ixp4xx_npe ixp4xx_qmgr ixp4xx_mac)
  323. endef
  324. $(eval $(call KernelPackage,ixp4xx-npe))
  325. define KernelPackage/e100
  326. TITLE:=Intel(R) PRO/100+ cards kernel support
  327. DESCRIPTION:=\
  328. Kernel modules for Intel(R) PRO/100+ Ethernet adapters.
  329. FILES:=$(LINUX_DIR)/drivers/net/e100.$(LINUX_KMOD_SUFFIX)
  330. KCONFIG:=$(CONFIG_E100)
  331. DEPENDS:=@LINUX_2_6_X86
  332. SUBMENU:=$(NDMENU)
  333. AUTOLOAD:=$(call AutoLoad,50,e100)
  334. endef
  335. $(eval $(call KernelPackage,e100))
  336. define KernelPackage/e1000
  337. TITLE:=Intel(R) PRO/1000 cards kernel support
  338. DESCRIPTION:=\
  339. Kernel modules for Intel(R) PRO/1000 Ethernet adapters.
  340. FILES:=$(LINUX_DIR)/drivers/net/e1000/e1000.$(LINUX_KMOD_SUFFIX)
  341. KCONFIG:=$(CONFIG_E1000)
  342. DEPENDS:=@LINUX_2_6_X86
  343. SUBMENU:=$(NDMENU)
  344. AUTOLOAD:=$(call AutoLoad,50,e1000)
  345. endef
  346. $(eval $(call KernelPackage,e1000))
  347. define KernelPackage/3c59x
  348. TITLE:=3Com 3c590/3c900 series (592/595/597) Vortex/Boomerang
  349. DESCRIPTION:=\
  350. This option enables driver support for a large number of 10mbps and \\\
  351. 10/100mbps EISA, PCI and PCMCIA 3Com Ethernet adapters: \\\
  352. - "Vortex" (Fast EtherLink 3c590/3c592/3c595/3c597) EISA and PCI \\\
  353. - "Boomerang" (EtherLink XL 3c900 or 3c905) PCI \\\
  354. - "Cyclone" (3c540/3c900/3c905/3c980/3c575/3c656) PCI and Cardbus \\\
  355. - "Tornado" (3c905) PCI \\\
  356. - "Hurricane" (3c555/3cSOHO) PCI
  357. FILES:=$(LINUX_DIR)/drivers/net/3c59x.$(LINUX_KMOD_SUFFIX)
  358. KCONFIG:=$(CONFIG_3C59X)
  359. DEPENDS:=@LINUX_2_6_X86
  360. SUBMENU:=$(NDMENU)
  361. AUTOLOAD:=$(call AutoLoad,50,3c59x)
  362. endef
  363. $(eval $(call KernelPackage,3c59x))