Date: Thu, 23 Jul 1998 21:44:28 +0500 ( AMT ) From: ran@ran.am To: freebsd-hackers@FreeBSD.ORG, freebsd-questions@FreeBSD.ORG, is@gcom.ru Subject: Driver for Arlan-655 Message-ID: <199807231644.VAA12415@styx.aic.net>
next in thread | raw e-mail | index | archive | help
Hi there,
Attached to this letter you'll find source code of a driver for Aeronet
radio modem arlan-655. The driver was developed by Iwan Sharow
<is@gcom.ru >, I modified this driver to add multiple modems support, as
well as have added a configuration program and its support in the driver
through ioctl.
The driver has been extensively tested by in company during the last
month: one computer was configured with one ethernet card and two radio
modems, another one had two ethernet cars and one radio modem.
Cumulative traffic for each of the computers was over 4-5 GB per day.
The most loaded radio modem could provide more than 2 GB per day.
There are still things to improve in the driver and the configuration
program, but this beta version is already useful and it's worth to
publishing it on the ftp server.
Here goes dmesg output from one of the routers:
Copyright (c) 1992-1998 FreeBSD Inc.
Copyright (c) 1982, 1986, 1989, 1991, 1993
The Regents of the University of California. All rights reserved.
FreeBSD 2.2.6-RELEASE #2: Tue Jul 21 17:44:58 AMT 1998
ran@styx.aic.net:/usr/src/sys/compile/Router1
CPU: i486 DX4 (486-class CPU)
Origin = "GenuineIntel" Id = 0x480 Stepping=0
Features=0x3<FPU,VME>
real memory = 16777216 (16384K bytes)
avail memory = 15085568 (14732K bytes)
Probing for devices on the ISA bus:
sc0 at 0x60-0x6f irq 1 on motherboard
sc0: VGA color <16 virtual consoles, flags=0x0>
ed0 at 0x300-0x31f irq 10 on isa
ed0: address 00:40:33:94:47:d4, type NE2000 (16 bit)
fdc0 at 0x3f0-0x3f7 irq 6 drq 2 on isa
fd0: 1.44MB 3.5in
wdc0 at 0x1f0-0x1f7 irq 14 flags 0x80ff80ff on isa
wdc0: unit 0 (wd0): <st3144AT>, 32-bit
wd0: 124MB (255255 sectors), 1001 cyls, 15 heads, 17 S/T, 512 B/S
al0 at 0xd0000 irq 3
al0: ether 00:40:96:20:ce:15
al0 at 0x0 irq 3 maddr 0xd0000 on isa
al1 at 0xd2000 irq 4
al1: ether 00:40:96:11:f1:25
al1 at 0x0 irq 4 maddr 0xd2000 on isa
npx0 on motherboard
npx0: INT 16 interface
IP packet filtering initialized, divert enabled, unlimited logging
ipfw: Entry 65535 cleared.
And here is kernel configuration file:
machine "i386"
cpu "I486_CPU"
cpu "I586_CPU"
ident Zeytoon
maxusers 32
options "CLK_USE_I8254_CALIBRATION"
options "CLK_USE_I586_CALIBRATION"
options INET
options FFS
options PROCFS
options "COMPAT_43"
options UCONSOLE
options FAILSAFE
options USERCONFIG
options IPFIREWALL
options IPFIREWALL_VERBOSE
options IPDIVERT
options INCLUDE_CONFIG_FILE
config kernel root on wd0
controller isa0
controller fdc0 at isa? port "IO_FD1" bio irq 6 drq 2 vector fdintr
disk fd0 at fdc0 drive 0
controller wdc0 at isa? port "IO_WD1" bio irq 14 flags 0x80ff80ff vector wdintr
disk wd0 at wdc0 drive 0
device npx0 at isa? port "IO_NPX" flags 0x0 irq 13 vector npxintr
device sc0 at isa? port "IO_KBD" tty irq 1 vector scintr
device al0 at isa? conflicts net irq 3 iomem 0xd0000 vector alintr
device al1 at isa? conflicts net irq 4 iomem 0xd2000 vector alintr
device ed0 at isa? port 0x300 net irq 10 iomem 0xd8000 vector edintr
pseudo-device loop
pseudo-device ether
pseudo-device log
pseudo-device pty 4
pseudo-device bpfilter 4
The whole suite is also available from
ftp://styx.aic.net/pub/FreeBSD/arlan-655-0721.tgz
begin 400 arlan-655-0721.tgz
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
@*XWX0+TR02T5/ZBOG[X=0GQ[OCU+G_\!AN6(H`#(``"W
`
end
--
Ran d'Adi ran@ran.am
ran@styx.aic.net
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199807231644.VAA12415>
