1# SPDX-License-Identifier: GPL-2.0 2# Copyright (C) B.A.T.M.A.N. contributors: 3# 4# Marek Lindner, Simon Wunderlich 5 6# 7# B.A.T.M.A.N meshing protocol 8# 9 10config BATMAN_ADV 11 tristate "B.A.T.M.A.N. Advanced Meshing Protocol" 12 select CRC32 13 help 14 B.A.T.M.A.N. (better approach to mobile ad-hoc networking) is 15 a routing protocol for multi-hop ad-hoc mesh networks. The 16 networks may be wired or wireless. See 17 https://www.open-mesh.org/ for more information and user space 18 tools. 19 20config BATMAN_ADV_BATMAN_V 21 bool "B.A.T.M.A.N. V protocol" 22 depends on BATMAN_ADV && !(CFG80211=m && BATMAN_ADV=y) 23 default y 24 help 25 This option enables the B.A.T.M.A.N. V protocol, the successor 26 of the currently used B.A.T.M.A.N. IV protocol. The main 27 changes include splitting of the OGM protocol into a neighbor 28 discovery protocol (Echo Location Protocol, ELP) and a new OGM 29 Protocol OGMv2 for flooding protocol information through the 30 network, as well as a throughput based metric. 31 B.A.T.M.A.N. V is currently considered experimental and not 32 compatible to B.A.T.M.A.N. IV networks. 33 34config BATMAN_ADV_BLA 35 bool "Bridge Loop Avoidance" 36 depends on BATMAN_ADV && INET 37 select CRC16 38 default y 39 help 40 This option enables BLA (Bridge Loop Avoidance), a mechanism 41 to avoid Ethernet frames looping when mesh nodes are connected 42 to both the same LAN and the same mesh. If you will never use 43 more than one mesh node in the same LAN, you can safely remove 44 this feature and save some space. 45 46config BATMAN_ADV_DAT 47 bool "Distributed ARP Table" 48 depends on BATMAN_ADV && INET 49 default y 50 help 51 This option enables DAT (Distributed ARP Table), a DHT based 52 mechanism that increases ARP reliability on sparse wireless 53 mesh networks. If you think that your network does not need 54 this option you can safely remove it and save some space. 55 56config BATMAN_ADV_MCAST 57 bool "Multicast optimisation" 58 depends on BATMAN_ADV && INET && !(BRIDGE=m && BATMAN_ADV=y) 59 default y 60 help 61 This option enables the multicast optimisation which aims to 62 reduce the air overhead while improving the reliability of 63 multicast messages. 64 65config BATMAN_ADV_DEBUG 66 bool "B.A.T.M.A.N. debugging" 67 depends on BATMAN_ADV 68 help 69 This is an option for use by developers; most people should 70 say N here. This enables compilation of support for 71 outputting debugging information to the tracing buffer. The output is 72 controlled via the batadv netdev specific log_level setting. 73 74config BATMAN_ADV_TRACING 75 bool "B.A.T.M.A.N. tracing support" 76 depends on BATMAN_ADV 77 depends on EVENT_TRACING 78 help 79 This is an option for use by developers; most people should 80 say N here. Select this option to gather traces like the debug 81 messages using the generic tracing infrastructure of the kernel. 82 BATMAN_ADV_DEBUG must also be selected to get trace events for 83 batadv_dbg. 84