netsupport.mk 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744
  1. #
  2. # Copyright (C) 2006-2008 OpenWrt.org
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. # See /LICENSE for more information.
  6. #
  7. NETWORK_SUPPORT_MENU:=Network Support
  8. define KernelPackage/atm
  9. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  10. TITLE:=ATM support
  11. KCONFIG:= \
  12. CONFIG_ATM \
  13. CONFIG_ATM_BR2684
  14. FILES:= \
  15. $(LINUX_DIR)/net/atm/atm.ko \
  16. $(LINUX_DIR)/net/atm/br2684.ko
  17. AUTOLOAD:=$(call AutoLoad,30,atm br2684)
  18. endef
  19. define KernelPackage/atm/description
  20. Kernel modules for ATM support
  21. endef
  22. $(eval $(call KernelPackage,atm))
  23. define KernelPackage/atmtcp
  24. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  25. TITLE:=ATM over TCP
  26. DEPENDS:=kmod-atm
  27. KCONFIG:=CONFIG_ATM_TCP CONFIG_ATM_DRIVERS=y
  28. FILES:=$(LINUX_DIR)/drivers/atm/atmtcp.ko
  29. AUTOLOAD:=$(call AutoLoad,40,atmtcp)
  30. endef
  31. define KernelPackage/atmtcp/description
  32. Kernel module for ATM over TCP support
  33. endef
  34. $(eval $(call KernelPackage,atmtcp))
  35. define KernelPackage/appletalk
  36. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  37. TITLE:=Appletalk protocol support
  38. KCONFIG:= \
  39. CONFIG_ATALK \
  40. CONFIG_DEV_APPLETALK \
  41. CONFIG_IPDDP \
  42. CONFIG_IPDDP_ENCAP=y \
  43. CONFIG_IPDDP_DECAP=y
  44. FILES:= \
  45. $(LINUX_DIR)/net/appletalk/appletalk.ko \
  46. $(LINUX_DIR)/drivers/net/appletalk/ipddp.ko
  47. AUTOLOAD:=$(call AutoLoad,40,appletalk ipddp)
  48. endef
  49. define KernelPackage/appletalk/description
  50. Kernel module for AppleTalk protocol.
  51. endef
  52. $(eval $(call KernelPackage,appletalk))
  53. define KernelPackage/bonding
  54. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  55. TITLE:=Ethernet bonding driver
  56. KCONFIG:=CONFIG_BONDING
  57. FILES:=$(LINUX_DIR)/drivers/net/bonding/bonding.ko
  58. AUTOLOAD:=$(call AutoLoad,40,bonding)
  59. endef
  60. define KernelPackage/bonding/description
  61. Kernel module for NIC bonding.
  62. endef
  63. $(eval $(call KernelPackage,bonding))
  64. define KernelPackage/capi
  65. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  66. TITLE:=CAPI (ISDN) Support
  67. KCONFIG:= \
  68. CONFIG_ISDN_CAPI \
  69. CONFIG_ISDN_CAPI_CAPI20 \
  70. CONFIG_ISDN_CAPIFS \
  71. CONFIG_ISDN_CAPI_CAPIFS
  72. FILES:= \
  73. $(LINUX_DIR)/drivers/isdn/capi/kernelcapi.ko \
  74. $(LINUX_DIR)/drivers/isdn/capi/capi.ko
  75. ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.0)),1)
  76. AUTOLOAD:=$(call AutoLoad,30,kernelcapi capi)
  77. else
  78. FILES+= $(LINUX_DIR)/drivers/isdn/capi/capifs.ko
  79. AUTOLOAD:=$(call AutoLoad,30,kernelcapi capifs capi)
  80. endif
  81. endef
  82. define KernelPackage/capi/description
  83. Kernel module for basic CAPI (ISDN) support
  84. endef
  85. $(eval $(call KernelPackage,capi))
  86. define KernelPackage/misdn
  87. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  88. TITLE:=mISDN (ISDN) Support
  89. KCONFIG:= \
  90. CONFIG_ISDN=y \
  91. CONFIG_MISDN \
  92. CONFIG_MISDN_DSP \
  93. CONFIG_MISDN_L1OIP
  94. FILES:= \
  95. $(LINUX_DIR)/drivers/isdn/mISDN/mISDN_core.ko \
  96. $(LINUX_DIR)/drivers/isdn/mISDN/mISDN_dsp.ko \
  97. $(LINUX_DIR)/drivers/isdn/mISDN/l1oip.ko
  98. AUTOLOAD:=$(call AutoLoad,30,mISDN_core mISDN_dsp l1oip)
  99. endef
  100. define KernelPackage/misdn/description
  101. Modular ISDN driver support
  102. endef
  103. $(eval $(call KernelPackage,misdn))
  104. define KernelPackage/isdn4linux
  105. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  106. TITLE:=Old ISDN4Linux (deprecated)
  107. KCONFIG:= \
  108. CONFIG_ISDN=y \
  109. CONFIG_ISDN_I4L \
  110. CONFIG_ISDN_PPP=y \
  111. CONFIG_ISDN_PPP_VJ=y \
  112. CONFIG_ISDN_MPP=y \
  113. CONFIG_IPPP_FILTER=y \
  114. CONFIG_ISDN_PPP_BSDCOMP \
  115. CONFIG_ISDN_CAPI_MIDDLEWARE=y \
  116. CONFIG_ISDN_CAPI_CAPIFS_BOOL=y \
  117. CONFIG_ISDN_AUDIO=y \
  118. CONFIG_ISDN_TTY_FAX=y \
  119. CONFIG_ISDN_X25=y \
  120. CONFIG_ISDN_DIVERSION
  121. FILES:= \
  122. $(LINUX_DIR)/drivers/isdn/divert/dss1_divert.ko \
  123. $(LINUX_DIR)/drivers/isdn/i4l/isdn.ko \
  124. $(LINUX_DIR)/drivers/isdn/i4l/isdn_bsdcomp.ko
  125. AUTOLOAD:=$(call AutoLoad,40,isdn isdn_bsdcomp dss1_divert)
  126. endef
  127. define KernelPackage/isdn4linux/description
  128. This driver allows you to use an ISDN adapter for networking
  129. endef
  130. $(eval $(call KernelPackage,isdn4linux))
  131. define KernelPackage/ipip
  132. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  133. TITLE:=IP-in-IP encapsulation
  134. DEPENDS:=+kmod-iptunnel4
  135. KCONFIG:=CONFIG_NET_IPIP
  136. FILES:=$(LINUX_DIR)/net/ipv4/ipip.ko
  137. AUTOLOAD:=$(call AutoLoad,32,ipip)
  138. endef
  139. define KernelPackage/ipip/description
  140. Kernel modules for IP-in-IP encapsulation
  141. endef
  142. $(eval $(call KernelPackage,ipip))
  143. IPSEC-m:= \
  144. key/af_key \
  145. xfrm/xfrm_ipcomp \
  146. xfrm/xfrm_user \
  147. define KernelPackage/ipsec
  148. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  149. TITLE:=IPsec related modules (IPv4 and IPv6)
  150. DEPENDS:=+kmod-crypto-iv +kmod-crypto-des +kmod-crypto-hmac +kmod-crypto-md5 +kmod-crypto-sha1 +kmod-crypto-deflate +kmod-crypto-cbc
  151. KCONFIG:= \
  152. CONFIG_NET_KEY \
  153. CONFIG_XFRM_USER \
  154. CONFIG_INET_IPCOMP \
  155. CONFIG_XFRM_IPCOMP
  156. FILES:=$(foreach mod,$(IPSEC-m),$(LINUX_DIR)/net/$(mod).ko)
  157. AUTOLOAD:=$(call AutoLoad,30,$(notdir $(IPSEC-m)))
  158. endef
  159. define KernelPackage/ipsec/description
  160. Kernel modules for IPsec support in both IPv4 and IPv6.
  161. Includes:
  162. - af_key
  163. - xfrm_ipcomp
  164. - xfrm_user
  165. endef
  166. $(eval $(call KernelPackage,ipsec))
  167. IPSEC4-m:= \
  168. ipv4/ah4 \
  169. ipv4/esp4 \
  170. ipv4/xfrm4_mode_beet \
  171. ipv4/xfrm4_mode_transport \
  172. ipv4/xfrm4_mode_tunnel \
  173. ipv4/xfrm4_tunnel \
  174. ipv4/ipcomp \
  175. define KernelPackage/ipsec4
  176. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  177. TITLE:=IPsec related modules (IPv4)
  178. DEPENDS:=kmod-ipsec +kmod-iptunnel4
  179. KCONFIG:= \
  180. CONFIG_INET_AH \
  181. CONFIG_INET_ESP \
  182. CONFIG_INET_IPCOMP \
  183. CONFIG_INET_XFRM_MODE_BEET \
  184. CONFIG_INET_XFRM_MODE_TRANSPORT \
  185. CONFIG_INET_XFRM_MODE_TUNNEL \
  186. CONFIG_INET_XFRM_TUNNEL
  187. FILES:=$(foreach mod,$(IPSEC4-m),$(LINUX_DIR)/net/$(mod).ko)
  188. AUTOLOAD:=$(call AutoLoad,32,$(notdir $(IPSEC4-m)))
  189. endef
  190. define KernelPackage/ipsec4/description
  191. Kernel modules for IPsec support in IPv4.
  192. Includes:
  193. - ah4
  194. - esp4
  195. - ipcomp
  196. - xfrm4_mode_beet
  197. - xfrm4_mode_transport
  198. - xfrm4_mode_tunnel
  199. - xfrm4_tunnel
  200. endef
  201. $(eval $(call KernelPackage,ipsec4))
  202. IPSEC6-m:= \
  203. ipv6/ah6 \
  204. ipv6/esp6 \
  205. ipv6/xfrm6_mode_beet \
  206. ipv6/xfrm6_mode_transport \
  207. ipv6/xfrm6_mode_tunnel \
  208. ipv6/xfrm6_tunnel \
  209. ipv6/ipcomp6 \
  210. define KernelPackage/ipsec6
  211. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  212. TITLE:=IPsec related modules (IPv6)
  213. DEPENDS:=kmod-ipsec +kmod-iptunnel6
  214. KCONFIG:= \
  215. CONFIG_INET6_AH \
  216. CONFIG_INET6_ESP \
  217. CONFIG_INET6_IPCOMP \
  218. CONFIG_INET6_XFRM_MODE_BEET \
  219. CONFIG_INET6_XFRM_MODE_TRANSPORT \
  220. CONFIG_INET6_XFRM_MODE_TUNNEL \
  221. CONFIG_INET6_XFRM_TUNNEL
  222. FILES:=$(foreach mod,$(IPSEC6-m),$(LINUX_DIR)/net/$(mod).ko)
  223. AUTOLOAD:=$(call AutoLoad,32,$(notdir $(IPSEC6-m)))
  224. endef
  225. define KernelPackage/ipsec6/description
  226. Kernel modules for IPsec support in IPv6.
  227. Includes:
  228. - ah6
  229. - esp6
  230. - ipcomp6
  231. - xfrm6_mode_beet
  232. - xfrm6_mode_transport
  233. - xfrm6_mode_tunnel
  234. - xfrm6_tunnel
  235. endef
  236. $(eval $(call KernelPackage,ipsec6))
  237. # NOTE: tunnel4 is not selectable by itself, so enable ipip for that
  238. define KernelPackage/iptunnel4
  239. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  240. TITLE:=IPv4 tunneling
  241. KCONFIG:= \
  242. CONFIG_NET_IPIP \
  243. CONFIG_INET_TUNNEL
  244. FILES:=$(LINUX_DIR)/net/ipv4/tunnel4.ko
  245. AUTOLOAD:=$(call AutoLoad,31,tunnel4)
  246. endef
  247. define KernelPackage/iptunnel4/description
  248. Kernel modules for IPv4 tunneling
  249. endef
  250. $(eval $(call KernelPackage,iptunnel4))
  251. define KernelPackage/iptunnel6
  252. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  253. TITLE:=IPv6 tunneling
  254. DEPENDS:= +kmod-ipv6
  255. KCONFIG:= \
  256. CONFIG_INET6_TUNNEL
  257. FILES:=$(LINUX_DIR)/net/ipv6/tunnel6.ko
  258. AUTOLOAD:=$(call AutoLoad,31,tunnel6)
  259. endef
  260. define KernelPackage/iptunnel6/description
  261. Kernel modules for IPv6 tunneling
  262. endef
  263. $(eval $(call KernelPackage,iptunnel6))
  264. define KernelPackage/ipv6
  265. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  266. TITLE:=IPv6 support
  267. KCONFIG:= \
  268. CONFIG_IPV6 \
  269. CONFIG_IPV6_PRIVACY=y \
  270. CONFIG_IPV6_MULTIPLE_TABLES=y \
  271. CONFIG_IPV6_MROUTE=y \
  272. CONFIG_IPV6_PIMSM_V2=n \
  273. CONFIG_IPV6_SUBTREES=y
  274. FILES:=$(LINUX_DIR)/net/ipv6/ipv6.ko
  275. AUTOLOAD:=$(call AutoLoad,20,ipv6)
  276. endef
  277. define KernelPackage/ipv6/description
  278. Kernel modules for IPv6 support
  279. endef
  280. $(eval $(call KernelPackage,ipv6))
  281. define KernelPackage/sit
  282. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  283. DEPENDS:=+kmod-ipv6 +kmod-iptunnel4
  284. TITLE:=IPv6-in-IPv4 tunnel
  285. KCONFIG:=CONFIG_IPV6_SIT \
  286. CONFIG_IPV6_SIT_6RD=y
  287. FILES:=$(LINUX_DIR)/net/ipv6/sit.ko
  288. AUTOLOAD:=$(call AutoLoad,32,sit)
  289. endef
  290. define KernelPackage/sit/description
  291. Kernel modules for IPv6-in-IPv4 tunnelling
  292. endef
  293. $(eval $(call KernelPackage,sit))
  294. define KernelPackage/ip6-tunnel
  295. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  296. TITLE:=IP-in-IPv6 tunnelling
  297. DEPENDS:= +kmod-ipv6 +kmod-iptunnel6
  298. KCONFIG:= CONFIG_IPV6_TUNNEL
  299. FILES:=$(LINUX_DIR)/net/ipv6/ip6_tunnel.ko
  300. AUTOLOAD:=$(call AutoLoad,32,ip6_tunnel)
  301. endef
  302. define KernelPackage/ip6-tunnel/description
  303. Kernel modules for IPv6-in-IPv6 and IPv4-in-IPv6 tunnelling
  304. endef
  305. $(eval $(call KernelPackage,ip6-tunnel))
  306. define KernelPackage/gre
  307. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  308. TITLE:=GRE support
  309. DEPENDS:=+PACKAGE_kmod-ipv6:kmod-ipv6
  310. KCONFIG:=CONFIG_NET_IPGRE CONFIG_NET_IPGRE_DEMUX
  311. ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.37)),1)
  312. FILES:=$(LINUX_DIR)/net/ipv4/ip_gre.ko $(LINUX_DIR)/net/ipv4/gre.ko
  313. AUTOLOAD:=$(call AutoLoad,39,gre ip_gre)
  314. else
  315. FILES:=$(LINUX_DIR)/net/ipv4/ip_gre.ko
  316. AUTOLOAD:=$(call AutoLoad,39,ip_gre)
  317. endif
  318. endef
  319. define KernelPackage/gre/description
  320. Generic Routing Encapsulation support
  321. endef
  322. $(eval $(call KernelPackage,gre))
  323. define KernelPackage/tun
  324. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  325. TITLE:=Universal TUN/TAP driver
  326. KCONFIG:=CONFIG_TUN
  327. FILES:=$(LINUX_DIR)/drivers/net/tun.ko
  328. AUTOLOAD:=$(call AutoLoad,30,tun)
  329. endef
  330. define KernelPackage/tun/description
  331. Kernel support for the TUN/TAP tunneling device
  332. endef
  333. $(eval $(call KernelPackage,tun))
  334. define KernelPackage/ppp
  335. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  336. TITLE:=PPP modules
  337. DEPENDS:=+kmod-crc-ccitt
  338. KCONFIG:= \
  339. CONFIG_PPP \
  340. CONFIG_PPP_ASYNC \
  341. CONFIG_SLHC
  342. FILES:= \
  343. $(LINUX_DIR)/drivers/net/ppp_async.ko \
  344. $(LINUX_DIR)/drivers/net/ppp_generic.ko \
  345. $(LINUX_DIR)/drivers/net/slhc.ko
  346. AUTOLOAD:=$(call AutoLoad,30,slhc ppp_generic ppp_async)
  347. endef
  348. define KernelPackage/ppp/description
  349. Kernel modules for PPP support
  350. endef
  351. $(eval $(call KernelPackage,ppp))
  352. define KernelPackage/ppp-synctty
  353. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  354. TITLE:=PPP sync tty support
  355. DEPENDS:=kmod-ppp
  356. KCONFIG:=CONFIG_PPP_SYNC_TTY
  357. FILES:=$(LINUX_DIR)/drivers/net/ppp_synctty.ko
  358. AUTOLOAD:=$(call AutoLoad,40,ppp_synctty)
  359. endef
  360. define KernelPackage/ppp-synctty/description
  361. Kernel modules for PPP sync tty support
  362. endef
  363. $(eval $(call KernelPackage,ppp-synctty))
  364. define KernelPackage/pppoe
  365. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  366. TITLE:=PPPoE support
  367. DEPENDS:=kmod-ppp
  368. KCONFIG:=CONFIG_PPPOE
  369. FILES:= \
  370. $(LINUX_DIR)/drivers/net/pppoe.ko \
  371. $(LINUX_DIR)/drivers/net/pppox.ko
  372. AUTOLOAD:=$(call AutoLoad,40,pppox pppoe)
  373. endef
  374. define KernelPackage/pppoe/description
  375. Kernel modules for PPPoE (PPP over Ethernet) support
  376. endef
  377. $(eval $(call KernelPackage,pppoe))
  378. define KernelPackage/pppoa
  379. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  380. TITLE:=PPPoA support
  381. DEPENDS:=kmod-ppp +kmod-atm
  382. KCONFIG:=CONFIG_PPPOATM CONFIG_ATM_DRIVERS=y
  383. FILES:=$(LINUX_DIR)/net/atm/pppoatm.ko
  384. AUTOLOAD:=$(call AutoLoad,40,pppoatm)
  385. endef
  386. define KernelPackage/pppoa/description
  387. Kernel modules for PPPoA (PPP over ATM) support
  388. endef
  389. $(eval $(call KernelPackage,pppoa))
  390. define KernelPackage/pptp
  391. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  392. TITLE:=PPtP support
  393. DEPENDS:=kmod-ppp +kmod-gre @!LINUX_2_6_30&&!LINUX_2_6_31&&!LINUX_2_6_32&&!LINUX_2_6_36
  394. KCONFIG:=CONFIG_PPTP
  395. FILES:=$(LINUX_DIR)/drivers/net/pptp.ko
  396. AUTOLOAD:=$(call AutoLoad,41,pptp)
  397. endef
  398. $(eval $(call KernelPackage,pptp))
  399. define KernelPackage/pppol2tp
  400. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  401. TITLE:=PPPoL2TP support
  402. DEPENDS:=kmod-ppp +kmod-pppoe +!LINUX_2_6_30&&!LINUX_2_6_31&&!LINUX_2_6_32:kmod-l2tp
  403. KCONFIG:=CONFIG_PPPOL2TP
  404. ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.35)),1)
  405. FILES:=$(LINUX_DIR)/net/l2tp/l2tp_ppp.ko
  406. AUTOLOAD:=$(call AutoLoad,40,l2tp_ppp)
  407. else
  408. FILES:=$(LINUX_DIR)/drivers/net/pppol2tp.ko
  409. AUTOLOAD:=$(call AutoLoad,40,pppol2tp)
  410. endif
  411. endef
  412. define KernelPackage/pppol2tp/description
  413. Kernel modules for PPPoL2TP (PPP over L2TP) support
  414. endef
  415. $(eval $(call KernelPackage,pppol2tp))
  416. define KernelPackage/ipoa
  417. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  418. TITLE:=IPoA support
  419. DEPENDS:=kmod-atm
  420. KCONFIG:=CONFIG_ATM_CLIP
  421. FILES:=$(LINUX_DIR)/net/atm/clip.ko
  422. AUTOLOAD:=$(call AutoLoad,40,clip)
  423. endef
  424. define KernelPackage/ipoa/description
  425. Kernel modules for IPoA (IP over ATM) support
  426. endef
  427. $(eval $(call KernelPackage,ipoa))
  428. define KernelPackage/mppe
  429. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  430. TITLE:=Microsoft PPP compression/encryption
  431. DEPENDS:=kmod-ppp +kmod-crypto-core +kmod-crypto-arc4 +kmod-crypto-sha1 +kmod-crypto-ecb
  432. KCONFIG:= \
  433. CONFIG_PPP_MPPE_MPPC \
  434. CONFIG_PPP_MPPE
  435. FILES:=$(LINUX_DIR)/drivers/net/ppp_mppe.ko
  436. AUTOLOAD:=$(call AutoLoad,31,ppp_mppe)
  437. endef
  438. define KernelPackage/mppe/description
  439. Kernel modules for Microsoft PPP compression/encryption
  440. endef
  441. $(eval $(call KernelPackage,mppe))
  442. define KernelPackage/sched
  443. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  444. TITLE:=Traffic schedulers
  445. KCONFIG:= \
  446. CONFIG_NET_SCHED=y \
  447. CONFIG_NET_SCH_DSMARK \
  448. CONFIG_NET_SCH_ESFQ \
  449. CONFIG_NET_SCH_ESFQ_NFCT=y \
  450. CONFIG_NET_SCH_FIFO \
  451. CONFIG_NET_SCH_GRED \
  452. CONFIG_NET_SCH_HFSC \
  453. CONFIG_NET_SCH_HTB \
  454. CONFIG_NET_SCH_INGRESS \
  455. CONFIG_NET_SCH_PRIO \
  456. CONFIG_NET_SCH_RED \
  457. CONFIG_NET_SCH_TBF \
  458. CONFIG_NET_SCH_SFQ \
  459. CONFIG_NET_SCH_TEQL \
  460. CONFIG_NET_CLS=y \
  461. CONFIG_NET_CLS_ACT=y \
  462. CONFIG_NET_CLS_BASIC \
  463. CONFIG_NET_CLS_FLOW \
  464. CONFIG_NET_CLS_FW \
  465. CONFIG_NET_CLS_ROUTE4 \
  466. CONFIG_NET_CLS_TCINDEX \
  467. CONFIG_NET_CLS_U32 \
  468. CONFIG_NET_ACT_MIRRED \
  469. CONFIG_NET_ACT_IPT \
  470. CONFIG_NET_ACT_POLICE \
  471. CONFIG_NET_ACT_CONNMARK \
  472. CONFIG_NET_ACT_SKBEDIT \
  473. CONFIG_NET_EMATCH=y \
  474. CONFIG_NET_EMATCH_CMP \
  475. CONFIG_NET_EMATCH_NBYTE \
  476. CONFIG_NET_EMATCH_U32 \
  477. CONFIG_NET_EMATCH_META \
  478. CONFIG_NET_EMATCH_TEXT
  479. FILES:=$(LINUX_DIR)/net/sched/*.ko
  480. endef
  481. define KernelPackage/sched/description
  482. Kernel schedulers for IP traffic
  483. endef
  484. $(eval $(call KernelPackage,sched))
  485. define KernelPackage/ax25
  486. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  487. TITLE:=AX25 support
  488. KCONFIG:= \
  489. CONFIG_AX25 \
  490. CONFIG_MKISS
  491. FILES:= \
  492. $(LINUX_DIR)/net/ax25/ax25.ko \
  493. $(LINUX_DIR)/drivers/net/hamradio/mkiss.ko
  494. AUTOLOAD:=$(call AutoLoad,80,ax25 mkiss)
  495. $(call AddDepends/crc16)
  496. endef
  497. define KernelPackage/ax25/description
  498. Kernel modules for AX25 support
  499. endef
  500. $(eval $(call KernelPackage,ax25))
  501. define KernelPackage/mp-alg
  502. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  503. TITLE:=ECMP caching algorithms
  504. KCONFIG:= \
  505. CONFIG_IP_ROUTE_MULTIPATH_RR \
  506. CONFIG_IP_ROUTE_MULTIPATH_RANDOM \
  507. CONFIG_IP_ROUTE_MULTIPATH_WRANDOM \
  508. CONFIG_IP_ROUTE_MULTIPATH_DRR
  509. FILES:= \
  510. $(LINUX_DIR)/net/ipv4/multipath_rr.ko \
  511. $(LINUX_DIR)/net/ipv4/multipath_random.ko \
  512. $(LINUX_DIR)/net/ipv4/multipath_wrandom.ko \
  513. $(LINUX_DIR)/net/ipv4/multipath_drr.ko
  514. AUTOLOAD:=$(call AutoLoad,35,multipath_rr multipath_random multipath_wrandom multipath_drr)
  515. endef
  516. define KernelPackage/mp-alg/description
  517. Kernel modules that provide several different algorithms for multipath
  518. route selection from the route cache. The iproute "mpath" argument allows
  519. specifying which algorithm to use for routes.
  520. quagga (at least <=0.99.6) requires a multipath patch to support this
  521. cached mp route feature.
  522. endef
  523. $(eval $(call KernelPackage,mp-alg))
  524. define KernelPackage/pktgen
  525. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  526. DEPENDS:=@!TARGET_uml
  527. TITLE:=Network packet generator
  528. KCONFIG:=CONFIG_NET_PKTGEN
  529. FILES:=$(LINUX_DIR)/net/core/pktgen.ko
  530. AUTOLOAD:=$(call AutoLoad,99,pktgen)
  531. endef
  532. define KernelPackage/pktgen/description
  533. Kernel modules for the Network Packet Generator
  534. endef
  535. $(eval $(call KernelPackage,pktgen))
  536. define KernelPackage/l2tp
  537. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  538. DEPENDS:=@!LINUX_2_6_30&&!LINUX_2_6_31&&!LINUX_2_6_32
  539. TITLE:=Layer Two Tunneling Protocol (L2TP)
  540. KCONFIG:=CONFIG_L2TP \
  541. CONFIG_L2TP_V3=y \
  542. CONFIG_L2TP_DEBUGFS=n
  543. FILES:=$(LINUX_DIR)/net/l2tp/l2tp_core.ko \
  544. $(LINUX_DIR)/net/l2tp/l2tp_netlink.ko
  545. AUTOLOAD:=$(call AutoLoad,32,l2tp_core l2tp_netlink)
  546. endef
  547. define KernelPackage/l2tp/description
  548. Kernel modules for L2TP V3 Support
  549. endef
  550. $(eval $(call KernelPackage,l2tp))
  551. define KernelPackage/l2tp-eth
  552. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  553. TITLE:=L2TP ethernet pseudowire support for L2TPv3
  554. DEPENDS:=+kmod-l2tp
  555. KCONFIG:=CONFIG_L2TP_ETH
  556. FILES:=$(LINUX_DIR)/net/l2tp/l2tp_eth.ko
  557. AUTOLOAD:=$(call AutoLoad,33,l2tp_eth)
  558. endef
  559. define KernelPackage/l2tp-eth/description
  560. Kernel modules for L2TP ethernet pseudowire support for L2TPv3
  561. endef
  562. $(eval $(call KernelPackage,l2tp-eth))
  563. define KernelPackage/l2tp-ip
  564. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  565. TITLE:=L2TP IP encapsulation for L2TPv3
  566. DEPENDS:=+kmod-l2tp
  567. KCONFIG:=CONFIG_L2TP_IP
  568. FILES:=$(LINUX_DIR)/net/l2tp/l2tp_ip.ko
  569. AUTOLOAD:=$(call AutoLoad,33,l2tp_ip)
  570. endef
  571. define KernelPackage/l2tp-ip/description
  572. Kernel modules for L2TP IP encapsulation for L2TPv3
  573. endef
  574. $(eval $(call KernelPackage,l2tp-ip))
  575. define KernelPackage/sctp
  576. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  577. TITLE:=SCTP protocol kernel support
  578. KCONFIG:=\
  579. CONFIG_IP_SCTP \
  580. CONFIG_SCTP_DBG_MSG=n \
  581. CONFIG_SCTP_DBG_OBJCNT=n \
  582. CONFIG_SCTP_HMAC_NONE=n \
  583. CONFIG_SCTP_HMAC_SHA1=n \
  584. CONFIG_SCTP_HMAC_MD5=y
  585. FILES:= $(LINUX_DIR)/net/sctp/sctp.ko
  586. AUTOLOAD:= $(call AutoLoad,32,sctp)
  587. DEPENDS:=+kmod-libcrc32c +kmod-crypto-md5 +kmod-crypto-hmac
  588. endef
  589. define KernelPackage/sctp/description
  590. Kernel modules for SCTP protocol support
  591. endef
  592. $(eval $(call KernelPackage,sctp))
  593. define KernelPackage/netem
  594. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  595. TITLE:=Network emulation functionality
  596. DEPENDS:=+kmod-sched
  597. KCONFIG:=CONFIG_NET_SCH_NETEM
  598. FILES:=$(LINUX_DIR)/net/sched/sch_netem.$(LINUX_KMOD_SUFFIX)
  599. AUTOLOAD:=$(call AutoLoad,99,netem)
  600. endef
  601. define KernelPackage/netem/description
  602. Kernel modules for emulating the properties of wide area networks
  603. endef
  604. $(eval $(call KernelPackage,netem))