network.mk 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422
  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 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. 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. define KernelPackage/ipip/2.4
  52. FILES:=$(LINUX_DIR)/net/ipv4/ipip.$(LINUX_KMOD_SUFFIX)
  53. AUTOLOAD:=$(call AutoLoad,30,ipip)
  54. endef
  55. define KernelPackage/ipip/2.6
  56. FILES:= \
  57. $(LINUX_DIR)/net/ipv4/ipip.$(LINUX_KMOD_SUFFIX) \
  58. $(LINUX_DIR)/net/ipv4/tunnel4.$(LINUX_KMOD_SUFFIX)
  59. AUTOLOAD:=$(call AutoLoad,30,ipip tunnel4)
  60. endef
  61. $(eval $(call KernelPackage,ipip))
  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. - tunnel6
  104. SUBMENU:=$(NSMENU)
  105. KCONFIG:=CONFIG_INET6_AH
  106. DEPENDS:=kmod-ipsec
  107. FILES:= $(foreach mod,ah6 esp6 ipcomp6 xfrm6_tunnel tunnel6, \
  108. $(LINUX_DIR)/net/ipv6/$(mod).$(LINUX_KMOD_SUFFIX) \
  109. )
  110. endef
  111. $(eval $(call KernelPackage,ipsec6))
  112. define KernelPackage/ipv6
  113. TITLE:=IPv6 support
  114. DESCRIPTION:=\
  115. Kernel modules for IPv6 support
  116. KCONFIG:=CONFIG_IPV6
  117. SUBMENU:=$(NSMENU)
  118. AUTOLOAD:=$(call AutoLoad,20,ipv6)
  119. endef
  120. define KernelPackage/ipv6/2.4
  121. FILES:=$(LINUX_DIR)/net/ipv6/ipv6.$(LINUX_KMOD_SUFFIX)
  122. endef
  123. define KernelPackage/ipv6/2.6
  124. FILES:= \
  125. $(LINUX_DIR)/net/ipv6/ipv6.$(LINUX_KMOD_SUFFIX) \
  126. $(LINUX_DIR)/net/ipv6/sit.$(LINUX_KMOD_SUFFIX)
  127. endef
  128. $(eval $(call KernelPackage,ipv6))
  129. define KernelPackage/gre
  130. TITLE:=GRE support
  131. DESCRIPTION:=\
  132. Generic Routing Encapsulation support
  133. KCONFIG:=CONFIG_NET_IPGRE
  134. FILES=$(LINUX_DIR)/net/ipv4/ip_gre.$(LINUX_KMOD_SUFFIX)
  135. SUBMENU:=$(NSMENU)
  136. endef
  137. $(eval $(call KernelPackage,gre))
  138. define KernelPackage/tun
  139. TITLE:=Universal TUN/TAP driver
  140. DESCRIPTION:=\
  141. Kernel support for the TUN/TAP tunneling device
  142. KCONFIG:=CONFIG_TUN
  143. FILES:=$(LINUX_DIR)/drivers/net/tun.$(LINUX_KMOD_SUFFIX)
  144. SUBMENU:=$(NSMENU)
  145. AUTOLOAD:=$(call AutoLoad,30,tun)
  146. endef
  147. $(eval $(call KernelPackage,tun))
  148. define KernelPackage/ppp
  149. TITLE:=PPP modules
  150. DESCRIPTION:=\
  151. Kernel modules for PPP support
  152. KCONFIG:=CONFIG_PPP
  153. SUBMENU:=$(NSMENU)
  154. endef
  155. define KernelPackage/ppp/2.6
  156. FILES:= \
  157. $(LINUX_DIR)/drivers/net/ppp_async.ko \
  158. $(LINUX_DIR)/drivers/net/ppp_generic.ko \
  159. $(LINUX_DIR)/drivers/net/slhc.ko \
  160. $(LINUX_DIR)/lib/crc-ccitt.ko
  161. AUTOLOAD:=$(call AutoLoad,30,crc-ccitt slhc ppp_generic ppp_async)
  162. endef
  163. define KernelPackage/ppp/2.4
  164. FILES:= \
  165. $(LINUX_DIR)/drivers/net/ppp_async.o \
  166. $(LINUX_DIR)/drivers/net/ppp_generic.o \
  167. $(LINUX_DIR)/drivers/net/slhc.o
  168. AUTOLOAD:=$(call AutoLoad,30,slhc ppp_generic ppp_async)
  169. endef
  170. $(eval $(call KernelPackage,ppp))
  171. define KernelPackage/pppoe
  172. TITLE:=PPPoE support
  173. DESCRIPTION:=\
  174. Kernel modules for PPPoE (PPP over Ethernet) support
  175. DEPENDS:=kmod-ppp
  176. KCONFIG:=CONFIG_PPPOE
  177. FILES:= \
  178. $(LINUX_DIR)/drivers/net/pppoe.$(LINUX_KMOD_SUFFIX) \
  179. $(LINUX_DIR)/drivers/net/pppox.$(LINUX_KMOD_SUFFIX)
  180. SUBMENU:=$(NSMENU)
  181. endef
  182. $(eval $(call KernelPackage,pppoe))
  183. define KernelPackage/pppoa
  184. TITLE:=PPPoA support
  185. DESCRIPTION:=\
  186. Kernel modules for PPPoA (PPP over ATM) support
  187. DEPENDS:=kmod-ppp
  188. KCONFIG:=CONFIG_PPPOATM
  189. FILES:=$(LINUX_DIR)/net/atm/pppoatm.$(LINUX_KMOD_SUFFIX)
  190. AUTOLOAD:=$(call AutoLoad,40,pppoatm)
  191. SUBMENU:=$(NSMENU)
  192. endef
  193. $(eval $(call KernelPackage,pppoa))
  194. define KernelPackage/mppe
  195. TITLE:=Microsoft PPP compression/encryption
  196. DESCRIPTION:=Kernel modules for Microsoft PPP compression/encryption
  197. DEPENDS:=kmod-ppp
  198. KCONFIG:=CONFIG_PPP_MPPE_MPPC CONFIG_PPP_MPPE
  199. SUBMENU:=$(NSMENU)
  200. endef
  201. define KernelPackage/mppe/2.4
  202. FILES:=$(LINUX_DIR)/drivers/net/ppp_mppe_mppc.$(LINUX_KMOD_SUFFIX)
  203. AUTOLOAD:=$(call AutoLoad,31,ppp_mppe_mppc)
  204. endef
  205. define KernelPackage/mppe/2.6
  206. FILES:=$(LINUX_DIR)/drivers/net/ppp_mppe.$(LINUX_KMOD_SUFFIX)
  207. AUTOLOAD:=$(call AutoLoad,31,ppp_mppe)
  208. endef
  209. $(eval $(call KernelPackage,mppe))
  210. define KernelPackage/sched
  211. TITLE:=Traffic schedulers
  212. DESCRIPTION:=\
  213. Kernel schedulers for IP traffic
  214. FILES:=$(LINUX_DIR)/net/sched/*.$(LINUX_KMOD_SUFFIX)
  215. SUBMENU:=$(NSMENU)
  216. endef
  217. $(eval $(call KernelPackage,sched))
  218. define KernelPackage/ax25
  219. TITLE:=AX25 support
  220. DESCRIPTION:=Kernel modules for AX25 support
  221. SUBMENU:=$(NSMENU)
  222. KCONFIG:=CONFIG_AX25
  223. FILES:= \
  224. $(LINUX_DIR)/net/ax25/ax25.$(LINUX_KMOD_SUFFIX) \
  225. $(LINUX_DIR)/drivers/net/hamradio/mkiss.$(LINUX_KMOD_SUFFIX)
  226. AUTOLOAD:=$(call AutoLoad,80,ax25 mkiss)
  227. endef
  228. $(eval $(call KernelPackage,ax25))
  229. define KernelPackage/mp-alg
  230. TITLE:=ECMP caching algorithms
  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/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/via-velocity
  279. TITLE:=VIA Velocity Gigabit Ethernet Adapter kernel support
  280. DESCRIPTION:=\
  281. Kernel modules for VIA Velocity Gigabit Ethernet chipsets.
  282. FILES:=$(LINUX_DIR)/drivers/net/via-velocity.$(LINUX_KMOD_SUFFIX)
  283. KCONFIG:=CONFIG_VIA_VELOCITY
  284. DEPENDS:=@LINUX_2_6_IXP4XX
  285. SUBMENU:=$(NDMENU)
  286. AUTOLOAD:=$(call AutoLoad,50,via-velocity)
  287. endef
  288. $(eval $(call KernelPackage,via-velocity))
  289. define KernelPackage/8139too
  290. TITLE:=RealTek RTL-8139 PCI Fast Ethernet Adapter kernel support
  291. DESCRIPTION:=\
  292. Kernel modules for RealTek RTL-8139 PCI Fast Ethernet adapters.
  293. FILES:=$(LINUX_DIR)/drivers/net/8139too.$(LINUX_KMOD_SUFFIX)
  294. KCONFIG:=CONFIG_8139TOO
  295. DEPENDS:=@LINUX_2_6_X86
  296. SUBMENU:=$(NDMENU)
  297. AUTOLOAD:=$(call AutoLoad,50,8139too)
  298. endef
  299. $(eval $(call KernelPackage,8139too))
  300. define KernelPackage/r8169
  301. TITLE:=RealTek RTL-8169 PCI Gigabit Ethernet Adapter kernel support
  302. DESCRIPTION:=\
  303. Kernel modules for RealTek RTL-8169 PCI Gigabit Ethernet adapters.
  304. FILES:=$(LINUX_DIR)/drivers/net/r8169.$(LINUX_KMOD_SUFFIX)
  305. KCONFIG:=CONFIG_R8169 CONFIG_R8169_NAPI=y CONFIG_R8169_VLAN=n
  306. DEPENDS:=@LINUX_2_6_X86
  307. SUBMENU:=$(NDMENU)
  308. AUTOLOAD:=$(call AutoLoad,50,r8169)
  309. endef
  310. $(eval $(call KernelPackage,r8169))
  311. define KernelPackage/ne2k-pci
  312. TITLE:=ne2k-pci Ethernet Adapter kernel support
  313. DESCRIPTION:=\
  314. ne2k-pci Ethernet Adapter kernel support.
  315. FILES:=$(LINUX_DIR)/drivers/net/ne2k-pci.$(LINUX_KMOD_SUFFIX) \
  316. $(LINUX_DIR)/drivers/net/8390.$(LINUX_KMOD_SUFFIX)
  317. KCONFIG:=CONFIG_NE2K_PCI
  318. DEPENDS:=@LINUX_2_6_X86
  319. SUBMENU:=$(NDMENU)
  320. AUTOLOAD:=$(call AutoLoad,50,8390 ne2k-pci)
  321. endef
  322. $(eval $(call KernelPackage,ne2k-pci))
  323. define KernelPackage/ixp4xx-npe
  324. TITLE:=Intel(R) IXP4xx ethernet support
  325. DESCRIPTION:=\
  326. Kernel modules for Intel(R) IXP4xx onboard ethernet.
  327. FILES:=$(LINUX_DIR)/drivers/net/ixp4xx/ixp4xx_npe.$(LINUX_KMOD_SUFFIX) \
  328. $(LINUX_DIR)/drivers/net/ixp4xx/ixp4xx_qmgr.$(LINUX_KMOD_SUFFIX) \
  329. $(LINUX_DIR)/drivers/net/ixp4xx/ixp4xx_mac.$(LINUX_KMOD_SUFFIX)
  330. KCONFIG:=CONFIG_IXP4XX_MAC
  331. DEPENDS:=@LINUX_2_6_IXP4XX
  332. SUBMENU:=$(NDMENU)
  333. AUTOLOAD:=$(call AutoLoad,20,ixp4xx_npe ixp4xx_qmgr ixp4xx_mac)
  334. endef
  335. $(eval $(call KernelPackage,ixp4xx-npe))
  336. define KernelPackage/e100
  337. TITLE:=Intel(R) PRO/100+ cards kernel support
  338. DESCRIPTION:=\
  339. Kernel modules for Intel(R) PRO/100+ Ethernet adapters.
  340. FILES:=$(LINUX_DIR)/drivers/net/e100.$(LINUX_KMOD_SUFFIX)
  341. KCONFIG:=CONFIG_E100
  342. DEPENDS:=@LINUX_2_6_X86
  343. SUBMENU:=$(NDMENU)
  344. AUTOLOAD:=$(call AutoLoad,50,e100)
  345. endef
  346. $(eval $(call KernelPackage,e100))
  347. define KernelPackage/e1000
  348. TITLE:=Intel(R) PRO/1000 cards kernel support
  349. DESCRIPTION:=\
  350. Kernel modules for Intel(R) PRO/1000 Ethernet adapters.
  351. FILES:=$(LINUX_DIR)/drivers/net/e1000/e1000.$(LINUX_KMOD_SUFFIX)
  352. KCONFIG:=CONFIG_E1000
  353. DEPENDS:=@LINUX_2_6_X86
  354. SUBMENU:=$(NDMENU)
  355. AUTOLOAD:=$(call AutoLoad,50,e1000)
  356. endef
  357. $(eval $(call KernelPackage,e1000))
  358. define KernelPackage/3c59x
  359. TITLE:=3Com 3c590/3c900 series (592/595/597) Vortex/Boomerang
  360. DESCRIPTION:=\
  361. This option enables driver support for a large number of 10mbps and \\\
  362. 10/100mbps EISA, PCI and PCMCIA 3Com Ethernet adapters: \\\
  363. - "Vortex" (Fast EtherLink 3c590/3c592/3c595/3c597) EISA and PCI \\\
  364. - "Boomerang" (EtherLink XL 3c900 or 3c905) PCI \\\
  365. - "Cyclone" (3c540/3c900/3c905/3c980/3c575/3c656) PCI and Cardbus \\\
  366. - "Tornado" (3c905) PCI \\\
  367. - "Hurricane" (3c555/3cSOHO) PCI
  368. FILES:=$(LINUX_DIR)/drivers/net/3c59x.$(LINUX_KMOD_SUFFIX)
  369. KCONFIG:=CONFIG_3C59X
  370. DEPENDS:=@LINUX_2_6_X86
  371. SUBMENU:=$(NDMENU)
  372. AUTOLOAD:=$(call AutoLoad,50,3c59x)
  373. endef
  374. $(eval $(call KernelPackage,3c59x))