1 # SPDX-License-Identifier: GPL-2.0-only
2 #
3 # Amateur Radio protocols and AX.25 device configuration
4 #
5 
6 menuconfig HAMRADIO
7 	depends on NET
8 	bool "Amateur Radio support"
9 	help
10 	  If you want to connect your Linux box to an amateur radio, answer Y
11 	  here. You want to read <https://www.tapr.org/>
12 	  and more specifically about AX.25 on Linux
13 	  <https://linux-ax25.in-berlin.de>.
14 
15 	  Note that the answer to this question won't directly affect the
16 	  kernel: saying N will just cause the configurator to skip all
17 	  the questions about amateur radio.
18 
19 comment "Packet Radio protocols"
20 	depends on HAMRADIO
21 
22 config AX25
23 	tristate "Amateur Radio AX.25 Level 2 protocol"
24 	depends on HAMRADIO
25 	help
26 	  This is the protocol used for computer communication over amateur
27 	  radio. It is either used by itself for point-to-point links, or to
28 	  carry other protocols such as tcp/ip. To use it, you need a device
29 	  that connects your Linux box to your amateur radio. You can either
30 	  use a low speed TNC (a Terminal Node Controller acts as a kind of
31 	  modem connecting your computer's serial port to your radio's
32 	  microphone input and speaker output) supporting the KISS protocol or
33 	  one of the various SCC cards that are supported by the generic Z8530
34 	  or the DMA SCC driver. Another option are the Baycom modem serial
35 	  and parallel port hacks or the sound card modem (supported by their
36 	  own drivers). If you say Y here, you also have to say Y to one of
37 	  those drivers.
38 
39 	  Information about where to get supporting software for Linux amateur
40 	  radio as well as information about how to configure an AX.25 port is
41 	  contained in the AX25-HOWTO, available from
42 	  <https://www.tldp.org/docs.html#howto>. You might also want to
43 	  check out the file <file:Documentation/networking/ax25.rst> in the
44 	  kernel source. More information about digital amateur radio in
45 	  general is on the WWW at
46 	  <https://www.tapr.org/>.
47 
48 	  To compile this driver as a module, choose M here: the
49 	  module will be called ax25.
50 
51 config AX25_DAMA_SLAVE
52 	bool "AX.25 DAMA Slave support"
53 	default y
54 	depends on AX25
55 	help
56 	  DAMA is a mechanism to prevent collisions when doing AX.25
57 	  networking. A DAMA server (called "master") accepts incoming traffic
58 	  from clients (called "slaves") and redistributes it to other slaves.
59 	  If you say Y here, your Linux box will act as a DAMA slave; this is
60 	  transparent in that you don't have to do any special DAMA
61 	  configuration. Linux cannot yet act as a DAMA server.  This option
62 	  only compiles DAMA slave support into the kernel.  It still needs to
63 	  be enabled at runtime.  For more about DAMA see
64 	  <https://linux-ax25.in-berlin.de>.  If unsure, say Y.
65 
66 # placeholder until implemented
67 config AX25_DAMA_MASTER
68 	bool 'AX.25 DAMA Master support'
69 	depends on AX25_DAMA_SLAVE && BROKEN
70 	help
71 	  DAMA is a mechanism to prevent collisions when doing AX.25
72 	  networking. A DAMA server (called "master") accepts incoming traffic
73 	  from clients (called "slaves") and redistributes it to other slaves.
74 	  If you say Y here, your Linux box will act as a DAMA master; this is
75 	  transparent in that you don't have to do any special DAMA
76 	  configuration. Linux cannot yet act as a DAMA server.  This option
77 	  only compiles DAMA slave support into the kernel.  It still needs to
78 	  be explicitly enabled, so if unsure, say Y.
79 
80 config NETROM
81 	tristate "Amateur Radio NET/ROM protocol"
82 	depends on AX25
83 	help
84 	  NET/ROM is a network layer protocol on top of AX.25 useful for
85 	  routing.
86 
87 	  A comprehensive listing of all the software for Linux amateur radio
88 	  users as well as information about how to configure an AX.25 port is
89 	  contained in the Linux Ham Wiki, available from
90 	  <https://linux-ax25.in-berlin.de>. You also might want to check out
91 	  the file <file:Documentation/networking/ax25.rst>. More information
92 	  about digital amateur radio in general is on the WWW at
93 	  <https://www.tapr.org/>.
94 
95 	  To compile this driver as a module, choose M here: the
96 	  module will be called netrom.
97 
98 config ROSE
99 	tristate "Amateur Radio X.25 PLP (Rose)"
100 	depends on AX25
101 	help
102 	  The Packet Layer Protocol (PLP) is a way to route packets over X.25
103 	  connections in general and amateur radio AX.25 connections in
104 	  particular, essentially an alternative to NET/ROM.
105 
106 	  A comprehensive listing of all the software for Linux amateur radio
107 	  users as well as information about how to configure an AX.25 port is
108 	  contained in the Linux Ham Wiki, available from
109 	  <https://linux-ax25.in-berlin.de>.  You also might want to check out
110 	  the file <file:Documentation/networking/ax25.rst>. More information
111 	  about digital amateur radio in general is on the WWW at
112 	  <https://www.tapr.org/>.
113 
114 	  To compile this driver as a module, choose M here: the
115 	  module will be called rose.
116 
117 menu "AX.25 network device drivers"
118 	depends on HAMRADIO && AX25
119 
120 source "drivers/net/hamradio/Kconfig"
121 
122 endmenu
123