AR(4) BSD/i386 Kernel Interfaces Manual AR(4)


ar — synchronous Digi/Arnet device driver


device ar0 at isa? port 0x300 irq 10 iomem 0xd0000
device ar1 at isa? port 0x310 irq 11 iomem 0xd0000

device sppp


The ar driver supports the Digi/Arnet SYNC/570i ISA and PCI cards that is based on the HD64570 chip. Both the 2 and 4 port cards are supported and auto detected.

The standard FreeBSD sppp code is used for the link level layer. The default protocol used is PPP. The Cisco HDLC protocol can be used by adding link2 to ifconfig(8).

Alternately, the driver can be compiled to support netgraph(4) (see below).


Only one line for each card is needed in the kernel configuration file. The first card’s ports will be installed from ar0. The numbering of the next card will continue where the first stopped, e.g. if the first card is a two port card it will use ar0 and ar1. The next card will then start at ar2.

The card only supports IRQ 3, 5, 7, 10, 11, 12 and 15.

The iomem area is a 16Kb block and must start at a 16Kb boundary.


If the kernel is compiled with options NETGRAPH then the sppp and Cisco HDLC modes are disabled (and the sppp driver is unneeded), and this driver functions as a netgraph(4) node with a single hook named rawdata. Connecting to this hook enables the transmission of raw HDLC frames. The node will have the same name as the device with ’’sync_’’ prepended, e.g., sync_ar0.


ar%d: Warning illegal interrupt %d.  The card cannot use the specified interrupt. Choose a different one.


cx(4), netgraph(4), netintro(4), sr(4), ifconfig(8)


The ar device driver first appeared in FreeBSD 2.2.


The ar device driver was written by John Hay <jhay [AT]>. Netgraph support was added by Julian Elischer <julian [AT]>.


At the moment only the V.35 and X.21 interfaces are tested. The others may need tweaks to the clock selection code.

The code can probably stand some optimizing.

Please report bugs to ⟨ jhay [AT]⟩ .

BSD November 19, 1995 BSD