Merge tag 'pm-part2-4.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael...
[linux-2.6-block.git] / net / batman-adv / Kconfig
CommitLineData
9969ffa8
SE
1# SPDX-License-Identifier: GPL-2.0
2# Copyright (C) 2007-2017 B.A.T.M.A.N. contributors:
3#
4# Marek Lindner, Simon Wunderlich
5#
6# This program is free software; you can redistribute it and/or
7# modify it under the terms of version 2 of the GNU General Public
8# License as published by the Free Software Foundation.
9#
10# This program is distributed in the hope that it will be useful, but
11# WITHOUT ANY WARRANTY; without even the implied warranty of
12# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13# General Public License for more details.
14#
15# You should have received a copy of the GNU General Public License
16# along with this program; if not, see <http://www.gnu.org/licenses/>.
17
c6c8fea2
SE
18#
19# B.A.T.M.A.N meshing protocol
20#
21
22config BATMAN_ADV
23 tristate "B.A.T.M.A.N. Advanced Meshing Protocol"
17224474 24 depends on NET
a73105b8 25 select CRC16
95a066d8 26 select LIBCRC32C
c6c8fea2 27 default n
10e3cd6a
AQ
28 help
29 B.A.T.M.A.N. (better approach to mobile ad-hoc networking) is
30 a routing protocol for multi-hop ad-hoc mesh networks. The
31 networks may be wired or wireless. See
7b5e7396 32 https://www.open-mesh.org/ for more information and user space
10e3cd6a 33 tools.
c6c8fea2 34
d6f94d91
LL
35config BATMAN_ADV_BATMAN_V
36 bool "B.A.T.M.A.N. V protocol (experimental)"
0566df30 37 depends on BATMAN_ADV && !(CFG80211=m && BATMAN_ADV=y)
d6f94d91
LL
38 default n
39 help
40 This option enables the B.A.T.M.A.N. V protocol, the successor
41 of the currently used B.A.T.M.A.N. IV protocol. The main
42 changes include splitting of the OGM protocol into a neighbor
43 discovery protocol (Echo Location Protocol, ELP) and a new OGM
44 Protocol OGMv2 for flooding protocol information through the
45 network, as well as a throughput based metric.
46 B.A.T.M.A.N. V is currently considered experimental and not
47 compatible to B.A.T.M.A.N. IV networks.
48
7a5cc242
SW
49config BATMAN_ADV_BLA
50 bool "Bridge Loop Avoidance"
17224474 51 depends on BATMAN_ADV && INET
7a5cc242
SW
52 default y
53 help
54 This option enables BLA (Bridge Loop Avoidance), a mechanism
55 to avoid Ethernet frames looping when mesh nodes are connected
56 to both the same LAN and the same mesh. If you will never use
57 more than one mesh node in the same LAN, you can safely remove
58 this feature and save some space.
c6c8fea2 59
17224474
AQ
60config BATMAN_ADV_DAT
61 bool "Distributed ARP Table"
62 depends on BATMAN_ADV && INET
63 default n
64 help
65 This option enables DAT (Distributed ARP Table), a DHT based
66 mechanism that increases ARP reliability on sparse wireless
67 mesh networks. If you think that your network does not need
68 this option you can safely remove it and save some space.
69
d353d8d4
MH
70config BATMAN_ADV_NC
71 bool "Network Coding"
72 depends on BATMAN_ADV
73 default n
74 help
75 This option enables network coding, a mechanism that aims to
76 increase the overall network throughput by fusing multiple
77 packets in one transmission.
78 Note that interfaces controlled by batman-adv must be manually
79 configured to have promiscuous mode enabled in order to make
80 network coding work.
81 If you think that your network does not need this feature you
82 can safely disable it and save some space.
83
c5caf4ef
LL
84config BATMAN_ADV_MCAST
85 bool "Multicast optimisation"
687937ab 86 depends on BATMAN_ADV && INET && !(BRIDGE=m && BATMAN_ADV=y)
c5caf4ef
LL
87 default n
88 help
89 This option enables the multicast optimisation which aims to
90 reduce the air overhead while improving the reliability of
91 multicast messages.
92
dc1cbd14
SE
93config BATMAN_ADV_DEBUGFS
94 bool "batman-adv debugfs entries"
10e3cd6a 95 depends on BATMAN_ADV
95353956 96 depends on DEBUG_FS
dc1cbd14
SE
97 default y
98 help
99 Enable this to export routing related debug tables via debugfs.
100 The information for each soft-interface and used hard-interface can be
101 found under batman_adv/
102
103 If unsure, say Y.
104
105config BATMAN_ADV_DEBUG
106 bool "B.A.T.M.A.N. debugging"
107 depends on BATMAN_ADV_DEBUGFS
10e3cd6a 108 help
c6c8fea2
SE
109 This is an option for use by developers; most people should
110 say N here. This enables compilation of support for
111 outputting debugging information to the kernel log. The
112 output is controlled via the module parameter debug.