netsupport.mk 23 KB

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