netsupport.mk 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869
  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. 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/bridge
  65. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  66. TITLE:=Ethernet bridging support
  67. DEPENDS:=+kmod-stp
  68. KCONFIG:= \
  69. CONFIG_BRIDGE \
  70. CONFIG_BRIDGE_IGMP_SNOOPING=y
  71. FILES:=$(LINUX_DIR)/net/bridge/bridge.ko
  72. AUTOLOAD:=$(call AutoLoad,11,bridge)
  73. endef
  74. define KernelPackage/bridge/description
  75. Kernel module for Ethernet bridging.
  76. endef
  77. $(eval $(call KernelPackage,bridge))
  78. define KernelPackage/llc
  79. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  80. TITLE:=ANSI/IEEE 802.2 LLC support
  81. KCONFIG:=CONFIG_LLC
  82. FILES:=$(LINUX_DIR)/net/llc/llc.ko
  83. AUTOLOAD:=$(call AutoLoad,09,llc)
  84. endef
  85. define KernelPackage/llc/description
  86. Kernel module for ANSI/IEEE 802.2 LLC support.
  87. endef
  88. $(eval $(call KernelPackage,llc))
  89. define KernelPackage/stp
  90. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  91. TITLE:=Ethernet Spanning Tree Protocol support
  92. DEPENDS:=+kmod-llc
  93. KCONFIG:=CONFIG_STP
  94. FILES:=$(LINUX_DIR)/net/802/stp.ko
  95. AUTOLOAD:=$(call AutoLoad,10,stp)
  96. endef
  97. define KernelPackage/stp/description
  98. Kernel module for Ethernet Spanning Tree Protocol support.
  99. endef
  100. $(eval $(call KernelPackage,stp))
  101. define KernelPackage/8021q
  102. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  103. TITLE:=802.1Q VLAN support
  104. KCONFIG:=CONFIG_VLAN_8021Q \
  105. CONFIG_VLAN_8021Q_GVRP=n
  106. FILES:=$(LINUX_DIR)/net/8021q/8021q.ko
  107. AUTOLOAD:=$(call AutoLoad,12,8021q)
  108. endef
  109. define KernelPackage/8021q/description
  110. Kernel module for 802.1Q VLAN support
  111. endef
  112. $(eval $(call KernelPackage,8021q))
  113. define KernelPackage/capi
  114. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  115. TITLE:=CAPI (ISDN) Support
  116. KCONFIG:= \
  117. CONFIG_ISDN_CAPI \
  118. CONFIG_ISDN_CAPI_CAPI20 \
  119. CONFIG_ISDN_CAPIFS \
  120. CONFIG_ISDN_CAPI_CAPIFS
  121. FILES:= \
  122. $(LINUX_DIR)/drivers/isdn/capi/kernelcapi.ko \
  123. $(LINUX_DIR)/drivers/isdn/capi/capi.ko
  124. AUTOLOAD:=$(call AutoLoad,30,kernelcapi capi)
  125. endef
  126. define KernelPackage/capi/description
  127. Kernel module for basic CAPI (ISDN) support
  128. endef
  129. $(eval $(call KernelPackage,capi))
  130. define KernelPackage/misdn
  131. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  132. TITLE:=mISDN (ISDN) Support
  133. KCONFIG:= \
  134. CONFIG_ISDN=y \
  135. CONFIG_MISDN \
  136. CONFIG_MISDN_DSP \
  137. CONFIG_MISDN_L1OIP
  138. FILES:= \
  139. $(LINUX_DIR)/drivers/isdn/mISDN/mISDN_core.ko \
  140. $(LINUX_DIR)/drivers/isdn/mISDN/mISDN_dsp.ko \
  141. $(LINUX_DIR)/drivers/isdn/mISDN/l1oip.ko
  142. AUTOLOAD:=$(call AutoLoad,30,mISDN_core mISDN_dsp l1oip)
  143. endef
  144. define KernelPackage/misdn/description
  145. Modular ISDN driver support
  146. endef
  147. $(eval $(call KernelPackage,misdn))
  148. define KernelPackage/isdn4linux
  149. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  150. TITLE:=Old ISDN4Linux (deprecated)
  151. KCONFIG:= \
  152. CONFIG_ISDN=y \
  153. CONFIG_ISDN_I4L \
  154. CONFIG_ISDN_PPP=y \
  155. CONFIG_ISDN_PPP_VJ=y \
  156. CONFIG_ISDN_MPP=y \
  157. CONFIG_IPPP_FILTER=y \
  158. CONFIG_ISDN_PPP_BSDCOMP \
  159. CONFIG_ISDN_CAPI_MIDDLEWARE=y \
  160. CONFIG_ISDN_CAPI_CAPIFS_BOOL=y \
  161. CONFIG_ISDN_AUDIO=y \
  162. CONFIG_ISDN_TTY_FAX=y \
  163. CONFIG_ISDN_X25=y \
  164. CONFIG_ISDN_DIVERSION
  165. FILES:= \
  166. $(LINUX_DIR)/drivers/isdn/divert/dss1_divert.ko \
  167. $(LINUX_DIR)/drivers/isdn/i4l/isdn.ko \
  168. $(LINUX_DIR)/drivers/isdn/i4l/isdn_bsdcomp.ko
  169. AUTOLOAD:=$(call AutoLoad,40,isdn isdn_bsdcomp dss1_divert)
  170. endef
  171. define KernelPackage/isdn4linux/description
  172. This driver allows you to use an ISDN adapter for networking
  173. endef
  174. $(eval $(call KernelPackage,isdn4linux))
  175. define KernelPackage/ipip
  176. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  177. TITLE:=IP-in-IP encapsulation
  178. DEPENDS:=+kmod-iptunnel4
  179. KCONFIG:=CONFIG_NET_IPIP
  180. FILES:=$(LINUX_DIR)/net/ipv4/ipip.ko
  181. AUTOLOAD:=$(call AutoLoad,32,ipip)
  182. endef
  183. define KernelPackage/ipip/description
  184. Kernel modules for IP-in-IP encapsulation
  185. endef
  186. $(eval $(call KernelPackage,ipip))
  187. IPSEC-m:= \
  188. key/af_key \
  189. xfrm/xfrm_ipcomp \
  190. xfrm/xfrm_user \
  191. define KernelPackage/ipsec
  192. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  193. TITLE:=IPsec related modules (IPv4 and IPv6)
  194. DEPENDS:=+kmod-crypto-authenc +kmod-crypto-iv +kmod-crypto-des +kmod-crypto-hmac +kmod-crypto-md5 +kmod-crypto-sha1 +kmod-crypto-deflate +kmod-crypto-cbc
  195. KCONFIG:= \
  196. CONFIG_NET_KEY \
  197. CONFIG_XFRM_USER \
  198. CONFIG_INET_IPCOMP \
  199. CONFIG_XFRM_IPCOMP
  200. FILES:=$(foreach mod,$(IPSEC-m),$(LINUX_DIR)/net/$(mod).ko)
  201. AUTOLOAD:=$(call AutoLoad,30,$(notdir $(IPSEC-m)))
  202. endef
  203. define KernelPackage/ipsec/description
  204. Kernel modules for IPsec support in both IPv4 and IPv6.
  205. Includes:
  206. - af_key
  207. - xfrm_ipcomp
  208. - xfrm_user
  209. endef
  210. $(eval $(call KernelPackage,ipsec))
  211. IPSEC4-m:= \
  212. ipv4/ah4 \
  213. ipv4/esp4 \
  214. ipv4/xfrm4_mode_beet \
  215. ipv4/xfrm4_mode_transport \
  216. ipv4/xfrm4_mode_tunnel \
  217. ipv4/xfrm4_tunnel \
  218. ipv4/ipcomp \
  219. define KernelPackage/ipsec4
  220. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  221. TITLE:=IPsec related modules (IPv4)
  222. DEPENDS:=kmod-ipsec +kmod-iptunnel4
  223. KCONFIG:= \
  224. CONFIG_INET_AH \
  225. CONFIG_INET_ESP \
  226. CONFIG_INET_IPCOMP \
  227. CONFIG_INET_XFRM_MODE_BEET \
  228. CONFIG_INET_XFRM_MODE_TRANSPORT \
  229. CONFIG_INET_XFRM_MODE_TUNNEL \
  230. CONFIG_INET_XFRM_TUNNEL
  231. FILES:=$(foreach mod,$(IPSEC4-m),$(LINUX_DIR)/net/$(mod).ko)
  232. AUTOLOAD:=$(call AutoLoad,32,$(notdir $(IPSEC4-m)))
  233. endef
  234. define KernelPackage/ipsec4/description
  235. Kernel modules for IPsec support in IPv4.
  236. Includes:
  237. - ah4
  238. - esp4
  239. - ipcomp4
  240. - xfrm4_mode_beet
  241. - xfrm4_mode_transport
  242. - xfrm4_mode_tunnel
  243. - xfrm4_tunnel
  244. endef
  245. $(eval $(call KernelPackage,ipsec4))
  246. IPSEC6-m:= \
  247. ipv6/ah6 \
  248. ipv6/esp6 \
  249. ipv6/xfrm6_mode_beet \
  250. ipv6/xfrm6_mode_transport \
  251. ipv6/xfrm6_mode_tunnel \
  252. ipv6/xfrm6_tunnel \
  253. ipv6/ipcomp6 \
  254. define KernelPackage/ipsec6
  255. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  256. TITLE:=IPsec related modules (IPv6)
  257. DEPENDS:=kmod-ipsec +kmod-iptunnel6
  258. KCONFIG:= \
  259. CONFIG_INET6_AH \
  260. CONFIG_INET6_ESP \
  261. CONFIG_INET6_IPCOMP \
  262. CONFIG_INET6_XFRM_MODE_BEET \
  263. CONFIG_INET6_XFRM_MODE_TRANSPORT \
  264. CONFIG_INET6_XFRM_MODE_TUNNEL \
  265. CONFIG_INET6_XFRM_TUNNEL
  266. FILES:=$(foreach mod,$(IPSEC6-m),$(LINUX_DIR)/net/$(mod).ko)
  267. AUTOLOAD:=$(call AutoLoad,32,$(notdir $(IPSEC6-m)))
  268. endef
  269. define KernelPackage/ipsec6/description
  270. Kernel modules for IPsec support in IPv6.
  271. Includes:
  272. - ah6
  273. - esp6
  274. - ipcomp6
  275. - xfrm6_mode_beet
  276. - xfrm6_mode_transport
  277. - xfrm6_mode_tunnel
  278. - xfrm6_tunnel
  279. endef
  280. $(eval $(call KernelPackage,ipsec6))
  281. # NOTE: tunnel4 is not selectable by itself, so enable ipip for that
  282. define KernelPackage/iptunnel4
  283. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  284. TITLE:=IPv4 tunneling
  285. KCONFIG:= \
  286. CONFIG_NET_IPIP \
  287. CONFIG_INET_TUNNEL
  288. FILES:=$(LINUX_DIR)/net/ipv4/tunnel4.ko
  289. AUTOLOAD:=$(call AutoLoad,31,tunnel4)
  290. endef
  291. define KernelPackage/iptunnel4/description
  292. Kernel modules for IPv4 tunneling
  293. endef
  294. $(eval $(call KernelPackage,iptunnel4))
  295. define KernelPackage/iptunnel6
  296. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  297. TITLE:=IPv6 tunneling
  298. DEPENDS:= +kmod-ipv6
  299. KCONFIG:= \
  300. CONFIG_INET6_TUNNEL
  301. FILES:=$(LINUX_DIR)/net/ipv6/tunnel6.ko
  302. AUTOLOAD:=$(call AutoLoad,31,tunnel6)
  303. endef
  304. define KernelPackage/iptunnel6/description
  305. Kernel modules for IPv6 tunneling
  306. endef
  307. $(eval $(call KernelPackage,iptunnel6))
  308. define KernelPackage/ipv6
  309. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  310. TITLE:=IPv6 support
  311. KCONFIG:= \
  312. CONFIG_IPV6 \
  313. CONFIG_IPV6_PRIVACY=y \
  314. CONFIG_IPV6_MULTIPLE_TABLES=y \
  315. CONFIG_IPV6_MROUTE=y \
  316. CONFIG_IPV6_PIMSM_V2=n \
  317. CONFIG_IPV6_SUBTREES=y
  318. FILES:=$(LINUX_DIR)/net/ipv6/ipv6.ko
  319. AUTOLOAD:=$(call AutoLoad,20,ipv6)
  320. endef
  321. define KernelPackage/ipv6/description
  322. Kernel modules for IPv6 support
  323. endef
  324. $(eval $(call KernelPackage,ipv6))
  325. define KernelPackage/sit
  326. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  327. DEPENDS:=+kmod-ipv6 +kmod-iptunnel4
  328. TITLE:=IPv6-in-IPv4 tunnel
  329. KCONFIG:=CONFIG_IPV6_SIT \
  330. CONFIG_IPV6_SIT_6RD=y
  331. FILES:=$(LINUX_DIR)/net/ipv6/sit.ko
  332. AUTOLOAD:=$(call AutoLoad,32,sit)
  333. endef
  334. define KernelPackage/sit/description
  335. Kernel modules for IPv6-in-IPv4 tunnelling
  336. endef
  337. $(eval $(call KernelPackage,sit))
  338. define KernelPackage/ip6-tunnel
  339. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  340. TITLE:=IP-in-IPv6 tunnelling
  341. DEPENDS:= +kmod-ipv6 +kmod-iptunnel6
  342. KCONFIG:= CONFIG_IPV6_TUNNEL
  343. FILES:=$(LINUX_DIR)/net/ipv6/ip6_tunnel.ko
  344. AUTOLOAD:=$(call AutoLoad,32,ip6_tunnel)
  345. endef
  346. define KernelPackage/ip6-tunnel/description
  347. Kernel modules for IPv6-in-IPv6 and IPv4-in-IPv6 tunnelling
  348. endef
  349. $(eval $(call KernelPackage,ip6-tunnel))
  350. define KernelPackage/gre
  351. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  352. TITLE:=GRE support
  353. DEPENDS:=+PACKAGE_kmod-ipv6:kmod-ipv6
  354. KCONFIG:=CONFIG_NET_IPGRE CONFIG_NET_IPGRE_DEMUX
  355. FILES:=$(LINUX_DIR)/net/ipv4/ip_gre.ko $(LINUX_DIR)/net/ipv4/gre.ko
  356. AUTOLOAD:=$(call AutoLoad,39,gre ip_gre)
  357. endef
  358. define KernelPackage/gre/description
  359. Generic Routing Encapsulation support
  360. endef
  361. $(eval $(call KernelPackage,gre))
  362. define KernelPackage/tun
  363. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  364. TITLE:=Universal TUN/TAP driver
  365. KCONFIG:=CONFIG_TUN
  366. FILES:=$(LINUX_DIR)/drivers/net/tun.ko
  367. AUTOLOAD:=$(call AutoLoad,30,tun)
  368. endef
  369. define KernelPackage/tun/description
  370. Kernel support for the TUN/TAP tunneling device
  371. endef
  372. $(eval $(call KernelPackage,tun))
  373. define KernelPackage/ppp
  374. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  375. TITLE:=PPP modules
  376. DEPENDS:=+kmod-lib-crc-ccitt
  377. KCONFIG:= \
  378. CONFIG_PPP \
  379. CONFIG_PPP_ASYNC \
  380. CONFIG_SLHC
  381. FILES:= \
  382. $(LINUX_DIR)/drivers/net/ppp/ppp_async.ko \
  383. $(LINUX_DIR)/drivers/net/ppp/ppp_generic.ko \
  384. $(LINUX_DIR)/drivers/net/slip/slhc.ko
  385. AUTOLOAD:=$(call AutoLoad,30,slhc ppp_generic ppp_async)
  386. endef
  387. define KernelPackage/ppp/description
  388. Kernel modules for PPP support
  389. endef
  390. $(eval $(call KernelPackage,ppp))
  391. define KernelPackage/ppp-synctty
  392. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  393. TITLE:=PPP sync tty support
  394. DEPENDS:=kmod-ppp
  395. KCONFIG:=CONFIG_PPP_SYNC_TTY
  396. FILES:=$(LINUX_DIR)/drivers/net/ppp/ppp_synctty.ko
  397. AUTOLOAD:=$(call AutoLoad,40,ppp_synctty)
  398. endef
  399. define KernelPackage/ppp-synctty/description
  400. Kernel modules for PPP sync tty support
  401. endef
  402. $(eval $(call KernelPackage,ppp-synctty))
  403. define KernelPackage/pppox
  404. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  405. TITLE:=PPPoX helper
  406. DEPENDS:=kmod-ppp
  407. KCONFIG:=CONFIG_PPPOE
  408. FILES:=$(LINUX_DIR)/drivers/net/ppp/pppox.ko
  409. AUTOLOAD:=$(call AutoLoad,40,pppox)
  410. endef
  411. define KernelPackage/pppox/description
  412. Kernel helper module for PPPoE and PPTP support
  413. endef
  414. $(eval $(call KernelPackage,pppox))
  415. define KernelPackage/pppoe
  416. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  417. TITLE:=PPPoE support
  418. DEPENDS:=kmod-ppp +kmod-pppox
  419. KCONFIG:=CONFIG_PPPOE
  420. FILES:=$(LINUX_DIR)/drivers/net/ppp/pppoe.ko
  421. AUTOLOAD:=$(call AutoLoad,41,pppoe)
  422. endef
  423. define KernelPackage/pppoe/description
  424. Kernel module for PPPoE (PPP over Ethernet) support
  425. endef
  426. $(eval $(call KernelPackage,pppoe))
  427. define KernelPackage/pppoa
  428. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  429. TITLE:=PPPoA support
  430. DEPENDS:=kmod-ppp +kmod-atm
  431. KCONFIG:=CONFIG_PPPOATM CONFIG_ATM_DRIVERS=y
  432. FILES:=$(LINUX_DIR)/net/atm/pppoatm.ko
  433. AUTOLOAD:=$(call AutoLoad,40,pppoatm)
  434. endef
  435. define KernelPackage/pppoa/description
  436. Kernel modules for PPPoA (PPP over ATM) support
  437. endef
  438. $(eval $(call KernelPackage,pppoa))
  439. define KernelPackage/pptp
  440. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  441. TITLE:=PPtP support
  442. DEPENDS:=kmod-ppp +kmod-gre +kmod-pppox
  443. KCONFIG:=CONFIG_PPTP
  444. FILES:=$(LINUX_DIR)/drivers/net/ppp/pptp.ko
  445. AUTOLOAD:=$(call AutoLoad,41,pptp)
  446. endef
  447. $(eval $(call KernelPackage,pptp))
  448. define KernelPackage/pppol2tp
  449. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  450. TITLE:=PPPoL2TP support
  451. DEPENDS:=kmod-ppp +kmod-pppox +kmod-l2tp
  452. KCONFIG:=CONFIG_PPPOL2TP
  453. FILES:=$(LINUX_DIR)/net/l2tp/l2tp_ppp.ko
  454. AUTOLOAD:=$(call AutoLoad,41,l2tp_ppp)
  455. endef
  456. define KernelPackage/pppol2tp/description
  457. Kernel modules for PPPoL2TP (PPP over L2TP) support
  458. endef
  459. $(eval $(call KernelPackage,pppol2tp))
  460. define KernelPackage/ipoa
  461. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  462. TITLE:=IPoA support
  463. DEPENDS:=kmod-atm
  464. KCONFIG:=CONFIG_ATM_CLIP
  465. FILES:=$(LINUX_DIR)/net/atm/clip.ko
  466. AUTOLOAD:=$(call AutoLoad,40,clip)
  467. endef
  468. define KernelPackage/ipoa/description
  469. Kernel modules for IPoA (IP over ATM) support
  470. endef
  471. $(eval $(call KernelPackage,ipoa))
  472. define KernelPackage/mppe
  473. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  474. TITLE:=Microsoft PPP compression/encryption
  475. DEPENDS:=kmod-ppp +kmod-crypto-core +kmod-crypto-arc4 +kmod-crypto-sha1 +kmod-crypto-ecb
  476. KCONFIG:= \
  477. CONFIG_PPP_MPPE_MPPC \
  478. CONFIG_PPP_MPPE
  479. FILES:=$(LINUX_DIR)/drivers/net/ppp/ppp_mppe.ko
  480. AUTOLOAD:=$(call AutoLoad,31,ppp_mppe)
  481. endef
  482. define KernelPackage/mppe/description
  483. Kernel modules for Microsoft PPP compression/encryption
  484. endef
  485. $(eval $(call KernelPackage,mppe))
  486. SCHED_MODULES = $(patsubst $(LINUX_DIR)/net/sched/%.ko,%,$(wildcard $(LINUX_DIR)/net/sched/*.ko))
  487. SCHED_MODULES_CORE = sch_ingress sch_codel sch_fq_codel sch_hfsc cls_fw cls_route cls_flow cls_tcindex cls_u32 em_u32 act_mirred act_skbedit
  488. SCHED_MODULES_FILTER = $(SCHED_MODULES_CORE) act_connmark sch_esfq
  489. SCHED_MODULES_EXTRA = $(filter-out $(SCHED_MODULES_FILTER),$(SCHED_MODULES))
  490. SCHED_FILES = $(patsubst %,$(LINUX_DIR)/net/sched/%.ko,$(filter $(SCHED_MODULES_CORE),$(SCHED_MODULES)))
  491. SCHED_FILES_EXTRA = $(patsubst %,$(LINUX_DIR)/net/sched/%.ko,$(SCHED_MODULES_EXTRA))
  492. define KernelPackage/sched-core
  493. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  494. TITLE:=Traffic schedulers
  495. KCONFIG:= \
  496. CONFIG_NET_SCHED=y \
  497. CONFIG_NET_SCH_HFSC \
  498. CONFIG_NET_SCH_INGRESS \
  499. CONFIG_NET_SCH_CODEL \
  500. CONFIG_NET_SCH_FQ_CODEL \
  501. CONFIG_NET_CLS=y \
  502. CONFIG_NET_CLS_ACT=y \
  503. CONFIG_NET_CLS_FLOW \
  504. CONFIG_NET_CLS_FW \
  505. CONFIG_NET_CLS_ROUTE4 \
  506. CONFIG_NET_CLS_TCINDEX \
  507. CONFIG_NET_CLS_U32 \
  508. CONFIG_NET_ACT_MIRRED \
  509. CONFIG_NET_ACT_SKBEDIT \
  510. CONFIG_NET_EMATCH=y \
  511. CONFIG_NET_EMATCH_U32
  512. FILES:=$(SCHED_FILES)
  513. AUTOLOAD:=$(call AutoLoad,70, $(SCHED_MODULES_CORE))
  514. endef
  515. define KernelPackage/sched-core/description
  516. Core kernel scheduler support for IP traffic
  517. endef
  518. $(eval $(call KernelPackage,sched-core))
  519. define KernelPackage/sched-connmark
  520. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  521. TITLE:=Traffic shaper conntrack mark support
  522. DEPENDS:=+kmod-sched-core +kmod-ipt-core +kmod-ipt-conntrack-extra
  523. KCONFIG:=CONFIG_NET_ACT_CONNMARK
  524. FILES:=$(LINUX_DIR)/net/sched/act_connmark.ko
  525. AUTOLOAD:=$(call AutoLoad,71, act_connmark)
  526. endef
  527. $(eval $(call KernelPackage,sched-connmark))
  528. define KernelPackage/sched-esfq
  529. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  530. TITLE:=Traffic shaper ESFQ support
  531. DEPENDS:=+kmod-sched-core +kmod-ipt-core
  532. KCONFIG:= \
  533. CONFIG_NET_SCH_ESFQ \
  534. CONFIG_NET_SCH_ESFQ_NFCT=y
  535. FILES:=$(LINUX_DIR)/net/sched/sch_esfq.ko
  536. AUTOLOAD:=$(call AutoLoad,72, sch_esfq)
  537. endef
  538. $(eval $(call KernelPackage,sched-esfq))
  539. define KernelPackage/sched
  540. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  541. TITLE:=Extra traffic schedulers
  542. DEPENDS:=+kmod-sched-core
  543. KCONFIG:= \
  544. CONFIG_NET_SCH_DSMARK \
  545. CONFIG_NET_SCH_HTB \
  546. CONFIG_NET_SCH_FIFO \
  547. CONFIG_NET_SCH_GRED \
  548. CONFIG_NET_SCH_PRIO \
  549. CONFIG_NET_SCH_RED \
  550. CONFIG_NET_SCH_TBF \
  551. CONFIG_NET_SCH_SFQ \
  552. CONFIG_NET_SCH_TEQL \
  553. CONFIG_NET_CLS_BASIC \
  554. CONFIG_NET_ACT_POLICE \
  555. CONFIG_NET_ACT_IPT \
  556. CONFIG_NET_EMATCH_CMP \
  557. CONFIG_NET_EMATCH_NBYTE \
  558. CONFIG_NET_EMATCH_META \
  559. CONFIG_NET_EMATCH_TEXT
  560. FILES:=$(SCHED_FILES_EXTRA)
  561. AUTOLOAD:=$(call AutoLoad,73, $(SCHED_MODULES_EXTRA))
  562. endef
  563. define KernelPackage/sched/description
  564. Extra kernel schedulers modules for IP traffic
  565. endef
  566. $(eval $(call KernelPackage,sched))
  567. define KernelPackage/ax25
  568. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  569. TITLE:=AX25 support
  570. KCONFIG:= \
  571. CONFIG_AX25 \
  572. CONFIG_MKISS
  573. FILES:= \
  574. $(LINUX_DIR)/net/ax25/ax25.ko \
  575. $(LINUX_DIR)/drivers/net/hamradio/mkiss.ko
  576. AUTOLOAD:=$(call AutoLoad,80,ax25 mkiss)
  577. $(call AddDepends/crc16)
  578. endef
  579. define KernelPackage/ax25/description
  580. Kernel modules for AX25 support
  581. endef
  582. $(eval $(call KernelPackage,ax25))
  583. define KernelPackage/mp-alg
  584. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  585. TITLE:=ECMP caching algorithms
  586. KCONFIG:= \
  587. CONFIG_IP_ROUTE_MULTIPATH_RR \
  588. CONFIG_IP_ROUTE_MULTIPATH_RANDOM \
  589. CONFIG_IP_ROUTE_MULTIPATH_WRANDOM \
  590. CONFIG_IP_ROUTE_MULTIPATH_DRR
  591. FILES:= \
  592. $(LINUX_DIR)/net/ipv4/multipath_rr.ko \
  593. $(LINUX_DIR)/net/ipv4/multipath_random.ko \
  594. $(LINUX_DIR)/net/ipv4/multipath_wrandom.ko \
  595. $(LINUX_DIR)/net/ipv4/multipath_drr.ko
  596. AUTOLOAD:=$(call AutoLoad,35,multipath_rr multipath_random multipath_wrandom multipath_drr)
  597. endef
  598. define KernelPackage/mp-alg/description
  599. Kernel modules that provide several different algorithms for multipath
  600. route selection from the route cache. The iproute "mpath" argument allows
  601. specifying which algorithm to use for routes.
  602. quagga (at least <=0.99.6) requires a multipath patch to support this
  603. cached mp route feature.
  604. endef
  605. $(eval $(call KernelPackage,mp-alg))
  606. define KernelPackage/pktgen
  607. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  608. DEPENDS:=@!TARGET_uml
  609. TITLE:=Network packet generator
  610. KCONFIG:=CONFIG_NET_PKTGEN
  611. FILES:=$(LINUX_DIR)/net/core/pktgen.ko
  612. AUTOLOAD:=$(call AutoLoad,99,pktgen)
  613. endef
  614. define KernelPackage/pktgen/description
  615. Kernel modules for the Network Packet Generator
  616. endef
  617. $(eval $(call KernelPackage,pktgen))
  618. define KernelPackage/l2tp
  619. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  620. TITLE:=Layer Two Tunneling Protocol (L2TP)
  621. KCONFIG:=CONFIG_L2TP \
  622. CONFIG_L2TP_V3=y \
  623. CONFIG_L2TP_DEBUGFS=n
  624. FILES:=$(LINUX_DIR)/net/l2tp/l2tp_core.ko \
  625. $(LINUX_DIR)/net/l2tp/l2tp_netlink.ko
  626. AUTOLOAD:=$(call AutoLoad,32,l2tp_core l2tp_netlink)
  627. endef
  628. define KernelPackage/l2tp/description
  629. Kernel modules for L2TP V3 Support
  630. endef
  631. $(eval $(call KernelPackage,l2tp))
  632. define KernelPackage/l2tp-eth
  633. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  634. TITLE:=L2TP ethernet pseudowire support for L2TPv3
  635. DEPENDS:=+kmod-l2tp
  636. KCONFIG:=CONFIG_L2TP_ETH
  637. FILES:=$(LINUX_DIR)/net/l2tp/l2tp_eth.ko
  638. AUTOLOAD:=$(call AutoLoad,33,l2tp_eth)
  639. endef
  640. define KernelPackage/l2tp-eth/description
  641. Kernel modules for L2TP ethernet pseudowire support for L2TPv3
  642. endef
  643. $(eval $(call KernelPackage,l2tp-eth))
  644. define KernelPackage/l2tp-ip
  645. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  646. TITLE:=L2TP IP encapsulation for L2TPv3
  647. DEPENDS:=+kmod-l2tp
  648. KCONFIG:=CONFIG_L2TP_IP
  649. FILES:=$(LINUX_DIR)/net/l2tp/l2tp_ip.ko
  650. AUTOLOAD:=$(call AutoLoad,33,l2tp_ip)
  651. endef
  652. define KernelPackage/l2tp-ip/description
  653. Kernel modules for L2TP IP encapsulation for L2TPv3
  654. endef
  655. $(eval $(call KernelPackage,l2tp-ip))
  656. define KernelPackage/sctp
  657. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  658. TITLE:=SCTP protocol kernel support
  659. KCONFIG:=\
  660. CONFIG_IP_SCTP \
  661. CONFIG_SCTP_DBG_MSG=n \
  662. CONFIG_SCTP_DBG_OBJCNT=n \
  663. CONFIG_SCTP_HMAC_NONE=n \
  664. CONFIG_SCTP_HMAC_SHA1=n \
  665. CONFIG_SCTP_HMAC_MD5=y
  666. FILES:= $(LINUX_DIR)/net/sctp/sctp.ko
  667. AUTOLOAD:= $(call AutoLoad,32,sctp)
  668. DEPENDS:=+kmod-lib-crc32c +kmod-crypto-md5 +kmod-crypto-hmac
  669. endef
  670. define KernelPackage/sctp/description
  671. Kernel modules for SCTP protocol support
  672. endef
  673. $(eval $(call KernelPackage,sctp))
  674. define KernelPackage/netem
  675. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  676. TITLE:=Network emulation functionality
  677. DEPENDS:=+kmod-sched
  678. KCONFIG:=CONFIG_NET_SCH_NETEM
  679. FILES:=$(LINUX_DIR)/net/sched/sch_netem.ko
  680. AUTOLOAD:=$(call AutoLoad,99,netem)
  681. endef
  682. define KernelPackage/netem/description
  683. Kernel modules for emulating the properties of wide area networks
  684. endef
  685. $(eval $(call KernelPackage,netem))
  686. define KernelPackage/slip
  687. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  688. TITLE:=SLIP modules
  689. KCONFIG:= \
  690. CONFIG_SLIP \
  691. CONFIG_SLIP_COMPRESSED=y \
  692. CONFIG_SLIP_SMART=y \
  693. CONFIG_SLIP_MODE_SLIP6=y
  694. FILES:= \
  695. $(LINUX_DIR)/drivers/net/slip/slip.ko
  696. AUTOLOAD:=$(call AutoLoad,30,slip)
  697. endef
  698. define KernelPackage/slip/description
  699. Kernel modules for SLIP support
  700. endef
  701. $(eval $(call KernelPackage,slip))