DAICCTL(8)

NAME
daicctl - download firmware and configuration to Diehl legacy active ISDN controllers

SYNOPSIS
daicctl [ -h | -?]
daicctl -l
daicctl {-i | -I} [-q] [-b <firmware base directory>] [-f <config file name>]
daicctl {-u | -U} [-q] [-b <firmware base directory>] [-f <config file name>]
daicctl -r [-q] [{-c# | -n <name>}] [-f <config file name>]
daicctl [-d] [-q] [{-c# | -n <name>}] [-f <config file name>]

DESCRIPTION
The daicctl command is used to download firmware and configuration data to the legacy active ISDN boards from Eicon, supported by the CAPI controller driver daic. These boards were originally manufactured by the Diehl Elektronik GmbH, which is now part of the Eicon Networks Corporation. So the manufacturer of the boards supported by the daic device driver will be called Diehl throughout this and other manual pages.

daicctl uses a configuration file to determine the configuration settings and the firmware files to load onto every board. The default path name for this file is /etc/daic.cfg but an arbitrary file name can be specified on the command line.

Every Diehl active ISDN board needs some firmware loaded to be operable. Additionally some bootstrap code must be loaded before the protocol firmware. Which bootstrap and firmare file is needed for a specific board type is mentioned in the driver manual file daic(9).

The bootstrap firmware files themselves are strictly speaking not part of the daic device driver or daicctl tool distribution. They must either be extracted from the Linux Eicon device driver (the firmware files are part of the download utility) or obtained from Eicon themselves (see http://www.eicon.com, search for drivers for “legacy” boards). In the later case one has to extract the respective firmware files from one of the Microsoft Windows versions.

The board software for the legacy Diehl boards is distributed on two files. The first one is the primary bootstrap for the board. It is simply used to let the board accept and start the real protocol firmware.

The first bootstrap file ist termed dnload.bin for the boards with basic rate ports (S, Sx, SCOM and Quadro) and prload.bin for the board with a primary rate ISDN port (S2m).

The protocol firmware files are specific for each board type. And every D-channel protocol supported requires a separate firmware file. The files are normally termed by the D-channel supported. They have a prefix of “te_” and the file suffix determines the board type. The file name portion between these parts is made up of the D-channel protocol name supported by the firmware file. The file suffix is “.bin” for the S boards, “.sx” for the Sx, “.sy” for the SCOM, “.sq” for the Quadro and “.p” for the S2m board type.

Both software files will usually be stored in the directory /usr/share/capi/daic. The effective place from where daicctl reads the download files is specified in the configuration file.

  Command line options
The daicctl program can perform several operations. The task to execute is defined by one of the main command line options:

-l  List all available CAPI controllers. The controllers handled by the daic driver are specially marked.

-i | -I
    Create an initial configuration file for all Diehl controllers found in the system. For every board default settings are used. With -i the command will fail if a configuration file with the same name already exists. Specifying -I will overwrite an existing file.

-u | -U
    Update an existing configuration file to reflect the currently available Diehl controllers. With -u only new boards not already found in the current file are added with defaults. Existing configuration records are not touched and no board is removed from the file. Specifying -U will also remove configuration entries for boards not found in the system (any more).

-d  Perform a firmware download for one or all Diehl controllers. This is the default if none of the other main options is specified. By default all controllers are handled. Using one of the following additional command line options one can select a single controller to download.

-r  Disable one or all Diehl controllers. By default all controllers are disabled, so they are not useable any more until a successful download operation. Using one of the following additional command line options one can select a single controller to disable.

The following additional command line options are supported by daicctl:

-h | -?
    Print out some usage inforation about daicctl and its usage. If this option is specified, nothing is done but printing out help information.

-b <firmware base directory>
    Use a specific directory for the bootstrap and firmware files. The default is /usr/share/capi/daic, but can be overriden with this option. The firmware base directory is only relevant when creating a default configuration file. It is stored into the global configuration field BaseDir. The download and disable tasks take the base directory from the configuration file.

-c# When used with -d or -r this option selects a single controller for the download or disable operation. The argument is the CAPI controller number to use. As the configuration file does not contain CAPI controller numbers one should check the output of “daicctl -l” to see which controller is addressed through a specific CAPI controller number. Addressing a controller not handled by the daic driver or for which there is no entry in the configuration file will fail.

    The Quadro boards with four ISDN ports require the download operation to be executed over the CAPI controller number for the first port of the board. If daicctl is called with the controller number of the second or higher port, the download or reset operation will be refused.

-f <config file name>
    Use a different path name for the configuration file. The default is /etc/daic.cfg.

-n <name>
    When used with -d or -r this option selects a single controller for the download or disable operation. The argument is the board name as used within the configuration file naming a board configuration section or as delivered by the command “daicctl -l”. Case is not significant for the board name.

-q  Suppress normal program output. Only error message will be printed.

  The board configuration
The firmware and the configuration data to load onto every installed Diehl board in the system is determined from a configuration file. It contains the path names to the bootstrap and the firmware files for each board, and also configuration settings for the line attachment. The default path name for the configuration file is /etc/daic.cfg but that can be changed through the command line. For the documentation of its layout see daic.cfg(5).

AUTOMATICALLY LOADING BOARDS ON SYSTEM STARTUP
Normally all Diehl active ISDN boards should automatically be loaded during system startup. This is done through the system startup script /etc/rc.d/daic. This automatism must be enabled through /etc/rc.conf by adding the line “daic_enable="YES"”. The startup script will then automatically load the daic driver module if it is not already loaded or compiled into the kernel and load all boards with configuration sections in /etc/daic.cfg. On the first run (i.e. if no /etc/daic.cfg file exists) a default configuration file with entries for all currently available boards is created.

Note that the CAPI subsystem in general must also be enabled in /etc/rc.conf through a line like “capi_enable="YES"”.

FILES
/etc/daic.cfg
    By default the configuration file for the daicctl tool resides in the directory /etc. But the directory and the file name can be changed through the command line.

EXAMPLES
The first example command line will simply list all available CAPI controllers:

    daicctl -l

The following command line will create the initial configuration file /etc/daic.cfg for all Diehl boards found in the system, containing default settings. The resulting file should be checked and modified as needed.

    daicctl -i

The next example will load all boards with configuration sections in the configuration file /etc/daic.cfg with their firmware and configuration settings:

    daicctl -d

The last example will disable the board named “Diehl SCOM-1”. After this command the addressed controller cannot be used until another download operation for it is successfully executed.

    daicctl -r "Diehl SCOM-1"

SEE ALSO
c4b(4), daic(4), daic.cfg(5), http://www.eicon.com.

HISTORY
The daicctl tool first appeared as an add-on for FreeBSD 5.0.

ACKNOWLEDGEMENTS
The information needed to implemented this tool (and the daic device driver) was taken from the manual for S, Sx and SCOM boards and from the Linux driver for Eicon ISDN boards.

AUTHORS
This manual page and daicctl were written by Thomas Wintergerst <twinterg@gmx.de>.