netsupport.mk 42 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721
  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=n
  42. FILES:=$(LINUX_DIR)/net/appletalk/appletalk.ko
  43. AUTOLOAD:=$(call AutoLoad,40,appletalk)
  44. endef
  45. define KernelPackage/appletalk/description
  46. Kernel module for AppleTalk protocol.
  47. endef
  48. $(eval $(call KernelPackage,appletalk))
  49. define KernelPackage/bonding
  50. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  51. TITLE:=Ethernet bonding driver
  52. KCONFIG:=CONFIG_BONDING
  53. DEPENDS:=PACKAGE_kmod-tls:kmod-tls
  54. FILES:=$(LINUX_DIR)/drivers/net/bonding/bonding.ko
  55. AUTOLOAD:=$(call AutoLoad,40,bonding)
  56. MODPARAMS.bonding:=max_bonds=0
  57. endef
  58. define KernelPackage/bonding/description
  59. Kernel module for NIC bonding.
  60. endef
  61. $(eval $(call KernelPackage,bonding))
  62. define KernelPackage/udptunnel4
  63. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  64. TITLE:=IPv4 UDP tunneling support
  65. KCONFIG:=CONFIG_NET_UDP_TUNNEL
  66. HIDDEN:=1
  67. FILES:=$(LINUX_DIR)/net/ipv4/udp_tunnel.ko
  68. AUTOLOAD:=$(call AutoLoad,32,udp_tunnel)
  69. endef
  70. $(eval $(call KernelPackage,udptunnel4))
  71. define KernelPackage/udptunnel6
  72. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  73. TITLE:=IPv6 UDP tunneling support
  74. DEPENDS:=@IPV6
  75. KCONFIG:=CONFIG_NET_UDP_TUNNEL
  76. HIDDEN:=1
  77. FILES:=$(LINUX_DIR)/net/ipv6/ip6_udp_tunnel.ko
  78. AUTOLOAD:=$(call AutoLoad,32,ip6_udp_tunnel)
  79. endef
  80. $(eval $(call KernelPackage,udptunnel6))
  81. define KernelPackage/vxlan
  82. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  83. TITLE:=Native VXLAN Kernel support
  84. DEPENDS:= \
  85. +kmod-iptunnel \
  86. +kmod-udptunnel4 \
  87. +IPV6:kmod-udptunnel6
  88. KCONFIG:=CONFIG_VXLAN
  89. FILES:= \
  90. $(LINUX_DIR)/drivers/net/vxlan/vxlan.ko
  91. AUTOLOAD:=$(call AutoLoad,13,vxlan)
  92. endef
  93. define KernelPackage/vxlan/description
  94. Kernel module for supporting VXLAN in the Kernel.
  95. Requires Kernel 3.12 or newer.
  96. endef
  97. $(eval $(call KernelPackage,vxlan))
  98. define KernelPackage/geneve
  99. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  100. TITLE:=Generic Network Virtualization Encapsulation (Geneve) support
  101. DEPENDS:= \
  102. +kmod-iptunnel \
  103. +kmod-udptunnel4 \
  104. +IPV6:kmod-udptunnel6
  105. KCONFIG:=CONFIG_GENEVE
  106. FILES:= \
  107. $(LINUX_DIR)/drivers/net/geneve.ko
  108. AUTOLOAD:=$(call AutoLoad,13,geneve)
  109. endef
  110. define KernelPackage/geneve/description
  111. Kernel module for supporting Geneve in the Kernel.
  112. Requires Kernel 3.18 or newer.
  113. endef
  114. $(eval $(call KernelPackage,geneve))
  115. define KernelPackage/nsh
  116. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  117. TITLE:=Network Service Header (NSH) protocol
  118. DEPENDS:=
  119. KCONFIG:=CONFIG_NET_NSH
  120. FILES:=$(LINUX_DIR)/net/nsh/nsh.ko
  121. AUTOLOAD:=$(call AutoLoad,13,nsh)
  122. endef
  123. define KernelPackage/nsh/description
  124. Network Service Header is an implementation of Service Function
  125. Chaining (RFC 7665). Requires kernel 4.14 or newer
  126. endef
  127. $(eval $(call KernelPackage,nsh))
  128. define KernelPackage/misdn
  129. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  130. TITLE:=mISDN (ISDN) Support
  131. KCONFIG:= \
  132. CONFIG_ISDN=y \
  133. CONFIG_MISDN \
  134. CONFIG_MISDN_DSP \
  135. CONFIG_MISDN_L1OIP
  136. FILES:= \
  137. $(LINUX_DIR)/drivers/isdn/mISDN/mISDN_core.ko \
  138. $(LINUX_DIR)/drivers/isdn/mISDN/mISDN_dsp.ko \
  139. $(LINUX_DIR)/drivers/isdn/mISDN/l1oip.ko
  140. AUTOLOAD:=$(call AutoLoad,30,mISDN_core mISDN_dsp l1oip)
  141. endef
  142. define KernelPackage/misdn/description
  143. Modular ISDN driver support
  144. endef
  145. $(eval $(call KernelPackage,misdn))
  146. define KernelPackage/ipip
  147. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  148. TITLE:=IP-in-IP encapsulation
  149. DEPENDS:=+kmod-iptunnel +kmod-iptunnel4
  150. KCONFIG:=CONFIG_NET_IPIP
  151. FILES:=$(LINUX_DIR)/net/ipv4/ipip.ko
  152. AUTOLOAD:=$(call AutoLoad,32,ipip)
  153. endef
  154. define KernelPackage/ipip/description
  155. Kernel modules for IP-in-IP encapsulation
  156. endef
  157. $(eval $(call KernelPackage,ipip))
  158. IPSEC-m:= \
  159. xfrm/xfrm_algo \
  160. xfrm/xfrm_ipcomp \
  161. xfrm/xfrm_user \
  162. key/af_key \
  163. define KernelPackage/ipsec
  164. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  165. TITLE:=IPsec related modules (IPv4 and IPv6)
  166. DEPENDS:= \
  167. +kmod-crypto-authenc +kmod-crypto-cbc +kmod-crypto-deflate \
  168. +kmod-crypto-des +kmod-crypto-echainiv +kmod-crypto-hmac \
  169. +kmod-crypto-md5 +kmod-crypto-sha1
  170. KCONFIG:= \
  171. CONFIG_NET_KEY \
  172. CONFIG_XFRM_USER \
  173. CONFIG_INET_IPCOMP \
  174. CONFIG_XFRM_IPCOMP
  175. FILES:=$(foreach mod,$(IPSEC-m),$(LINUX_DIR)/net/$(mod).ko)
  176. AUTOLOAD:=$(call AutoLoad,30,$(notdir $(IPSEC-m)))
  177. endef
  178. define KernelPackage/ipsec/description
  179. Kernel modules for IPsec support in both IPv4 and IPv6.
  180. Includes:
  181. - af_key
  182. - xfrm_algo
  183. - xfrm_ipcomp
  184. - xfrm_user
  185. endef
  186. $(eval $(call KernelPackage,ipsec))
  187. IPSEC4-m = \
  188. ipv4/ah4 \
  189. ipv4/esp4 \
  190. ipv4/ipcomp \
  191. ipv4/xfrm4_tunnel
  192. define KernelPackage/ipsec4
  193. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  194. TITLE:=IPsec related modules (IPv4)
  195. DEPENDS:=kmod-ipsec +kmod-iptunnel4
  196. KCONFIG:= \
  197. CONFIG_INET_AH \
  198. CONFIG_INET_ESP \
  199. CONFIG_INET_IPCOMP \
  200. CONFIG_INET_XFRM_TUNNEL \
  201. CONFIG_INET_ESP_OFFLOAD=n
  202. FILES:=$(foreach mod,$(IPSEC4-m),$(LINUX_DIR)/net/$(mod).ko)
  203. AUTOLOAD:=$(call AutoLoad,32,$(notdir $(IPSEC4-m)))
  204. endef
  205. define KernelPackage/ipsec4/description
  206. Kernel modules for IPsec support in IPv4.
  207. Includes:
  208. - ah4
  209. - esp4
  210. - ipcomp4
  211. - xfrm4_tunnel
  212. endef
  213. $(eval $(call KernelPackage,ipsec4))
  214. IPSEC6-m = \
  215. ipv6/ah6 \
  216. ipv6/esp6 \
  217. ipv6/ipcomp6 \
  218. ipv6/xfrm6_tunnel
  219. define KernelPackage/ipsec6
  220. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  221. TITLE:=IPsec related modules (IPv6)
  222. DEPENDS:=@IPV6 kmod-ipsec +kmod-iptunnel6
  223. KCONFIG:= \
  224. CONFIG_INET6_AH \
  225. CONFIG_INET6_ESP \
  226. CONFIG_INET6_IPCOMP \
  227. CONFIG_INET6_XFRM_TUNNEL \
  228. CONFIG_INET6_ESP_OFFLOAD=n
  229. FILES:=$(foreach mod,$(IPSEC6-m),$(LINUX_DIR)/net/$(mod).ko)
  230. AUTOLOAD:=$(call AutoLoad,32,$(notdir $(IPSEC6-m)))
  231. endef
  232. define KernelPackage/ipsec6/description
  233. Kernel modules for IPsec support in IPv6.
  234. Includes:
  235. - ah6
  236. - esp6
  237. - ipcomp6
  238. - xfrm6_tunnel
  239. endef
  240. $(eval $(call KernelPackage,ipsec6))
  241. define KernelPackage/iptunnel
  242. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  243. TITLE:=IP tunnel support
  244. HIDDEN:=1
  245. KCONFIG:= \
  246. CONFIG_NET_IP_TUNNEL
  247. FILES:=$(LINUX_DIR)/net/ipv4/ip_tunnel.ko
  248. AUTOLOAD:=$(call AutoLoad,31,ip_tunnel)
  249. endef
  250. define KernelPackage/iptunnel/description
  251. Kernel module for generic IP tunnel support
  252. endef
  253. $(eval $(call KernelPackage,iptunnel))
  254. define KernelPackage/ip-vti
  255. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  256. TITLE:=IP VTI (Virtual Tunnel Interface)
  257. DEPENDS:=+kmod-iptunnel +kmod-iptunnel4 +kmod-ipsec4
  258. KCONFIG:=CONFIG_NET_IPVTI
  259. FILES:=$(LINUX_DIR)/net/ipv4/ip_vti.ko
  260. AUTOLOAD:=$(call AutoLoad,33,ip_vti)
  261. endef
  262. define KernelPackage/ip-vti/description
  263. Kernel modules for IP VTI (Virtual Tunnel Interface)
  264. endef
  265. $(eval $(call KernelPackage,ip-vti))
  266. define KernelPackage/ip6-vti
  267. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  268. TITLE:=IPv6 VTI (Virtual Tunnel Interface)
  269. DEPENDS:=@IPV6 +kmod-iptunnel +kmod-ip6-tunnel +kmod-ipsec6
  270. KCONFIG:=CONFIG_IPV6_VTI
  271. FILES:=$(LINUX_DIR)/net/ipv6/ip6_vti.ko
  272. AUTOLOAD:=$(call AutoLoad,33,ip6_vti)
  273. endef
  274. define KernelPackage/ip6-vti/description
  275. Kernel modules for IPv6 VTI (Virtual Tunnel Interface)
  276. endef
  277. $(eval $(call KernelPackage,ip6-vti))
  278. define KernelPackage/xfrm-interface
  279. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  280. TITLE:=IPsec XFRM Interface
  281. DEPENDS:=@IPV6 +kmod-ipsec4 +kmod-ipsec6
  282. KCONFIG:=CONFIG_XFRM_INTERFACE
  283. FILES:=$(LINUX_DIR)/net/xfrm/xfrm_interface.ko
  284. AUTOLOAD:=$(call AutoProbe,xfrm_interface)
  285. endef
  286. define KernelPackage/xfrm-interface/description
  287. Kernel module for XFRM interface support
  288. endef
  289. $(eval $(call KernelPackage,xfrm-interface))
  290. define KernelPackage/iptunnel4
  291. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  292. TITLE:=IPv4 tunneling
  293. HIDDEN:=1
  294. KCONFIG:= \
  295. CONFIG_INET_TUNNEL \
  296. CONFIG_NET_IPIP=m
  297. FILES:=$(LINUX_DIR)/net/ipv4/tunnel4.ko
  298. AUTOLOAD:=$(call AutoLoad,31,tunnel4)
  299. endef
  300. define KernelPackage/iptunnel4/description
  301. Kernel modules for IPv4 tunneling
  302. endef
  303. $(eval $(call KernelPackage,iptunnel4))
  304. define KernelPackage/iptunnel6
  305. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  306. TITLE:=IPv6 tunneling
  307. DEPENDS:=@IPV6
  308. KCONFIG:= \
  309. CONFIG_INET6_TUNNEL
  310. FILES:=$(LINUX_DIR)/net/ipv6/tunnel6.ko
  311. AUTOLOAD:=$(call AutoLoad,31,tunnel6)
  312. endef
  313. define KernelPackage/iptunnel6/description
  314. Kernel modules for IPv6 tunneling
  315. endef
  316. $(eval $(call KernelPackage,iptunnel6))
  317. define KernelPackage/sit
  318. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  319. DEPENDS:=@IPV6 +kmod-iptunnel +kmod-iptunnel4
  320. TITLE:=IPv6-in-IPv4 tunnel
  321. KCONFIG:=CONFIG_IPV6_SIT \
  322. CONFIG_IPV6_SIT_6RD=y
  323. FILES:=$(LINUX_DIR)/net/ipv6/sit.ko
  324. AUTOLOAD:=$(call AutoLoad,32,sit)
  325. endef
  326. define KernelPackage/sit/description
  327. Kernel modules for IPv6-in-IPv4 tunnelling
  328. endef
  329. $(eval $(call KernelPackage,sit))
  330. define KernelPackage/fou
  331. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  332. TITLE:=FOU and GUE decapsulation
  333. DEPENDS:= \
  334. +kmod-iptunnel \
  335. +kmod-udptunnel4 \
  336. +IPV6:kmod-udptunnel6
  337. KCONFIG:= \
  338. CONFIG_NET_FOU \
  339. CONFIG_NET_FOU_IP_TUNNELS=y
  340. FILES:=$(LINUX_DIR)/net/ipv4/fou.ko
  341. AUTOLOAD:=$(call AutoProbe,fou)
  342. endef
  343. define KernelPackage/fou/description
  344. Kernel module for FOU (Foo over UDP) and GUE (Generic UDP Encapsulation) tunnelling.
  345. Requires Kernel 3.18 or newer.
  346. endef
  347. $(eval $(call KernelPackage,fou))
  348. define KernelPackage/fou6
  349. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  350. TITLE:=FOU and GUE decapsulation over IPv6
  351. DEPENDS:= @IPV6 \
  352. +kmod-fou \
  353. +kmod-ip6-tunnel
  354. KCONFIG:= \
  355. CONFIG_IPV6_FOU \
  356. CONFIG_IPV6_FOU_TUNNEL
  357. FILES:=$(LINUX_DIR)/net/ipv6/fou6.ko
  358. AUTOLOAD:=$(call AutoProbe,fou6)
  359. endef
  360. define KernelPackage/fou6/description
  361. Kernel module for FOU (Foo over UDP) and GUE (Generic UDP Encapsulation) tunnelling over IPv6.
  362. Requires Kernel 3.18 or newer.
  363. endef
  364. $(eval $(call KernelPackage,fou6))
  365. define KernelPackage/ip6-tunnel
  366. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  367. TITLE:=IP-in-IPv6 tunnelling
  368. DEPENDS:=@IPV6 +kmod-iptunnel6
  369. KCONFIG:= CONFIG_IPV6_TUNNEL
  370. FILES:=$(LINUX_DIR)/net/ipv6/ip6_tunnel.ko
  371. AUTOLOAD:=$(call AutoLoad,32,ip6_tunnel)
  372. endef
  373. define KernelPackage/ip6-tunnel/description
  374. Kernel modules for IPv6-in-IPv6 and IPv4-in-IPv6 tunnelling
  375. endef
  376. $(eval $(call KernelPackage,ip6-tunnel))
  377. define KernelPackage/gre
  378. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  379. TITLE:=GRE support
  380. DEPENDS:=+kmod-iptunnel
  381. KCONFIG:=CONFIG_NET_IPGRE CONFIG_NET_IPGRE_DEMUX
  382. FILES:=$(LINUX_DIR)/net/ipv4/ip_gre.ko $(LINUX_DIR)/net/ipv4/gre.ko
  383. AUTOLOAD:=$(call AutoLoad,39,gre ip_gre)
  384. endef
  385. define KernelPackage/gre/description
  386. Generic Routing Encapsulation support
  387. endef
  388. $(eval $(call KernelPackage,gre))
  389. define KernelPackage/gre6
  390. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  391. TITLE:=GRE support over IPV6
  392. DEPENDS:=@IPV6 +kmod-iptunnel +kmod-ip6-tunnel +kmod-gre
  393. KCONFIG:=CONFIG_IPV6_GRE
  394. FILES:=$(LINUX_DIR)/net/ipv6/ip6_gre.ko
  395. AUTOLOAD:=$(call AutoLoad,39,ip6_gre)
  396. endef
  397. define KernelPackage/gre6/description
  398. Generic Routing Encapsulation support over IPv6
  399. endef
  400. $(eval $(call KernelPackage,gre6))
  401. define KernelPackage/tun
  402. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  403. TITLE:=Universal TUN/TAP driver
  404. KCONFIG:=CONFIG_TUN
  405. FILES:=$(LINUX_DIR)/drivers/net/tun.ko
  406. AUTOLOAD:=$(call AutoLoad,30,tun)
  407. endef
  408. define KernelPackage/tun/description
  409. Kernel support for the TUN/TAP tunneling device
  410. endef
  411. $(eval $(call KernelPackage,tun))
  412. define KernelPackage/veth
  413. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  414. TITLE:=Virtual ethernet pair device
  415. KCONFIG:=CONFIG_VETH
  416. FILES:=$(LINUX_DIR)/drivers/net/veth.ko
  417. AUTOLOAD:=$(call AutoLoad,30,veth)
  418. endef
  419. define KernelPackage/veth/description
  420. This device is a local ethernet tunnel. Devices are created in pairs.
  421. When one end receives the packet it appears on its pair and vice
  422. versa.
  423. endef
  424. $(eval $(call KernelPackage,veth))
  425. define KernelPackage/vrf
  426. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  427. TITLE:=Virtual Routing and Forwarding (Lite)
  428. DEPENDS:=@KERNEL_NET_L3_MASTER_DEV
  429. KCONFIG:=CONFIG_NET_VRF
  430. FILES:=$(LINUX_DIR)/drivers/net/vrf.ko
  431. AUTOLOAD:=$(call AutoLoad,30,vrf)
  432. endef
  433. define KernelPackage/vrf/description
  434. This option enables the support for mapping interfaces into VRF's. The
  435. support enables VRF devices.
  436. endef
  437. $(eval $(call KernelPackage,vrf))
  438. define KernelPackage/slhc
  439. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  440. HIDDEN:=1
  441. TITLE:=Serial Line Header Compression
  442. DEPENDS:=+kmod-lib-crc-ccitt
  443. KCONFIG:=CONFIG_SLHC
  444. FILES:=$(LINUX_DIR)/drivers/net/slip/slhc.ko
  445. endef
  446. $(eval $(call KernelPackage,slhc))
  447. define KernelPackage/ppp
  448. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  449. TITLE:=PPP modules
  450. DEPENDS:=+kmod-lib-crc-ccitt +kmod-slhc
  451. KCONFIG:= \
  452. CONFIG_PPP \
  453. CONFIG_PPP_ASYNC
  454. FILES:= \
  455. $(LINUX_DIR)/drivers/net/ppp/ppp_async.ko \
  456. $(LINUX_DIR)/drivers/net/ppp/ppp_generic.ko
  457. AUTOLOAD:=$(call AutoProbe,ppp_async)
  458. endef
  459. define KernelPackage/ppp/description
  460. Kernel modules for PPP support
  461. endef
  462. $(eval $(call KernelPackage,ppp))
  463. define KernelPackage/ppp-synctty
  464. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  465. TITLE:=PPP sync tty support
  466. DEPENDS:=kmod-ppp
  467. KCONFIG:=CONFIG_PPP_SYNC_TTY
  468. FILES:=$(LINUX_DIR)/drivers/net/ppp/ppp_synctty.ko
  469. AUTOLOAD:=$(call AutoProbe,ppp_synctty)
  470. endef
  471. define KernelPackage/ppp-synctty/description
  472. Kernel modules for PPP sync tty support
  473. endef
  474. $(eval $(call KernelPackage,ppp-synctty))
  475. define KernelPackage/pppox
  476. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  477. TITLE:=PPPoX helper
  478. DEPENDS:=kmod-ppp
  479. KCONFIG:=CONFIG_PPPOE
  480. FILES:=$(LINUX_DIR)/drivers/net/ppp/pppox.ko
  481. endef
  482. define KernelPackage/pppox/description
  483. Kernel helper module for PPPoE and PPTP support
  484. endef
  485. $(eval $(call KernelPackage,pppox))
  486. define KernelPackage/pppoe
  487. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  488. TITLE:=PPPoE support
  489. DEPENDS:=kmod-ppp +kmod-pppox
  490. KCONFIG:=CONFIG_PPPOE
  491. FILES:=$(LINUX_DIR)/drivers/net/ppp/pppoe.ko
  492. AUTOLOAD:=$(call AutoProbe,pppoe)
  493. endef
  494. define KernelPackage/pppoe/description
  495. Kernel module for PPPoE (PPP over Ethernet) support
  496. endef
  497. $(eval $(call KernelPackage,pppoe))
  498. define KernelPackage/pppoa
  499. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  500. TITLE:=PPPoA support
  501. DEPENDS:=kmod-ppp +kmod-atm
  502. KCONFIG:=CONFIG_PPPOATM CONFIG_ATM_DRIVERS=y
  503. FILES:=$(LINUX_DIR)/net/atm/pppoatm.ko
  504. AUTOLOAD:=$(call AutoLoad,40,pppoatm)
  505. endef
  506. define KernelPackage/pppoa/description
  507. Kernel modules for PPPoA (PPP over ATM) support
  508. endef
  509. $(eval $(call KernelPackage,pppoa))
  510. define KernelPackage/pptp
  511. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  512. TITLE:=PPtP support
  513. DEPENDS:=kmod-ppp +kmod-gre +kmod-pppox
  514. KCONFIG:=CONFIG_PPTP
  515. FILES:=$(LINUX_DIR)/drivers/net/ppp/pptp.ko
  516. AUTOLOAD:=$(call AutoProbe,pptp)
  517. endef
  518. $(eval $(call KernelPackage,pptp))
  519. define KernelPackage/pppol2tp
  520. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  521. TITLE:=PPPoL2TP support
  522. DEPENDS:=kmod-ppp +kmod-pppox +kmod-l2tp
  523. KCONFIG:=CONFIG_PPPOL2TP
  524. FILES:=$(LINUX_DIR)/net/l2tp/l2tp_ppp.ko
  525. AUTOLOAD:=$(call AutoProbe,l2tp_ppp)
  526. endef
  527. define KernelPackage/pppol2tp/description
  528. Kernel modules for PPPoL2TP (PPP over L2TP) support
  529. endef
  530. $(eval $(call KernelPackage,pppol2tp))
  531. define KernelPackage/ipoa
  532. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  533. TITLE:=IPoA support
  534. DEPENDS:=kmod-atm
  535. KCONFIG:=CONFIG_ATM_CLIP
  536. FILES:=$(LINUX_DIR)/net/atm/clip.ko
  537. AUTOLOAD:=$(call AutoProbe,clip)
  538. endef
  539. define KernelPackage/ipoa/description
  540. Kernel modules for IPoA (IP over ATM) support
  541. endef
  542. $(eval $(call KernelPackage,ipoa))
  543. define KernelPackage/mppe
  544. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  545. TITLE:=Microsoft PPP compression/encryption
  546. DEPENDS:=kmod-ppp +kmod-crypto-arc4 +kmod-crypto-sha1 +kmod-crypto-ecb
  547. KCONFIG:= \
  548. CONFIG_PPP_MPPE_MPPC \
  549. CONFIG_PPP_MPPE
  550. FILES:=$(LINUX_DIR)/drivers/net/ppp/ppp_mppe.ko
  551. AUTOLOAD:=$(call AutoProbe,ppp_mppe)
  552. endef
  553. define KernelPackage/mppe/description
  554. Kernel modules for Microsoft PPP compression/encryption
  555. endef
  556. $(eval $(call KernelPackage,mppe))
  557. SCHED_MODULES_CORE = sch_ingress sch_hfsc sch_htb sch_tbf cls_basic cls_fw cls_route cls_flow cls_u32 em_u32 act_gact act_mirred act_skbedit cls_matchall
  558. SCHED_FILES_CORE = $(foreach mod,$(SCHED_MODULES_CORE),$(LINUX_DIR)/net/sched/$(mod).ko)
  559. define KernelPackage/sched-core
  560. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  561. TITLE:=Traffic schedulers
  562. KCONFIG:= \
  563. CONFIG_NET_SCHED=y \
  564. CONFIG_NET_SCH_HFSC \
  565. CONFIG_NET_SCH_HTB \
  566. CONFIG_NET_SCH_TBF \
  567. CONFIG_NET_SCH_INGRESS \
  568. CONFIG_NET_CLS=y \
  569. CONFIG_NET_CLS_ACT=y \
  570. CONFIG_NET_CLS_BASIC \
  571. CONFIG_NET_CLS_FLOW \
  572. CONFIG_NET_CLS_FW \
  573. CONFIG_NET_CLS_ROUTE4 \
  574. CONFIG_NET_CLS_U32 \
  575. CONFIG_NET_ACT_GACT \
  576. CONFIG_NET_ACT_MIRRED \
  577. CONFIG_NET_ACT_SKBEDIT \
  578. CONFIG_NET_CLS_MATCHALL \
  579. CONFIG_NET_EMATCH=y \
  580. CONFIG_NET_EMATCH_U32
  581. FILES:=$(SCHED_FILES_CORE)
  582. AUTOLOAD:=$(call AutoLoad,70, $(SCHED_MODULES_CORE))
  583. endef
  584. define KernelPackage/sched-core/description
  585. Core kernel scheduler support for IP traffic
  586. endef
  587. $(eval $(call KernelPackage,sched-core))
  588. define KernelPackage/sched-act-police
  589. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  590. TITLE:=Traffic Policing
  591. DEPENDS:=+kmod-sched-core
  592. KCONFIG:=CONFIG_NET_ACT_POLICE
  593. FILES:=$(LINUX_DIR)/net/sched/act_police.ko
  594. AUTOLOAD:=$(call AutoProbe,act_police)
  595. endef
  596. $(eval $(call KernelPackage,sched-act-police))
  597. define KernelPackage/sched-act-sample
  598. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  599. TITLE:=Traffic Sampling
  600. DEPENDS:=+kmod-sched-core
  601. KCONFIG:= \
  602. CONFIG_NET_ACT_SAMPLE \
  603. CONFIG_PSAMPLE
  604. FILES:= \
  605. $(LINUX_DIR)/net/psample/psample.ko \
  606. $(LINUX_DIR)/net/sched/act_sample.ko
  607. AUTOLOAD:=$(call AutoProbe,act_sample psample)
  608. endef
  609. define KernelPackage/sched-act-sample/description
  610. Packet sampling tc action.
  611. endef
  612. $(eval $(call KernelPackage,sched-act-sample))
  613. define KernelPackage/sched-act-vlan
  614. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  615. TITLE:=Traffic VLAN manipulation
  616. DEPENDS:=+kmod-sched-core
  617. KCONFIG:=CONFIG_NET_ACT_VLAN
  618. FILES:=$(LINUX_DIR)/net/sched/act_vlan.ko
  619. AUTOLOAD:=$(call AutoProbe, act_vlan)
  620. endef
  621. define KernelPackage/sched-act-vlan/description
  622. Allows to configure rules to push or pop vlan headers.
  623. endef
  624. $(eval $(call KernelPackage,sched-act-vlan))
  625. define KernelPackage/sched-bpf
  626. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  627. TITLE:=Traffic shaper support for Berkeley Packet Filter
  628. KCONFIG:= \
  629. CONFIG_NET_CLS_BPF \
  630. CONFIG_NET_ACT_BPF
  631. FILES:= \
  632. $(LINUX_DIR)/net/sched/cls_bpf.ko \
  633. $(LINUX_DIR)/net/sched/act_bpf.ko
  634. AUTOLOAD:=$(call AutoLoad,72,cls_bpf act_bpf)
  635. endef
  636. $(eval $(call KernelPackage,sched-bpf))
  637. define KernelPackage/sched-cake
  638. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  639. TITLE:=Cake fq_codel/blue derived shaper
  640. DEPENDS:=+kmod-sched-core
  641. KCONFIG:=CONFIG_NET_SCH_CAKE
  642. FILES:=$(LINUX_DIR)/net/sched/sch_cake.ko
  643. AUTOLOAD:=$(call AutoProbe,sch_cake)
  644. endef
  645. define KernelPackage/sched-cake/description
  646. Common Applications Kept Enhanced fq_codel/blue derived shaper
  647. endef
  648. $(eval $(call KernelPackage,sched-cake))
  649. define KernelPackage/sched-connmark
  650. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  651. TITLE:=Traffic shaper conntrack mark support
  652. DEPENDS:=+kmod-sched-core +kmod-ipt-core +kmod-ipt-conntrack-extra
  653. KCONFIG:=CONFIG_NET_ACT_CONNMARK
  654. FILES:=$(LINUX_DIR)/net/sched/act_connmark.ko
  655. AUTOLOAD:=$(call AutoLoad,71, act_connmark)
  656. endef
  657. $(eval $(call KernelPackage,sched-connmark))
  658. define KernelPackage/sched-ctinfo
  659. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  660. TITLE:=Traffic shaper ctinfo support
  661. DEPENDS:=+kmod-sched-core +kmod-ipt-core +kmod-ipt-conntrack-extra
  662. KCONFIG:=CONFIG_NET_ACT_CTINFO
  663. FILES:=$(LINUX_DIR)/net/sched/act_ctinfo.ko
  664. AUTOLOAD:=$(call AutoLoad,71, act_ctinfo)
  665. endef
  666. $(eval $(call KernelPackage,sched-ctinfo))
  667. define KernelPackage/sched-drr
  668. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  669. TITLE:=Deficit Round Robin scheduler (DRR)
  670. DEPENDS:=+kmod-sched-core
  671. KCONFIG:=CONFIG_NET_SCH_DRR
  672. FILES:=$(LINUX_DIR)/net/sched/sch_drr.ko
  673. AUTOLOAD:=$(call AutoProbe,sch_drr)
  674. endef
  675. define KernelPackage/sched-drr/description
  676. DRR algorithm Configuration
  677. endef
  678. $(eval $(call KernelPackage,sched-drr))
  679. define KernelPackage/sched-flower
  680. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  681. TITLE:=Flower traffic classifier
  682. DEPENDS:=+kmod-sched-core
  683. KCONFIG:=CONFIG_NET_CLS_FLOWER
  684. FILES:=$(LINUX_DIR)/net/sched/cls_flower.ko
  685. AUTOLOAD:=$(call AutoProbe, cls_flower)
  686. endef
  687. define KernelPackage/sched-flower/description
  688. Allows to classify packets based on a configurable combination of packet keys and masks.
  689. endef
  690. $(eval $(call KernelPackage,sched-flower))
  691. define KernelPackage/sched-fq-pie
  692. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  693. TITLE:=Flow Queue Proportional Integral Enhanced (FQ-PIE)
  694. DEPENDS:=+kmod-sched-core +kmod-sched-pie
  695. KCONFIG:=CONFIG_NET_SCH_FQ_PIE
  696. FILES:=$(LINUX_DIR)/net/sched/sch_fq_pie.ko
  697. AUTOLOAD:=$(call AutoProbe, sch_fq_pie)
  698. endef
  699. define KernelPackage/sched-fq-pie/description
  700. A queuing discipline that combines Flow Queuing with the PIE AQM.
  701. endef
  702. $(eval $(call KernelPackage,sched-fq-pie))
  703. define KernelPackage/sched-ipset
  704. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  705. TITLE:=Traffic shaper ipset support
  706. DEPENDS:=+kmod-sched-core +kmod-ipt-ipset
  707. KCONFIG:= \
  708. CONFIG_NET_EMATCH_IPSET
  709. FILES:= \
  710. $(LINUX_DIR)/net/sched/em_ipset.ko
  711. AUTOLOAD:=$(call AutoLoad,72,em_ipset)
  712. endef
  713. $(eval $(call KernelPackage,sched-ipset))
  714. define KernelPackage/sched-mqprio-common
  715. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  716. TITLE:=mqprio queue common dependencies support
  717. HIDDEN:=1
  718. KCONFIG:=CONFIG_NET_SCH_MQPRIO_LIB
  719. FILES:=$(LINUX_DIR)/net/sched/sch_mqprio_lib.ko
  720. endef
  721. define KernelPackage/sched-mqprio-common/description
  722. Common library for manipulating mqprio queue configurations
  723. endef
  724. $(eval $(call KernelPackage,sched-mqprio-common))
  725. define KernelPackage/sched-mqprio
  726. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  727. TITLE:=Multi-queue priority scheduler (MQPRIO)
  728. DEPENDS:=+kmod-sched-core +kmod-sched-mqprio-common
  729. KCONFIG:=CONFIG_NET_SCH_MQPRIO
  730. FILES:=$(LINUX_DIR)/net/sched/sch_mqprio.ko
  731. AUTOLOAD:=$(call AutoProbe, sch_mqprio)
  732. endef
  733. define KernelPackage/sched-mqprio/description
  734. This scheduler allows QOS to be offloaded on NICs that have support for offloading QOS schedulers.
  735. endef
  736. $(eval $(call KernelPackage,sched-mqprio))
  737. define KernelPackage/sched-pie
  738. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  739. TITLE:=Proportional Integral controller-Enhanced AQM (PIE)
  740. DEPENDS:=+kmod-sched-core
  741. KCONFIG:=CONFIG_NET_SCH_PIE
  742. FILES:=$(LINUX_DIR)/net/sched/sch_pie.ko
  743. AUTOLOAD:=$(call AutoProbe, sch_pie)
  744. endef
  745. define KernelPackage/sched-pie/description
  746. A control theoretic active queue management scheme.
  747. endef
  748. $(eval $(call KernelPackage,sched-pie))
  749. define KernelPackage/sched-prio
  750. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  751. TITLE:=Multi Band Priority Queueing (PRIO)
  752. DEPENDS:=+kmod-sched-core
  753. KCONFIG:=CONFIG_NET_SCH_PRIO
  754. FILES:=$(LINUX_DIR)/net/sched/sch_prio.ko
  755. AUTOLOAD:=$(call AutoProbe,sch_prio)
  756. endef
  757. define KernelPackage/sched-prio/description
  758. PRIO algorithm Configuration
  759. endef
  760. $(eval $(call KernelPackage,sched-prio))
  761. define KernelPackage/sched-red
  762. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  763. TITLE:=Random Early Detection (RED)
  764. DEPENDS:=+kmod-sched-core
  765. KCONFIG:=CONFIG_NET_SCH_RED
  766. FILES:=$(LINUX_DIR)/net/sched/sch_red.ko
  767. AUTOLOAD:=$(call AutoProbe,sch_red)
  768. endef
  769. define KernelPackage/sched-red/description
  770. Random Early Detection (RED) algorithm Configuration
  771. endef
  772. $(eval $(call KernelPackage,sched-red))
  773. define KernelPackage/sched-skbprio
  774. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  775. TITLE:=SKB priority queue scheduler (SKBPRIO)
  776. DEPENDS:=+kmod-sched-core
  777. KCONFIG:= CONFIG_NET_SCH_SKBPRIO
  778. FILES:= $(LINUX_DIR)/net/sched/sch_skbprio.ko
  779. AUTOLOAD:=$(call AutoProbe,sch_skbprio)
  780. endef
  781. $(eval $(call KernelPackage,sched-skbprio))
  782. define KernelPackage/bpf-test
  783. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  784. TITLE:=Test Berkeley Packet Filter functionality
  785. KCONFIG:=CONFIG_TEST_BPF
  786. FILES:=$(LINUX_DIR)/lib/test_bpf.ko
  787. endef
  788. $(eval $(call KernelPackage,bpf-test))
  789. SCHED_MODULES_EXTRA = sch_codel sch_gred sch_multiq sch_sfq sch_teql sch_fq sch_ets act_pedit act_simple act_skbmod act_csum em_cmp em_nbyte em_meta em_text
  790. SCHED_FILES_EXTRA = $(foreach mod,$(SCHED_MODULES_EXTRA),$(LINUX_DIR)/net/sched/$(mod).ko)
  791. define KernelPackage/sched
  792. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  793. TITLE:=Extra traffic schedulers
  794. DEPENDS:=+kmod-sched-core +kmod-lib-crc32c +kmod-lib-textsearch
  795. KCONFIG:= \
  796. CONFIG_NET_SCH_CODEL \
  797. CONFIG_NET_SCH_GRED \
  798. CONFIG_NET_SCH_MULTIQ \
  799. CONFIG_NET_SCH_SFQ \
  800. CONFIG_NET_SCH_TEQL \
  801. CONFIG_NET_SCH_FQ \
  802. CONFIG_NET_SCH_ETS \
  803. CONFIG_NET_ACT_PEDIT \
  804. CONFIG_NET_ACT_SIMP \
  805. CONFIG_NET_ACT_SKBMOD \
  806. CONFIG_NET_ACT_CSUM \
  807. CONFIG_NET_EMATCH_CMP \
  808. CONFIG_NET_EMATCH_NBYTE \
  809. CONFIG_NET_EMATCH_META \
  810. CONFIG_NET_EMATCH_TEXT
  811. FILES:=$(SCHED_FILES_EXTRA)
  812. AUTOLOAD:=$(call AutoLoad,73, $(SCHED_MODULES_EXTRA))
  813. endef
  814. define KernelPackage/sched/description
  815. Extra kernel schedulers modules for IP traffic
  816. endef
  817. SCHED_TEQL_HOTPLUG:=hotplug-sched-teql.sh
  818. define KernelPackage/sched/install
  819. $(INSTALL_DIR) $(1)/etc/hotplug.d/iface
  820. $(INSTALL_DATA) ./files/$(SCHED_TEQL_HOTPLUG) $(1)/etc/hotplug.d/iface/15-teql
  821. endef
  822. $(eval $(call KernelPackage,sched))
  823. define KernelPackage/tcp-bbr
  824. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  825. TITLE:=BBR TCP congestion control
  826. KCONFIG:=CONFIG_TCP_CONG_BBR
  827. FILES:=$(LINUX_DIR)/net/ipv4/tcp_bbr.ko
  828. AUTOLOAD:=$(call AutoProbe,tcp_bbr)
  829. endef
  830. define KernelPackage/tcp-bbr/description
  831. Kernel module for BBR (Bottleneck Bandwidth and RTT) TCP congestion
  832. control. It requires the fq ("Fair Queue") pacing packet scheduler.
  833. For kernel 4.13+, TCP internal pacing is implemented as fallback.
  834. endef
  835. TCP_BBR_SYSCTL_CONF:=sysctl-tcp-bbr.conf
  836. define KernelPackage/tcp-bbr/install
  837. $(INSTALL_DIR) $(1)/etc/sysctl.d
  838. $(INSTALL_DATA) ./files/$(TCP_BBR_SYSCTL_CONF) $(1)/etc/sysctl.d/12-tcp-bbr.conf
  839. endef
  840. $(eval $(call KernelPackage,tcp-bbr))
  841. define KernelPackage/tls
  842. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  843. TITLE:=In-kernel TLS Support with HW Offload
  844. KCONFIG:=CONFIG_TLS \
  845. CONFIG_TLS_DEVICE=y
  846. FILES:=$(LINUX_DIR)/net/tls/tls.ko
  847. AUTOLOAD:=$(call AutoProbe,tls)
  848. endef
  849. define KernelPackage/tls/description
  850. Kernel module for in-kernel TLS protocol support and hw offload
  851. (to supported interfaces).
  852. This allows symmetric encryption handling of the TLS protocol to
  853. be done in-kernel and it's HW offload when available.
  854. endef
  855. $(eval $(call KernelPackage,tls))
  856. define KernelPackage/tcp-hybla
  857. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  858. TITLE:=TCP-Hybla congestion control algorithm
  859. KCONFIG:=CONFIG_TCP_CONG_HYBLA
  860. FILES:=$(LINUX_DIR)/net/ipv4/tcp_hybla.ko
  861. AUTOLOAD:=$(call AutoProbe,tcp_hybla)
  862. endef
  863. define KernelPackage/tcp-hybla/description
  864. TCP-Hybla is a sender-side only change that eliminates penalization of
  865. long-RTT, large-bandwidth connections, like when satellite legs are
  866. involved, especially when sharing a common bottleneck with normal
  867. terrestrial connections.
  868. endef
  869. $(eval $(call KernelPackage,tcp-hybla))
  870. define KernelPackage/tcp-scalable
  871. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  872. TITLE:=TCP-Scalable congestion control algorithm
  873. KCONFIG:=CONFIG_TCP_CONG_SCALABLE
  874. FILES:=$(LINUX_DIR)/net/ipv4/tcp_scalable.ko
  875. AUTOLOAD:=$(call AutoProbe,tcp-scalable)
  876. endef
  877. define KernelPackage/tcp-scalable/description
  878. Scalable TCP is a sender-side only change to TCP which uses a
  879. MIMD congestion control algorithm which has some nice scaling
  880. properties, though is known to have fairness issues.
  881. See http://www.deneholme.net/tom/scalable/
  882. endef
  883. $(eval $(call KernelPackage,tcp-scalable))
  884. define KernelPackage/ax25
  885. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  886. TITLE:=AX25 support
  887. DEPENDS:=+kmod-lib-crc16
  888. KCONFIG:= \
  889. CONFIG_HAMRADIO=y \
  890. CONFIG_AX25 \
  891. CONFIG_MKISS
  892. FILES:= \
  893. $(LINUX_DIR)/net/ax25/ax25.ko \
  894. $(LINUX_DIR)/drivers/net/hamradio/mkiss.ko
  895. AUTOLOAD:=$(call AutoLoad,80,ax25 mkiss)
  896. endef
  897. define KernelPackage/ax25/description
  898. Kernel modules for AX25 support
  899. endef
  900. $(eval $(call KernelPackage,ax25))
  901. define KernelPackage/pktgen
  902. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  903. DEPENDS:=@!TARGET_uml
  904. TITLE:=Network packet generator
  905. KCONFIG:=CONFIG_NET_PKTGEN
  906. FILES:=$(LINUX_DIR)/net/core/pktgen.ko
  907. AUTOLOAD:=$(call AutoLoad,99,pktgen)
  908. endef
  909. define KernelPackage/pktgen/description
  910. Kernel modules for the Network Packet Generator
  911. endef
  912. $(eval $(call KernelPackage,pktgen))
  913. define KernelPackage/l2tp
  914. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  915. TITLE:=Layer Two Tunneling Protocol (L2TP)
  916. DEPENDS:= \
  917. +kmod-udptunnel4 \
  918. +IPV6:kmod-udptunnel6
  919. KCONFIG:=CONFIG_L2TP \
  920. CONFIG_L2TP_V3=y \
  921. CONFIG_L2TP_DEBUGFS=n
  922. FILES:=$(LINUX_DIR)/net/l2tp/l2tp_core.ko \
  923. $(LINUX_DIR)/net/l2tp/l2tp_netlink.ko
  924. AUTOLOAD:=$(call AutoLoad,32,l2tp_core l2tp_netlink)
  925. endef
  926. define KernelPackage/l2tp/description
  927. Kernel modules for L2TP V3 Support
  928. endef
  929. $(eval $(call KernelPackage,l2tp))
  930. define KernelPackage/l2tp-eth
  931. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  932. TITLE:=L2TP ethernet pseudowire support for L2TPv3
  933. DEPENDS:=+kmod-l2tp
  934. KCONFIG:=CONFIG_L2TP_ETH
  935. FILES:=$(LINUX_DIR)/net/l2tp/l2tp_eth.ko
  936. AUTOLOAD:=$(call AutoLoad,33,l2tp_eth)
  937. endef
  938. define KernelPackage/l2tp-eth/description
  939. Kernel modules for L2TP ethernet pseudowire support for L2TPv3
  940. endef
  941. $(eval $(call KernelPackage,l2tp-eth))
  942. define KernelPackage/l2tp-ip
  943. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  944. TITLE:=L2TP IP encapsulation for L2TPv3
  945. DEPENDS:=+kmod-l2tp
  946. KCONFIG:=CONFIG_L2TP_IP
  947. FILES:= \
  948. $(LINUX_DIR)/net/l2tp/l2tp_ip.ko \
  949. $(if $(CONFIG_IPV6),$(LINUX_DIR)/net/l2tp/l2tp_ip6.ko)
  950. AUTOLOAD:=$(call AutoLoad,33,l2tp_ip $(if $(CONFIG_IPV6),l2tp_ip6))
  951. endef
  952. define KernelPackage/l2tp-ip/description
  953. Kernel modules for L2TP IP encapsulation for L2TPv3
  954. endef
  955. $(eval $(call KernelPackage,l2tp-ip))
  956. define KernelPackage/sctp
  957. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  958. TITLE:=SCTP protocol kernel support
  959. KCONFIG:=\
  960. CONFIG_IP_SCTP \
  961. CONFIG_SCTP_DBG_MSG=n \
  962. CONFIG_SCTP_DBG_OBJCNT=n \
  963. CONFIG_SCTP_HMAC_NONE=n \
  964. CONFIG_SCTP_HMAC_SHA1=n \
  965. CONFIG_SCTP_HMAC_MD5=y \
  966. CONFIG_SCTP_COOKIE_HMAC_SHA1=n \
  967. CONFIG_SCTP_COOKIE_HMAC_MD5=y \
  968. CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE=n \
  969. CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=n \
  970. CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5=y
  971. FILES:= $(LINUX_DIR)/net/sctp/sctp.ko
  972. AUTOLOAD:= $(call AutoLoad,32,sctp)
  973. DEPENDS:=+kmod-lib-crc32c +kmod-crypto-md5 +kmod-crypto-hmac \
  974. +kmod-udptunnel4 +kmod-udptunnel6
  975. endef
  976. define KernelPackage/sctp/description
  977. Kernel modules for SCTP protocol support
  978. endef
  979. $(eval $(call KernelPackage,sctp))
  980. define KernelPackage/sctp-diag
  981. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  982. TITLE:=SCTP diag support
  983. DEPENDS:=+kmod-sctp +kmod-inet-diag
  984. KCONFIG:=CONFIG_INET_SCTP_DIAG
  985. FILES:= $(LINUX_DIR)/net/sctp/sctp_diag.ko
  986. AUTOLOAD:= $(call AutoLoad,33,sctp_diag)
  987. endef
  988. $(eval $(call KernelPackage,sctp-diag))
  989. define KernelPackage/netem
  990. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  991. TITLE:=Network emulation functionality
  992. DEPENDS:=+kmod-sched
  993. KCONFIG:=CONFIG_NET_SCH_NETEM
  994. FILES:=$(LINUX_DIR)/net/sched/sch_netem.ko
  995. AUTOLOAD:=$(call AutoLoad,99,netem)
  996. endef
  997. define KernelPackage/netem/description
  998. Kernel modules for emulating the properties of wide area networks
  999. endef
  1000. $(eval $(call KernelPackage,netem))
  1001. define KernelPackage/slip
  1002. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  1003. DEPENDS:=+kmod-slhc
  1004. TITLE:=SLIP modules
  1005. KCONFIG:= \
  1006. CONFIG_SLIP \
  1007. CONFIG_SLIP_COMPRESSED=y \
  1008. CONFIG_SLIP_SMART=y \
  1009. CONFIG_SLIP_MODE_SLIP6=y
  1010. FILES:= \
  1011. $(LINUX_DIR)/drivers/net/slip/slip.ko
  1012. AUTOLOAD:=$(call AutoLoad,30,slip)
  1013. endef
  1014. define KernelPackage/slip/description
  1015. Kernel modules for SLIP support
  1016. endef
  1017. $(eval $(call KernelPackage,slip))
  1018. define KernelPackage/dnsresolver
  1019. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  1020. TITLE:=In-kernel DNS Resolver
  1021. KCONFIG:= CONFIG_DNS_RESOLVER
  1022. FILES:=$(LINUX_DIR)/net/dns_resolver/dns_resolver.ko
  1023. AUTOLOAD:=$(call AutoLoad,30,dns_resolver)
  1024. endef
  1025. $(eval $(call KernelPackage,dnsresolver))
  1026. define KernelPackage/rxrpc
  1027. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  1028. TITLE:=AF_RXRPC support
  1029. HIDDEN:=1
  1030. KCONFIG:= \
  1031. CONFIG_AF_RXRPC \
  1032. CONFIG_AF_RXRPC_IPV6=y \
  1033. CONFIG_RXKAD \
  1034. CONFIG_AF_RXRPC_DEBUG=n
  1035. FILES:= \
  1036. $(LINUX_DIR)/net/rxrpc/rxrpc.ko
  1037. AUTOLOAD:=$(call AutoLoad,30,rxrpc)
  1038. DEPENDS:= \
  1039. +kmod-crypto-fcrypt \
  1040. +kmod-crypto-hmac \
  1041. +kmod-crypto-manager \
  1042. +kmod-crypto-md5 \
  1043. +kmod-crypto-pcbc \
  1044. +kmod-udptunnel4 \
  1045. +IPV6:kmod-udptunnel6
  1046. endef
  1047. define KernelPackage/rxrpc/description
  1048. Kernel support for AF_RXRPC; required for AFS client
  1049. endef
  1050. $(eval $(call KernelPackage,rxrpc))
  1051. define KernelPackage/mpls
  1052. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  1053. TITLE:=MPLS support
  1054. DEPENDS:=+kmod-iptunnel
  1055. KCONFIG:= \
  1056. CONFIG_MPLS=y \
  1057. CONFIG_LWTUNNEL=y \
  1058. CONFIG_LWTUNNEL_BPF=n \
  1059. CONFIG_NET_MPLS_GSO=m \
  1060. CONFIG_MPLS_ROUTING=m \
  1061. CONFIG_MPLS_IPTUNNEL=m
  1062. FILES:= \
  1063. $(LINUX_DIR)/net/mpls/mpls_gso.ko \
  1064. $(LINUX_DIR)/net/mpls/mpls_iptunnel.ko \
  1065. $(LINUX_DIR)/net/mpls/mpls_router.ko
  1066. AUTOLOAD:=$(call AutoLoad,30,mpls_router mpls_iptunnel mpls_gso)
  1067. endef
  1068. define KernelPackage/mpls/description
  1069. Kernel support for MPLS
  1070. endef
  1071. $(eval $(call KernelPackage,mpls))
  1072. define KernelPackage/9pnet
  1073. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  1074. TITLE:=Plan 9 Resource Sharing Support (9P2000)
  1075. DEPENDS:=+kmod-fs-netfs
  1076. KCONFIG:= \
  1077. CONFIG_NET_9P \
  1078. CONFIG_NET_9P_DEBUG=n \
  1079. CONFIG_NET_9P_FD=n
  1080. FILES:= \
  1081. $(LINUX_DIR)/net/9p/9pnet.ko
  1082. AUTOLOAD:=$(call AutoLoad,29,9pnet)
  1083. endef
  1084. define KernelPackage/9pnet/description
  1085. Kernel support support for
  1086. Plan 9 resource sharing via the 9P2000 protocol.
  1087. endef
  1088. $(eval $(call KernelPackage,9pnet))
  1089. define KernelPackage/9pvirtio
  1090. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  1091. TITLE:=Plan 9 Virtio Support
  1092. DEPENDS:=+kmod-9pnet @VIRTIO_SUPPORT
  1093. KCONFIG:= \
  1094. CONFIG_NET_9P_XEN=n \
  1095. CONFIG_NET_9P_VIRTIO
  1096. FILES:= \
  1097. $(LINUX_DIR)/net/9p/9pnet_virtio.ko
  1098. AUTOLOAD:=$(call AutoLoad,29,9pnet_virtio)
  1099. endef
  1100. define KernelPackage/9pvirtio/description
  1101. Kernel support support for
  1102. Plan 9 resource sharing for virtio.
  1103. endef
  1104. $(eval $(call KernelPackage,9pvirtio))
  1105. define KernelPackage/nlmon
  1106. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  1107. TITLE:=Virtual netlink monitoring device
  1108. KCONFIG:=CONFIG_NLMON
  1109. FILES:=$(LINUX_DIR)/drivers/net/nlmon.ko
  1110. AUTOLOAD:=$(call AutoProbe,nlmon)
  1111. endef
  1112. define KernelPackage/nlmon/description
  1113. Kernel module which adds a monitoring device for netlink.
  1114. endef
  1115. $(eval $(call KernelPackage,nlmon))
  1116. define KernelPackage/mdio
  1117. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  1118. TITLE:=MDIO (clause 45) PHY support
  1119. KCONFIG:=CONFIG_MDIO
  1120. HIDDEN:=1
  1121. FILES:=$(LINUX_DIR)/drivers/net/mdio.ko
  1122. AUTOLOAD:=$(call AutoLoad,32,mdio)
  1123. endef
  1124. define KernelPackage/mdio/description
  1125. Kernel modules for MDIO (clause 45) PHY support
  1126. endef
  1127. $(eval $(call KernelPackage,mdio))
  1128. define KernelPackage/mdio-bus-mux
  1129. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  1130. TITLE:=MDIO bus multiplexers
  1131. KCONFIG:=CONFIG_MDIO_BUS_MUX
  1132. HIDDEN:=1
  1133. FILES:=$(LINUX_DIR)/drivers/net/mdio/mdio-mux.ko
  1134. AUTOLOAD:=$(call AutoLoad,32,mdio-mux)
  1135. endef
  1136. define KernelPackage/mdio-bus-mux/description
  1137. Kernel framework for MDIO bus multiplexers.
  1138. endef
  1139. $(eval $(call KernelPackage,mdio-bus-mux))
  1140. define KernelPackage/macsec
  1141. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  1142. TITLE:=IEEE 802.1AE MAC-level encryption (MAC)
  1143. DEPENDS:=+kmod-crypto-gcm
  1144. KCONFIG:=CONFIG_MACSEC
  1145. FILES:=$(LINUX_DIR)/drivers/net/macsec.ko
  1146. AUTOLOAD:=$(call AutoLoad,13,macsec)
  1147. endef
  1148. define KernelPackage/macsec/description
  1149. MACsec is an encryption standard for Ethernet.
  1150. endef
  1151. $(eval $(call KernelPackage,macsec))
  1152. define KernelPackage/netlink-diag
  1153. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  1154. TITLE:=Netlink diag support for ss utility
  1155. KCONFIG:=CONFIG_NETLINK_DIAG
  1156. FILES:=$(LINUX_DIR)/net/netlink/netlink_diag.ko
  1157. AUTOLOAD:=$(call AutoLoad,31,netlink-diag)
  1158. endef
  1159. define KernelPackage/netlink-diag/description
  1160. Netlink diag is a module made for use with iproute2's ss utility
  1161. endef
  1162. $(eval $(call KernelPackage,netlink-diag))
  1163. define KernelPackage/inet-diag
  1164. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  1165. TITLE:=INET diag support for ss utility
  1166. KCONFIG:= \
  1167. CONFIG_INET_DIAG \
  1168. CONFIG_INET_TCP_DIAG \
  1169. CONFIG_INET_UDP_DIAG \
  1170. CONFIG_INET_RAW_DIAG \
  1171. CONFIG_INET_DIAG_DESTROY=n
  1172. FILES:= \
  1173. $(LINUX_DIR)/net/ipv4/inet_diag.ko \
  1174. $(LINUX_DIR)/net/ipv4/tcp_diag.ko \
  1175. $(LINUX_DIR)/net/ipv4/udp_diag.ko \
  1176. $(LINUX_DIR)/net/ipv4/raw_diag.ko
  1177. AUTOLOAD:=$(call AutoLoad,31,inet_diag tcp_diag udp_diag raw_diag)
  1178. endef
  1179. define KernelPackage/inet-diag/description
  1180. Support for INET (TCP, DCCP, etc) socket monitoring interface used by
  1181. native Linux tools such as ss.
  1182. endef
  1183. $(eval $(call KernelPackage,inet-diag))
  1184. define KernelPackage/inet-mptcp-diag
  1185. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  1186. TITLE:=INET diag support for MultiPath TCP
  1187. DEPENDS:=@KERNEL_MPTCP +kmod-inet-diag
  1188. KCONFIG:=CONFIG_INET_MPTCP_DIAG
  1189. FILES:=$(LINUX_DIR)/net/mptcp/mptcp_diag.ko
  1190. AUTOLOAD:=$(call AutoProbe,mptcp_diag)
  1191. endef
  1192. define KernelPackage/inet-mptcp-diag/description
  1193. Support for INET (MultiPath TCP) socket monitoring interface used by
  1194. native Linux tools such as ss.
  1195. endef
  1196. $(eval $(call KernelPackage,inet-mptcp-diag))
  1197. define KernelPackage/xdp-sockets-diag
  1198. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  1199. TITLE:=PF_XDP sockets monitoring interface support for ss utility
  1200. DEPENDS:=@KERNEL_XDP_SOCKETS
  1201. KCONFIG:=CONFIG_XDP_SOCKETS_DIAG
  1202. FILES:=$(LINUX_DIR)/net/xdp/xsk_diag.ko
  1203. AUTOLOAD:=$(call AutoLoad,31,xsk_diag)
  1204. endef
  1205. define KernelPackage/xdp-sockets-diag/description
  1206. Support for PF_XDP sockets monitoring interface used by the ss tool
  1207. endef
  1208. $(eval $(call KernelPackage,xdp-sockets-diag))
  1209. define KernelPackage/wireguard
  1210. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  1211. TITLE:=WireGuard secure network tunnel
  1212. DEPENDS:= \
  1213. +kmod-crypto-lib-chacha20poly1305 \
  1214. +kmod-crypto-lib-curve25519 \
  1215. +kmod-udptunnel4 \
  1216. +IPV6:kmod-udptunnel6
  1217. KCONFIG:= \
  1218. CONFIG_WIREGUARD \
  1219. CONFIG_WIREGUARD_DEBUG=n
  1220. FILES:=$(LINUX_DIR)/drivers/net/wireguard/wireguard.ko
  1221. AUTOLOAD:=$(call AutoProbe,wireguard)
  1222. endef
  1223. define KernelPackage/wireguard/description
  1224. WireGuard is a novel VPN that runs inside the Linux Kernel and utilizes
  1225. state-of-the-art cryptography. It aims to be faster, simpler, leaner, and
  1226. more useful than IPSec, while avoiding the massive headache. It intends to
  1227. be considerably more performant than OpenVPN. WireGuard is designed as a
  1228. general purpose VPN for running on embedded interfaces and super computers
  1229. alike, fit for many different circumstances. It uses UDP.
  1230. endef
  1231. $(eval $(call KernelPackage,wireguard))
  1232. define KernelPackage/netconsole
  1233. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  1234. TITLE:=Network console logging support
  1235. KCONFIG:=CONFIG_NETCONSOLE \
  1236. CONFIG_NETCONSOLE_DYNAMIC=n
  1237. FILES:=$(LINUX_DIR)/drivers/net/netconsole.ko
  1238. AUTOLOAD:=$(call AutoProbe,netconsole)
  1239. endef
  1240. define KernelPackage/netconsole/description
  1241. Network console logging support.
  1242. endef
  1243. $(eval $(call KernelPackage,netconsole))
  1244. define KernelPackage/qrtr
  1245. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  1246. TITLE:=Qualcomm IPC Router support
  1247. HIDDEN:=1
  1248. KCONFIG:=CONFIG_QRTR
  1249. FILES:= \
  1250. $(LINUX_DIR)/net/qrtr/qrtr.ko
  1251. AUTOLOAD:=$(call AutoProbe,qrtr)
  1252. endef
  1253. define KernelPackage/qrtr/description
  1254. Qualcomm IPC Router support
  1255. endef
  1256. $(eval $(call KernelPackage,qrtr))
  1257. define KernelPackage/qrtr-tun
  1258. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  1259. TITLE:=TUN device for Qualcomm IPC Router
  1260. DEPENDS:=+kmod-qrtr
  1261. KCONFIG:=CONFIG_QRTR_TUN
  1262. FILES:= $(LINUX_DIR)/net/qrtr/qrtr-tun.ko
  1263. AUTOLOAD:=$(call AutoProbe,qrtr-tun)
  1264. endef
  1265. define KernelPackage/qrtr-tun/description
  1266. TUN device for Qualcomm IPC Router
  1267. endef
  1268. $(eval $(call KernelPackage,qrtr-tun))
  1269. define KernelPackage/qrtr-smd
  1270. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  1271. TITLE:=SMD IPC Router channels
  1272. DEPENDS:=+kmod-qrtr @TARGET_qualcommax
  1273. KCONFIG:=CONFIG_QRTR_SMD
  1274. FILES:= $(LINUX_DIR)/net/qrtr/qrtr-smd.ko
  1275. AUTOLOAD:=$(call AutoProbe,qrtr-smd)
  1276. endef
  1277. define KernelPackage/qrtr-smd/description
  1278. SMD IPC Router channels
  1279. endef
  1280. $(eval $(call KernelPackage,qrtr-smd))
  1281. define KernelPackage/qrtr-mhi
  1282. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  1283. TITLE:=MHI IPC Router channels
  1284. DEPENDS:=+kmod-mhi-bus +kmod-qrtr
  1285. KCONFIG:=CONFIG_QRTR_MHI
  1286. FILES:= $(LINUX_DIR)/net/qrtr/qrtr-mhi.ko
  1287. AUTOLOAD:=$(call AutoProbe,qrtr-mhi)
  1288. endef
  1289. define KernelPackage/qrtr-mhi/description
  1290. MHI IPC Router channels
  1291. endef
  1292. $(eval $(call KernelPackage,qrtr-mhi))
  1293. define KernelPackage/unix-diag
  1294. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  1295. TITLE:=UNIX socket monitoring interface
  1296. KCONFIG:=CONFIG_UNIX_DIAG
  1297. FILES:= $(LINUX_DIR)/net/unix/unix_diag.ko
  1298. AUTOLOAD:=$(call AutoProbe,unix_diag)
  1299. endef
  1300. $(eval $(call KernelPackage,unix-diag))
  1301. define KernelPackage/packet-diag
  1302. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  1303. TITLE:=Packet sockets monitoring interface
  1304. KCONFIG:=CONFIG_PACKET_DIAG
  1305. FILES:= $(LINUX_DIR)/net/packet/af_packet_diag.ko
  1306. AUTOLOAD:=$(call AutoProbe,af_packet_diag)
  1307. endef
  1308. $(eval $(call KernelPackage,packet-diag))
  1309. define KernelPackage/team
  1310. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  1311. TITLE:=Ethernet team driver
  1312. KCONFIG:=CONFIG_NET_TEAM
  1313. FILES:=$(LINUX_DIR)/drivers/net/team/team.ko
  1314. AUTOLOAD:=$(call AutoProbe,team)
  1315. endef
  1316. $(eval $(call KernelPackage,team))
  1317. define KernelPackage/team-mode-broadcast
  1318. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  1319. TITLE:=Broadcast mode support
  1320. DEPENDS:=kmod-team
  1321. KCONFIG:=CONFIG_NET_TEAM_MODE_BROADCAST
  1322. FILES:=$(LINUX_DIR)/drivers/net/team/team_mode_broadcast.ko
  1323. AUTOLOAD:=$(call AutoProbe,team_mode_broadcast)
  1324. endef
  1325. $(eval $(call KernelPackage,team-mode-broadcast))
  1326. define KernelPackage/team-mode-roundrobin
  1327. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  1328. TITLE:=Round-robin mode support
  1329. DEPENDS:=kmod-team
  1330. KCONFIG:=CONFIG_NET_TEAM_MODE_ROUNDROBIN
  1331. FILES:=$(LINUX_DIR)/drivers/net/team/team_mode_roundrobin.ko
  1332. AUTOLOAD:=$(call AutoProbe,team_mode_roundrobin)
  1333. endef
  1334. $(eval $(call KernelPackage,team-mode-roundrobin))
  1335. define KernelPackage/team-mode-random
  1336. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  1337. TITLE:=Random mode support
  1338. DEPENDS:=kmod-team
  1339. KCONFIG:=CONFIG_NET_TEAM_MODE_RANDOM
  1340. FILES:=$(LINUX_DIR)/drivers/net/team/team_mode_random.ko
  1341. AUTOLOAD:=$(call AutoProbe,team_mode_random)
  1342. endef
  1343. $(eval $(call KernelPackage,team-mode-random))
  1344. define KernelPackage/team-mode-activebackup
  1345. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  1346. TITLE:=Active-backup mode support
  1347. DEPENDS:=kmod-team
  1348. KCONFIG:=CONFIG_NET_TEAM_MODE_ACTIVEBACKUP
  1349. FILES:=$(LINUX_DIR)/drivers/net/team/team_mode_activebackup.ko
  1350. AUTOLOAD:=$(call AutoProbe,team_mode_activebackup)
  1351. endef
  1352. $(eval $(call KernelPackage,team-mode-activebackup))
  1353. define KernelPackage/team-mode-loadbalance
  1354. SUBMENU:=$(NETWORK_SUPPORT_MENU)
  1355. TITLE:=Load-balance mode support
  1356. DEPENDS:=kmod-team
  1357. KCONFIG:=CONFIG_NET_TEAM_MODE_LOADBALANCE
  1358. FILES:=$(LINUX_DIR)/drivers/net/team/team_mode_loadbalance.ko
  1359. AUTOLOAD:=$(call AutoProbe,team_mode_loadbalance)
  1360. endef
  1361. $(eval $(call KernelPackage,team-mode-loadbalance))