---
name: "dahdi_span_types"
section: "8"
platform: "linux"
package: "dahdi"
version: "1:3.1.0-2.1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/dahdi_span_types"
---

# dahdi\_span\_types(8)

set line modes of DAHDI spans before assignment

## NAME

dahdi\_span\_types - set line modes of DAHDI spans before assignment

## SYNOPSIS

**dahdi\_span\_types \[*options*\] \<list\|dumpconfig\|compare\|set\> \[*devpath* ...\]**

## DESCRIPTION

The span type (the line mode: E1/T1/J1) must be set to a span before DAHDI assigns it a span number, as E1 spans use more channels. **dahdi\_span\_types** applies the span type configuration to an un-assigned span.

Using it only makes sense when the kernel module parameter **dahdi.auto\_assign\_span** is unset, otherwise DAHDI automatically assign span numbers during device registration.

**dahdi\_span\_types** takes a command and an optional list of devices. If no device is given, the command is applied to all devices.

The device is marked as a path in the SysFS tree.

## OPTIONS

**-h\|--help**

Output usage message and exit

**-n\|--dry-run**

During **"set"** operation, only show what would be done, without actually changing anything.

**-v\|--verbose**

During **"set"** operation, show the actions that are being performed.

- **--line-mode=***\<E1\|T1\|J1\>*

  During **"dumpconfig"** operation, force special generation mode:

  - •

    First, generates a "wildcard" entry with the fiven **line-mode**.

  - •

    Comment out all span entries. Each of them may be manually un-commented to override the "wildcard".

## SUB-COMMANDS

**set**

Reads settings from **span-types.conf** and applies them to the device(s) specified in the command line (or all devices, if none specified).

**compare**

Compare the settings on the system to those in the configuration file. For each line that applies to a device on the system, print it if the value to be set and the active value on the system differ.

The exit status is 0 if there is no difference and non-zero if a difference was detected.

**list**

List line modes for all spans in the system which may be set with dahdi\_span\_types (E1/T1/J1 spans).

**dumpconfig**

List types for the spans in a format fit to be used in **span-types.conf**. Use this to generate a configuration file after you have (perhaps manually) set all existing spans.

**dahdi\_genconf spantypes** uses this command internally.

## CONFIGURATION

### General structure

**span-types.conf** is a file with lines specifying line modes of spans.

Empty lines or lines beginning with '#' are ignored.

Each line is in the format of:

*ID spanspec ...*

The *ID* field specifies the DAHDI device and the *spanspecs* define the line modes of its spans. A line may have multiple *spanspecs* in a single line (though dumpconfig generates a configuration with one per line).

### Span Identifier

A DAHDI device may be specified either by a hardware identifier (a software readable serial number or whatever) or the location in which it is installed on the system. The former makes it simpler to change connector / slot whereas the latter makes it simpler to replace a unit.

The value in this field is matched (when the command **set** is used) to the following values:

 *hwid*\
  **@***location*\
  *devpath*

See above for their descriptions. The value may include shell wildcards: \*, ? and \[\], which are used in the match. The values to be matched are first cleaned up: '!' is replaced with '/' and any character not in "a-zA-Z0-9/:.-" is replaced by "\_".

Note that while span-types.conf allows an arbitrarily-complex combination of E1, J1 and T1 ports, it would normally have just a single wildcard line setting the line mode (the first line in the example below).

### Span Specification

Each line should have one or more span specifications: this is the value used to set span type with DAHDI in the SysFS interface. A specification has two colon-separated fields:

*rel\_span\_no:span\_type*

for instance, the following are four span specifications specify ports 1 and 2 as E1 and ports 3 and 4 as T1: \[12\]:E1 \[34\]:T1 .

**rel\_span\_no**

The relative number of the span in the device. E.g.: port number. This field may contain shell wildcards (\*, ? and \[\])

**span\_type**

E1/T1/J1

### Multiple matches

During **set** operation, the **dahdi\_span\_types** applies all matching settings to a span. This is done in the order of lines in the configuration files.

Thus, if there are multiple matches to a span -- the last match will *win* (all will be applied to the kernel in order. The last one in the file will be applied last).

Example:

```
*             *:T1      # All spans on all devices will be T1
usb:X1234567  [34]:E1   # Except spans 3,4 on the device which will be E1
```

## ENVIRONMENT

**DAHDICONFDIR**

The directory in which span-types.conf resides. /etc/dahdi if not overridden from the environment.

**DAHDISPANTYPESCONF**

The path to span-types.conf resides. /etc/dahdi/span-types.conf if not overridden from the environment.

## FILES

**/etc/dahdi/span-types.conf**

The default location for the configuration file.

**/sys/bus/dahdi\_devices/devices/*device***

SysFS node for the device. In this directory reside the following files, among others:

**spantype**

read/write file. Reading from it returns current configuration for spans of the device. Span-specifications can be written to it to change line modes (but only for a span that is not assigned yet).

## SEE ALSO

[dahdi\_span\_assignments(8)](/dahdi_span_assignments/8.md), [dahdi\_genconf(8)](/dahdi_genconf/8.md), [dahdi\_cfg(8)](/dahdi_cfg/8.md)

## AUTHOR

dahdi\_span\_types was written by Oron Peled.  This manual page was written by Tzafrir Cohen. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License, Version 2 any  later version published by the Free Software Foundation.
