Commit b5fcf32d authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab Committed by David S. Miller
Browse files

docs: networking: convert baycom.txt to ReST



- add SPDX header;
- adjust titles and chapters, adding proper markups;
- mark code blocks and literals as such;
- mark tables as such;
- adjust identation, whitespaces and blank lines;
- add to networking/index.rst.

Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 20b943f0
Loading
Loading
Loading
Loading
+68 −52
Original line number Diff line number Diff line
		    LINUX DRIVERS FOR BAYCOM MODEMS
.. SPDX-License-Identifier: GPL-2.0

===============================
Linux Drivers for Baycom Modems
===============================

Thomas M. Sailer, HB9JNX/AE4WA, <sailer@ife.ee.ethz.ch>

!!NEW!! (04/98) The drivers for the baycom modems have been split into
The drivers for the baycom modems have been split into
separate drivers as they did not share any code, and the driver
and device names have changed.

@@ -10,10 +14,11 @@ This document describes the Linux Kernel Drivers for simple Baycom style
amateur radio modems.

The following drivers are available:
====================================

baycom_ser_fdx:
  This driver supports the SER12 modems either full or half duplex.
  Its baud rate may be changed via the `baud' module parameter,
  Its baud rate may be changed via the ``baud`` module parameter,
  therefore it supports just about every bit bang modem on a
  serial port. Its devices are called bcsf0 through bcsf3.
  This is the recommended driver for SER12 type modems,
@@ -37,7 +42,8 @@ baycom_epp:

The following modems are supported:

ser12:  This is a very simple 1200 baud AFSK modem. The modem consists only
======= ========================================================================
ser12   This is a very simple 1200 baud AFSK modem. The modem consists only
	of a modulator/demodulator chip, usually a TI TCM3105. The computer
	is responsible for regenerating the receiver bit clock, as well as
	for handling the HDLC protocol. The modem connects to a serial port,
@@ -45,7 +51,7 @@ ser12: This is a very simple 1200 baud AFSK modem. The modem consists only
	port, the kernel driver for serial ports cannot be used, and this
	driver only supports standard serial hardware (8250, 16450, 16550)

par96:  This is a modem for 9600 baud FSK compatible to the G3RUH standard.
par96   This is a modem for 9600 baud FSK compatible to the G3RUH standard.
	The modem does all the filtering and regenerates the receiver clock.
	Data is transferred from and to the PC via a shift register.
	The shift register is filled with 16 bits and an interrupt is signalled.
@@ -54,18 +60,19 @@ par96: This is a modem for 9600 baud FSK compatible to the G3RUH standard.
	implementation of the HDLC protocol and the scrambler polynomial to
	the PC.

picpar: This is a redesign of the par96 modem by Henning Rech, DF9IC. The modem
picpar  This is a redesign of the par96 modem by Henning Rech, DF9IC. The modem
	is protocol compatible to par96, but uses only three low power ICs
	and can therefore be fed from the parallel port and does not require
	an additional power supply. Furthermore, it incorporates a carrier
	detect circuitry.

EPP:    This is a high-speed modem adaptor that connects to an enhanced parallel port.
        Its target audience is users working over a high speed hub (76.8kbit/s).

eppfpga: This is a redesign of the EPP adaptor.
EPP     This is a high-speed modem adaptor that connects to an enhanced parallel
	port.

	Its target audience is users working over a high speed hub (76.8kbit/s).

eppfpga This is a redesign of the EPP adaptor.
======= ========================================================================

All of the above modems only support half duplex communications. However,
the driver supports the KISS (see below) fullduplex command. It then simply
@@ -76,6 +83,7 @@ access protocol.


The Interface of the drivers
============================

Unlike previous drivers, these drivers are no longer character devices,
but they are now true kernel network interfaces. Installation is therefore
@@ -88,20 +96,22 @@ me for WAMPES which allows attaching a kernel network interface directly.


Configuring the driver
======================

Every time a driver is inserted into the kernel, it has to know which
modems it should access at which ports. This can be done with the setbaycom
utility. If you are only using one modem, you can also configure the
driver from the insmod command line (or by means of an option line in
/etc/modprobe.d/*.conf).
``/etc/modprobe.d/*.conf``).

Examples::

Examples:
  modprobe baycom_ser_fdx mode="ser12*" iobase=0x3f8 irq=4
  sethdlc -i bcsf0 -p mode "ser12*" io 0x3f8 irq 4

Both lines configure the first port to drive a ser12 modem at the first
serial port (COM1 under DOS). The * in the mode parameter instructs the driver to use
the software DCD algorithm (see below).
serial port (COM1 under DOS). The * in the mode parameter instructs the driver
to use the software DCD algorithm (see below)::

  insmod baycom_par mode="picpar" iobase=0x378
  sethdlc -i bcp0 -p mode "picpar" io 0x378
@@ -115,29 +125,33 @@ Note that both utilities interpret the values slightly differently.


Hardware DCD versus Software DCD
================================

To avoid collisions on the air, the driver must know when the channel is
busy. This is the task of the DCD circuitry/software. The driver may either
utilise a software DCD algorithm (options=1) or use a DCD signal from
the hardware (options=0).

ser12:  if software DCD is utilised, the radio's squelch should always be
======= =================================================================
ser12   if software DCD is utilised, the radio's squelch should always be
	open. It is highly recommended to use the software DCD algorithm,
	as it is much faster than most hardware squelch circuitry. The
	disadvantage is a slightly higher load on the system.

par96:  the software DCD algorithm for this type of modem is rather poor.
par96   the software DCD algorithm for this type of modem is rather poor.
	The modem simply does not provide enough information to implement
	a reasonable DCD algorithm in software. Therefore, if your radio
	feeds the DCD input of the PAR96 modem, the use of the hardware
	DCD circuitry is recommended.

picpar: the picpar modem features a builtin DCD hardware, which is highly
picpar  the picpar modem features a builtin DCD hardware, which is highly
	recommended.
======= =================================================================



Compatibility with the rest of the Linux kernel
===============================================

The serial driver and the baycom serial drivers compete
for the same hardware resources. Of course only one driver can access a given
@@ -154,5 +168,7 @@ The parallel port drivers (baycom_par, baycom_epp) now use the parport subsystem
to arbitrate the ports between different client drivers.

vy 73s de

Tom Sailer, sailer@ife.ee.ethz.ch

hb9jnx @ hb9w.ampr.org
+1 −0
Original line number Diff line number Diff line
@@ -43,6 +43,7 @@ Contents:
   arcnet
   atm
   ax25
   baycom

.. only::  subproject and html

+4 −4
Original line number Diff line number Diff line
@@ -127,7 +127,7 @@ config BAYCOM_SER_FDX
	  your serial interface chip. To configure the driver, use the sethdlc
	  utility available in the standard ax25 utilities package. For
	  information on the modems, see <http://www.baycom.de/> and
	  <file:Documentation/networking/baycom.txt>.
	  <file:Documentation/networking/baycom.rst>.

	  To compile this driver as a module, choose M here: the module
	  will be called baycom_ser_fdx.  This is recommended.
@@ -145,7 +145,7 @@ config BAYCOM_SER_HDX
	  the driver, use the sethdlc utility available in the standard ax25
	  utilities package. For information on the modems, see
	  <http://www.baycom.de/> and
	  <file:Documentation/networking/baycom.txt>.
	  <file:Documentation/networking/baycom.rst>.

	  To compile this driver as a module, choose M here: the module
	  will be called baycom_ser_hdx.  This is recommended.
@@ -160,7 +160,7 @@ config BAYCOM_PAR
	  par96 designs. To configure the driver, use the sethdlc utility
	  available in the standard ax25 utilities package. For information on
	  the modems, see <http://www.baycom.de/> and the file
	  <file:Documentation/networking/baycom.txt>.
	  <file:Documentation/networking/baycom.rst>.

	  To compile this driver as a module, choose M here: the module
	  will be called baycom_par.  This is recommended.
@@ -175,7 +175,7 @@ config BAYCOM_EPP
	  designs. To configure the driver, use the sethdlc utility available
	  in the standard ax25 utilities package. For information on the
	  modems, see <http://www.baycom.de/> and the file
	  <file:Documentation/networking/baycom.txt>.
	  <file:Documentation/networking/baycom.rst>.

	  To compile this driver as a module, choose M here: the module
	  will be called baycom_epp.  This is recommended.