Deactivate manpages repo-copied to man4 directory (all these drivers
not i386 specific anymore -- move them to appropriate place)
This commit is contained in:
parent
1f297a8943
commit
26a4cb66b9
@ -1,111 +1,67 @@
|
||||
# $FreeBSD$
|
||||
|
||||
MAN4= adv.4 adw.4 aha.4 ahb.4 ahc.4 aic.4 al.4 alpm.4 apm.4 ar.4 asc.4 \
|
||||
atkbd.4 atkbdc.4 ax.4 bktr.4 bt.4 cs.4 cx.4 cy.4 de.4 \
|
||||
dgb.4 dm.4 dpt.4 ed.4 el.4 en.4 ep.4 ex.4 fdc.4 fe.4 fxp.4 gsc.4 \
|
||||
ie.4 io.4 joy.4 keyboard.4 labpc.4 le.4 lnc.4 matcd.4 mcd.4 \
|
||||
mem.4 meteor.4 mouse.4 mse.4 mtio.4 mx.4 ncr.4 npx.4 \
|
||||
ohci.4 pcf.4 pcm.4 pcvt.4 perfmon.4 pn.4 pnp.4 ppc.4 psm.4 \
|
||||
rdp.4 rl.4 sb.4 scd.4 screen.4 sf.4 si.4 sio.4 sis.4 sk.4 \
|
||||
spkr.4 splash.4 sr.4 ste.4 syscons.4 sysmouse.4 ti.4 tl.4 tw.4 \
|
||||
tx.4 uhci.4 ukbd.4 umass.4 ums.4 usb.4 vga.4 vr.4 vx.4 \
|
||||
wb.4 wd.4 wfd.4 wi.4 wl.4 wt.4 xl.4 ze.4 zp.4
|
||||
MAN4= adv.4 adw.4 aha.4 ahb.4 aic.4 alpm.4 apm.4 ar.4 asc.4 \
|
||||
bktr.4 bt.4 cs.4 cx.4 cy.4 \
|
||||
dgb.4 dpt.4 ed.4 el.4 en.4 ep.4 ex.4 fe.4 gsc.4 \
|
||||
ie.4 io.4 joy.4 labpc.4 le.4 lnc.4 matcd.4 mcd.4 \
|
||||
meteor.4 mse.4 npx.4 \
|
||||
pcf.4 perfmon.4 pnp.4 ppc.4 \
|
||||
rdp.4 sb.4 scd.4 \
|
||||
spkr.4 sr.4 tw.4 \
|
||||
tx.4 vx.4 \
|
||||
wd.4 wfd.4 wi.4 wl.4 wt.4 ze.4 zp.4
|
||||
|
||||
MLINKS= adv.4 ../adv.4
|
||||
MLINKS+= adw.4 ../adw.4
|
||||
MLINKS+= aha.4 ../aha.4
|
||||
MLINKS+= ahb.4 ../ahb.4
|
||||
MLINKS+= ahc.4 ../ahc.4
|
||||
MLINKS+= aic.4 ../aic.4
|
||||
MLINKS+= al.4 ../al.4
|
||||
MLINKS+= alpm.4 ../alpm.4
|
||||
MLINKS+= apm.4 ../apm.4
|
||||
MLINKS+= ar.4 ../ar.4
|
||||
MLINKS+= asc.4 ../asc.4
|
||||
MLINKS+= atkbd.4 ../atkbd.4
|
||||
MLINKS+= atkbdc.4 ../atkbdc.4
|
||||
MLINKS+= ax.4 ../ax.4
|
||||
MLINKS+= bktr.4 ../bktr.4
|
||||
MLINKS+= bt.4 ../bt.4
|
||||
MLINKS+= cs.4 ../cs.4
|
||||
MLINKS+= cx.4 ../cx.4
|
||||
MLINKS+= cy.4 ../cy.4
|
||||
MLINKS+= de.4 ../de.4
|
||||
MLINKS+= dgb.4 ../dgb.4
|
||||
MLINKS+= dm.4 ../dm.4
|
||||
MLINKS+= dpt.4 ../dpt.4
|
||||
MLINKS+= ed.4 ../ed.4
|
||||
MLINKS+= el.4 ../el.4
|
||||
MLINKS+= en.4 ../en.4
|
||||
MLINKS+= ep.4 ../ep.4
|
||||
MLINKS+= ex.4 ../ex.4
|
||||
MLINKS+= fdc.4 ../fdc.4
|
||||
MLINKS+= fe.4 ../fe.4
|
||||
MLINKS+= fxp.4 ../fxp.4
|
||||
MLINKS+= gsc.4 ../gsc.4
|
||||
MLINKS+= ie.4 ../ie.4
|
||||
MLINKS+= io.4 ../io.4
|
||||
MLINKS+= joy.4 ../joy.4
|
||||
MLINKS+= keyboard.4 ../keyboard.4
|
||||
MLINKS+= labpc.4 ../labpc.4
|
||||
MLINKS+= le.4 ../le.4
|
||||
MLINKS+= lnc.4 ../lnc.4
|
||||
MLINKS+= matcd.4 ../matcd.4
|
||||
MLINKS+= mcd.4 ../mcd.4
|
||||
MLINKS+= mem.4 kmem.4 mem.4 ../mem.4 mem.4 ../kmem.4
|
||||
MLINKS+= meteor.4 ../meteor.4
|
||||
MLINKS+= mouse.4 ../mouse.4
|
||||
MLINKS+= mse.4 ../mse.4
|
||||
MLINKS+= mtio.4 ../mtio.4
|
||||
MLINKS+= mx.4 ../mx.4
|
||||
MLINKS+= ncr.4 ../ncr.4
|
||||
MLINKS+= npx.4 ../npx.4
|
||||
MLINKS+= ohci.4 ../ohci.4
|
||||
MLINKS+= pcf.4 ../pcf.4
|
||||
MLINKS+= pcm.4 ../pcm.4
|
||||
MLINKS+= pcvt.4 vt.4 pcvt.4 ../pcvt.4 pcvt.4 ../vt.4
|
||||
MLINKS+= perfmon.4 ../perfmon.4
|
||||
MLINKS+= pn.4 ../pn.4
|
||||
MLINKS+= pnp.4 ../pnp.4
|
||||
MLINKS+= ppc.4 ../ppc.4
|
||||
MLINKS+= psm.4 ../psm.4
|
||||
MLINKS+= rdp.4 ../rdp.4
|
||||
MLINKS+= rl.4 ../rl.4
|
||||
MLINKS+= sb.4 ../sb.4
|
||||
MLINKS+= scd.4 ../scd.4
|
||||
MLINKS+= screen.4 ../screen.4
|
||||
MLINKS+= sf.4 ../sf.4
|
||||
MLINKS+= si.4 ../si.4
|
||||
MLINKS+= sio.4 ../sio.4
|
||||
MLINKS+= sis.4 ../sis.4
|
||||
MLINKS+= sk.4 ../sk.4
|
||||
MLINKS+= spkr.4 ../spkr.4 spkr.4 speaker.4 spkr.4 ../speaker.4
|
||||
MLINKS+= splash.4 ../splash.4 \
|
||||
splash.4 screensaver.4 splash.4 ../screensaver.4
|
||||
MLINKS+= sr.4 ../sr.4
|
||||
MLINKS+= ste.4 ../ste.4
|
||||
MLINKS+= syscons.4 ../syscons.4 \
|
||||
syscons.4 sc.4 syscons.4 ../sc.4
|
||||
MLINKS+= sysmouse.4 ../sysmouse.4
|
||||
MLINKS+= ti.4 ../ti.4
|
||||
MLINKS+= tl.4 ../tl.4
|
||||
MLINKS+= tw.4 ../tw.4
|
||||
MLINKS+= tx.4 ../tx.4
|
||||
MLINKS+= uhci.4 ../uhci.4
|
||||
MLINKS+= ukbd.4 ../ukbd.4
|
||||
MLINKS+= umass.4 ../umass.4
|
||||
MLINKS+= ums.4 ../ums.4
|
||||
MLINKS+= usb.4 ../usb.4
|
||||
MLINKS+= vga.4 ../vga.4
|
||||
MLINKS+= vr.4 ../vr.4
|
||||
MLINKS+= vx.4 ../vx.4
|
||||
MLINKS+= wb.4 ../wb.4
|
||||
MLINKS+= wd.4 ../wd.4
|
||||
MLINKS+= wfd.4 ../wfd.4
|
||||
MLINKS+= wi.4 ../wi.4
|
||||
MLINKS+= wl.4 ../wl.4
|
||||
MLINKS+= wt.4 ../wt.4
|
||||
MLINKS+= xl.4 ../xl.4
|
||||
MLINKS+= ze.4 ../ze.4
|
||||
MLINKS+= zp.4 ../zp.4
|
||||
|
||||
|
@ -1,251 +0,0 @@
|
||||
.\"
|
||||
.\" Copyright (c) 1995, 1996, 1997, 1998
|
||||
.\" Justin T. Gibbs. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. The name of the author may not be used to endorse or promote products
|
||||
.\" derived from this software without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||
.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||
.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd October 15, 1998
|
||||
.Dt AHC 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm ahc
|
||||
.Nd Adaptec VL/EISA/PCI SCSI host adapter driver
|
||||
.Sh SYNOPSIS
|
||||
For one or more VL/EISA cards:
|
||||
.Cd controller eisa0
|
||||
.Cd controller ahc0
|
||||
.Pp
|
||||
For one or more PCI cards:
|
||||
.Cd controller pci0
|
||||
.Cd controller ahc0
|
||||
.Pp
|
||||
To allow PCI adapters to use memory mapped I/O if enabled:
|
||||
.Cd options AHC_ALLOW_MEMIO
|
||||
.Pp
|
||||
For one or more SCSI busses:
|
||||
.Cd controller scbus0 at ahc0
|
||||
.Sh DESCRIPTION
|
||||
This driver provides access to the
|
||||
.Tn SCSI
|
||||
bus(es) connected to Adaptec
|
||||
.Tn AIC7770,
|
||||
.Tn AIC7850,
|
||||
.Tn AIC7860,
|
||||
.Tn AIC7870,
|
||||
.Tn AIC7880,
|
||||
.Tn AIC7890,
|
||||
.Tn AIC7891,
|
||||
.Tn AIC7895,
|
||||
.Tn AIC7896,
|
||||
or
|
||||
.Tn AIC7897
|
||||
host adapter chips.
|
||||
These chips are found on many motherboards as well as the following
|
||||
Adaptec SCSI controller cards:
|
||||
.Tn 274X(W),
|
||||
.Tn 274X(T),
|
||||
.Tn 284X,
|
||||
.Tn 2920C,
|
||||
.Tn 2930U2,
|
||||
.Tn 2940,
|
||||
.Tn 2940U,
|
||||
.Tn 2940AU,
|
||||
.Tn 2940UW,
|
||||
.Tn 2940UW Dual,
|
||||
.Tn 2940U2W,
|
||||
.Tn 2940U2B,
|
||||
.Tn 2950U2W,
|
||||
.Tn 2950U2B,
|
||||
.Tn 3940,
|
||||
.Tn 3940U,
|
||||
.Tn 3940AU,
|
||||
.Tn 3940UW,
|
||||
.Tn 3940AUW,
|
||||
.Tn 3940U2W,
|
||||
.Tn 3950U2,
|
||||
and
|
||||
.Tn 3985.
|
||||
.Pp
|
||||
Driver features include support for twin and wide busses,
|
||||
fast, ultra and ultra2 synchronous transfers depending on controller type,
|
||||
tagged queuing,
|
||||
and SCB paging.
|
||||
.Pp
|
||||
Memory mapped I/O can be enabled for PCI devices with the
|
||||
.Dq Dv AHC_ALLOW_MEMIO
|
||||
configuration option.
|
||||
Memory mapped I/O is more efficient than the alternative, programmed I/O.
|
||||
Most PCI BIOSes will map devices so that either technique for communicating
|
||||
with the card is available.
|
||||
In some cases,
|
||||
usually when the PCI device is sitting behind a PCI->PCI bridge,
|
||||
the BIOS fails to properly initialize the chip for memory mapped I/O.
|
||||
The symptom of this problem is usually a system hang if memory mapped I/O
|
||||
is attempted.
|
||||
Most modern motherboards perform the initialization correctly and work fine
|
||||
with this option enabled.
|
||||
.Pp
|
||||
Per target configuration performed in the
|
||||
.Tn SCSI-Select
|
||||
menu, accessible at boot
|
||||
in
|
||||
.No non- Ns Tn EISA
|
||||
models,
|
||||
or through an
|
||||
.Tn EISA
|
||||
configuration utility for
|
||||
.Tn EISA
|
||||
models,
|
||||
is honored by this driver with the stipulation that the
|
||||
.Tn BIOS
|
||||
must be enabled for
|
||||
.Tn EISA
|
||||
adaptors. This includes synchronous/asynchronous transfers,
|
||||
maximum synchronous negotiation rate,
|
||||
disconnection,
|
||||
the host adapter's SCSI ID,
|
||||
and,
|
||||
in the case of
|
||||
.Tn EISA
|
||||
Twin Channel controllers,
|
||||
the primary channel selection.
|
||||
.Pp
|
||||
Note that I/O addresses are determined automatically by the probe routines,
|
||||
but care should be taken when using a 284x
|
||||
.Pq Tn VESA No local bus controller
|
||||
in an
|
||||
.Tn EISA
|
||||
system. Ensure that the jumpers setting the I/O area for the 284x match the
|
||||
.Tn EISA
|
||||
slot into which the card is inserted to prevent conflicts with other
|
||||
.Tn EISA
|
||||
cards.
|
||||
.Pp
|
||||
Performance and feature sets vary throughout the aic7xxx product line.
|
||||
The following table provides a comparison of the different chips supported
|
||||
by the
|
||||
.Nm
|
||||
driver. Note that wide and twin channel features, although always supported
|
||||
by a particular chip, may be disabled in a particular motherboard or card
|
||||
design.
|
||||
.Pp
|
||||
.Bd -filled -offset indent
|
||||
.Bl -column "aic7770 " "10 " "EISA/VL " "10MHz " "16bit " "SCBs " Features
|
||||
.Em "Chip MIPS Bus MaxSync MaxWidth SCBs Features"
|
||||
aic7770 10 EISA/VL 10MHz 16Bit 4 1
|
||||
aic7850 10 PCI/32 10MHz 8Bit 3
|
||||
aic7860 10 PCI/32 20MHz 8Bit 3
|
||||
aic7870 10 PCI/32 10MHz 16Bit 16
|
||||
aic7880 10 PCI/32 20MHz 16Bit 16
|
||||
aic7890 20 PCI/32 40MHz 16Bit 16 3 4 5 6 7
|
||||
aic7891 20 PCI/64 40MHz 16Bit 16 3 4 5 6 7
|
||||
aic7895 15 PCI/32 20MHz 16Bit 16 2 3 4 5
|
||||
aic7896 20 PCI/32 40MHz 16Bit 16 2 3 4 5 6 7
|
||||
aic7897 20 PCI/64 40MHz 16Bit 16 2 3 4 5 6 7
|
||||
.El
|
||||
.Pp
|
||||
.Bl -enum -compact
|
||||
.It
|
||||
Multiplexed Twin Channel Device - One controller servicing two busses.
|
||||
.It
|
||||
Multi-function Twin Channel Device - Two controllers on one chip.
|
||||
.It
|
||||
Command Channel Secondary DMA Engine - Allows scatter gather list and
|
||||
SCB prefetch.
|
||||
.It
|
||||
64 Byte SCB Support - SCSI CDB is embedded in the SCB to eliminate an extra DMA.
|
||||
.It
|
||||
Block Move Instruction Support - Doubles the speed of certain sequencer
|
||||
operations.
|
||||
.It
|
||||
.Sq Bayonet
|
||||
style Scatter Gather Engine - Improves S/G prefetch performance.
|
||||
.It
|
||||
Queuing Registers - Allows queuing of new transactions without pausing the
|
||||
sequencer.
|
||||
.El
|
||||
.Ed
|
||||
.Pp
|
||||
|
||||
.Sh SCSI CONTROL BLOCKS (SCBs)
|
||||
Every transaction sent to a device on the SCSI bus is assigned a
|
||||
.Sq SCSI Control Block
|
||||
(SCB). The SCB contains all of the information required by the
|
||||
controller to process a transaction. The chip feature table lists
|
||||
the number of SCBs that can be stored in on chip memory. All chips
|
||||
with model numbers greater than or equal to 7870 allow for the on chip
|
||||
SCB space to be augmented with external SRAM up to a maximum of 255 SCBs.
|
||||
Very few Adaptec controller have external SRAM.
|
||||
|
||||
If external SRAM is not available, SCBs are a limited resource and
|
||||
using them in a straight forward manner would only allow us to
|
||||
keep as many transactions as there are SCBs outstanding at a time.
|
||||
This would not allow enough concurrency to fully utilize the SCSI
|
||||
bus and it's devices. The solution to this problem is
|
||||
.Em SCB Paging ,
|
||||
a concept similar to memory paging. SCB paging takes advantage of
|
||||
the fact that devices usually disconnect from the SCSI bus for long
|
||||
periods of time without talking to the controller. The SCBs
|
||||
for disconnected transactions are only of use to the controller
|
||||
when the transfer is resumed. When the host queues another transaction
|
||||
for the controller to execute, the controller firmware will use a
|
||||
free SCB if one is available. Otherwise, the state of the most recently
|
||||
disconnected (and therefor most likely to stay disconnected) SCB is
|
||||
saved, via dma, to host memory, and the local SCB reused to start
|
||||
the new transaction. This allows the controller to queue up to
|
||||
255 transactions regardless of the amount of SCB space. Since the
|
||||
local SCB space serves as a cache for disconnected transactions, the
|
||||
more SCB space available, the less host bus traffic consumed saving
|
||||
and restoring SCB data.
|
||||
.Sh BUGS
|
||||
Some Quantum drives (at least the Empire 2100 and 1080s) will not run on an
|
||||
.Tn AIC7870
|
||||
Rev B in synchronous mode at 10MHz. Controllers with this problem have a
|
||||
42 MHz clock crystal on them and run slightly above 10MHz. This confuses
|
||||
the drive and hangs the bus. Setting a maximum synchronous negotiation rate
|
||||
of 8MHz in the
|
||||
.Tn SCSI-Select
|
||||
utility
|
||||
will allow normal operation.
|
||||
.Sh SEE ALSO
|
||||
.Xr aha 4 ,
|
||||
.Xr ahb 4 ,
|
||||
.Xr cd 4 ,
|
||||
.Xr da 4 ,
|
||||
.Xr sa 4 ,
|
||||
.Xr scsi 4
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm
|
||||
driver, the
|
||||
.Tn AIC7xxx
|
||||
sequencer-code assembler,
|
||||
and the firmware running on the aic7xxx chips was written by
|
||||
.An Justin T. Gibbs .
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
driver appeared in
|
||||
.Fx 2.0 .
|
@ -1,152 +0,0 @@
|
||||
.\" Copyright (c) 1997, 1998, 1999
|
||||
.\" Bill Paul <wpaul@ctr.columbia.edu>. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by Bill Paul.
|
||||
.\" 4. Neither the name of the author nor the names of any co-contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD
|
||||
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||
.\" THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd May 20, 1999
|
||||
.Dt AL 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm al
|
||||
.Nd
|
||||
ADMtek Inc. AL981 Comet and AN985 Centaur fast ethernet device driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd "device al0"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver provides support for PCI ethernet adapters and embedded
|
||||
controllers based on the ADMtek Inc. AL981 Comet and AN 985
|
||||
Centaur fast ethernet controller chips.
|
||||
.Pp
|
||||
The ADMtek chip uses bus master DMA and is designed to be a
|
||||
DEC 21x4x workalike. The only major difference between the DEC
|
||||
and ADMtek parts is that the ADMtek receiver filter is programmed
|
||||
using two special registers where as the DEC chip is programmed
|
||||
by uploading a special setup frame via the transmit DMA engine.
|
||||
The AL981 and AN985 can only be programmed with a single
|
||||
perfect filter entry for the local station address and a 64-bit
|
||||
multicast hash table; the DEC filter supports several other
|
||||
options. The ADMtek fast ethernet controllers support both
|
||||
10 and 100Mbps speeds in either full or half duplex using
|
||||
an internal MII transceiver.
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media types:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It autoselect
|
||||
Enable autoselection of the media type and options.
|
||||
The user can manually override
|
||||
the autoselected mode by adding media options to the
|
||||
.Pa /etc/rc.conf
|
||||
fine.
|
||||
.It 10baseT/UTP
|
||||
Set 10Mbps operation. The
|
||||
.Ar mediaopt
|
||||
option can also be used to select either
|
||||
.Ar full-duplex
|
||||
or
|
||||
.Ar half-duplex modes.
|
||||
.It 100baseTX
|
||||
Set 100Mbps (fast ethernet) operation. The
|
||||
.Ar mediaopt
|
||||
option can also be used to select either
|
||||
.Ar full-duplex
|
||||
or
|
||||
.Ar half-duplex
|
||||
modes.
|
||||
.El
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media options:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It full-duplex
|
||||
Force full duplex operation
|
||||
.It half-duplex
|
||||
Force half duplex operation.
|
||||
.El
|
||||
.Pp
|
||||
For more information on configuring this device, see
|
||||
.Xr ifconfig 8 .
|
||||
.Sh DIAGNOSTICS
|
||||
.Bl -diag
|
||||
.It "ax%d: couldn't map memory"
|
||||
A fatal initialization error has occurred.
|
||||
.It "ax%d: couldn't map interrupt"
|
||||
A fatal initialization error has occurred.
|
||||
.It "ax%d: watchdog timeout"
|
||||
The device has stopped responding to the network, or there is a problem with
|
||||
the network connection (cable).
|
||||
.It "ax%d: no memory for rx list"
|
||||
The driver failed to allocate an mbuf for the receiver ring.
|
||||
.It "ax%d: no memory for tx list"
|
||||
The driver failed to allocate an mbuf for the transmitter ring when
|
||||
allocating a pad buffer or collapsing an mbuf chain into a cluster.
|
||||
.It "ax%d: chip is in D3 power state -- setting to D0"
|
||||
This message applies only to adapters which support power
|
||||
management. Some operating systems place the controller in low power
|
||||
mode when shutting down, and some PCI BIOSes fail to bring the chip
|
||||
out of this state before configuring it. The controller loses all of
|
||||
its PCI configuration in the D3 state, so if the BIOS does not set
|
||||
it back to full power mode in time, it won't be able to configure it
|
||||
correctly. The driver tries to detect this condition and bring
|
||||
the adapter back to the D0 (full power) state, but this may not be
|
||||
enough to return the driver to a fully operational condition. If
|
||||
you see this message at boot time and the driver fails to attach
|
||||
the device as a network interface, you will have to perform second
|
||||
warm boot to have the device properly configured.
|
||||
.Pp
|
||||
Note that this condition only occurs when warm booting from another
|
||||
operating system. If you power down your system prior to booting
|
||||
.Fx ,
|
||||
the card should be configured correctly.
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr arp 4 ,
|
||||
.Xr netintro 4 ,
|
||||
.Xr ifconfig 8
|
||||
.Rs
|
||||
.%T ADMtek AL981 data sheet
|
||||
.%O http://www.admtek.com.tw
|
||||
.Re
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
device driver first appeared in
|
||||
.Fx 3.0 .
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm
|
||||
driver was written by
|
||||
.An Bill Paul Aq wpaul@ctr.columbia.edu .
|
@ -1,208 +0,0 @@
|
||||
.\"
|
||||
.\" Copyright (c) 1999
|
||||
.\" Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer as
|
||||
.\" the first lines of this file unmodified.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||
.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||
.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd May 21, 1999
|
||||
.Dt ATKBD 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm atkbd
|
||||
.Nd
|
||||
the AT keyboard interface
|
||||
.Sh SYNOPSIS
|
||||
.Cd "options ATKBD_DFLT_KEYMAP"
|
||||
.Cd "makeoptions ATKBD_DFLT_KEYMAP"=\&"_keymap_name_\&"
|
||||
.Cd "options KBD_DISABLE_KEYMAP_LOAD"
|
||||
.Cd "device atkbd0 at atkbdc? irq 1"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver, together with the
|
||||
.Nm atkbdc
|
||||
driver, provides access to the AT 84 keyboard or the AT enhanced keyboard
|
||||
which is connected to the AT keyboard controller.
|
||||
.Pp
|
||||
This driver is required for the console drivers
|
||||
.Xr syscons 4
|
||||
and
|
||||
.Xr pcvt 4 .
|
||||
.Pp
|
||||
There can be only one
|
||||
.Nm
|
||||
device defined in the kernel configuration file. This device also
|
||||
requires the
|
||||
.Nm atkbdc
|
||||
keyboard controller to be present.
|
||||
The
|
||||
.Em irq
|
||||
number must always be 1; there is no provision of changing the number.
|
||||
.Ss Function Keys
|
||||
The AT keyboard has a number of function keys.
|
||||
They are numbered as follows and can be associated with strings
|
||||
by the
|
||||
.Xr kbdcontrol 1
|
||||
command.
|
||||
.Pp
|
||||
.Bl -tag -width "Function Key Number" -compact -offset
|
||||
.It "Function Key number"
|
||||
Function Key
|
||||
.It "1, 2,...12"
|
||||
F1, F2,... F12
|
||||
.It "13, 14,...24"
|
||||
Shift+F1, Shift+F2,... Shift+F12
|
||||
.It "25, 26,...36"
|
||||
Ctl+F1, Ctl+F2,... Ctl+F12
|
||||
.It "37, 38,...48"
|
||||
Shift+Ctl+F1, Shift+Ctl+F2,... Shift+Ctl+F12
|
||||
.It 49
|
||||
Home and Numpad 7 (without NumLock)
|
||||
.It 50
|
||||
Up Arrow and Numpad 8 (without NumLock)
|
||||
.It 51
|
||||
Page Up and Numpad 9 (without NumLock)
|
||||
.It 52
|
||||
Numpad -
|
||||
.It 53
|
||||
Left Arrow and Numpad 4 (without NumLock)
|
||||
.It 54
|
||||
Numpad 5 (without NumLock)
|
||||
.It 55
|
||||
Right Arrow and Numpad 6 (without NumLock)
|
||||
.It 56
|
||||
Numpad +
|
||||
.It 57
|
||||
End and Numpad 1 (without NumLock)
|
||||
.It 58
|
||||
Down Arrow and Numpad 2 (without NumLock)
|
||||
.It 59
|
||||
Page Down and Numpad 3 (without NumLock)
|
||||
.It 60
|
||||
Ins and Numpad 0 (without NumLock)
|
||||
.It 61
|
||||
Del
|
||||
.It 62
|
||||
Left GUI Key
|
||||
.It 63
|
||||
Right GUI Key
|
||||
.It 64
|
||||
Menu
|
||||
.El
|
||||
.Pp
|
||||
See the man page for the
|
||||
.Xr kbdcontrol 1
|
||||
command for how to assign a string to the function key.
|
||||
.Sh DRIVER CONFIGURATION
|
||||
.Ss Kernel Configuration Options
|
||||
The following kernel configuration options control the
|
||||
.Nm
|
||||
driver.
|
||||
.Bl -tag -width ATKBD_DFLT
|
||||
.It Em ATKBD_DFLT_KEYMAP
|
||||
This option sets the defauilt, built-in keymap of the
|
||||
.Nm
|
||||
driver to the named keymap.
|
||||
See
|
||||
.Sx EXAMPLE
|
||||
below.
|
||||
.It Em KBD_DISABLE_KEYMAP_LOAD
|
||||
The keymap can be modified by the
|
||||
.Xr kbdcontrol 1
|
||||
command.
|
||||
This option will disable this feature and prevent the user from
|
||||
changing key assignment.
|
||||
.El
|
||||
.Pp
|
||||
.Ss Driver Flags
|
||||
The
|
||||
.Nm
|
||||
driver accepts the following driver flags. They can be set either in the
|
||||
kernel configuration file
|
||||
.Pq see Xr config 8 ,
|
||||
or else in the User Configuration Menu at boot time
|
||||
.Pq see Xr boot 8 .
|
||||
.Bl -tag -width FAIL
|
||||
.It bit 0 (FAIL_IF_NO_KBD)
|
||||
By default the
|
||||
.Nm
|
||||
driver will install even if a keyboard is not actually connected to the
|
||||
system.
|
||||
This option prevents the driver from being installed in this situation.
|
||||
.It bit 1 (NO_RESET)
|
||||
When this option is given, the
|
||||
.Nm
|
||||
driver will not reset the keyboard when initializing it.
|
||||
It may be useful for laptop computers whose function keys
|
||||
have special functions and these functions are forgotten when the
|
||||
keyboard is reset.
|
||||
.It bit 2 (ALT_SCANCODESET)
|
||||
Certain keyboards, such as those on some ThinkPad models, behave
|
||||
like the old XT keyboard and require this option.
|
||||
.El
|
||||
.\".Sh FILES
|
||||
.Sh EXAMPLE
|
||||
The
|
||||
.Nm
|
||||
driver requires the keyboard controller
|
||||
.Nm atkbdc .
|
||||
Thus, the kernel configuration file should contain the following lines.
|
||||
.Pp
|
||||
.Dl "device atkbdc0 at isa"
|
||||
.Dl "device atkbd0 at atkbdc? irq 1"
|
||||
.Pp
|
||||
The following example shows how to set the default, built-in keymap
|
||||
to
|
||||
.Pa jp.106.kbd .
|
||||
.Pp
|
||||
.Dl "options ATKBD_DFLT_KEYMAP"
|
||||
.Dl "makeoptions ATKBD_DFLT_KEYMAP"=\&"jp.106\&"
|
||||
.Dl "device atkbd0 at atkbdc? irq 1"
|
||||
.Pp
|
||||
.\".Sh DIAGNOSTICS
|
||||
.\".Sh CAVEATS
|
||||
.\".Sh BUGS
|
||||
.Sh SEE ALSO
|
||||
.Xr kbdcontrol 1 ,
|
||||
.Xr atkbdc 4 ,
|
||||
.Xr pcvt 4 ,
|
||||
.Xr psm 4 ,
|
||||
.Xr syscons 4 ,
|
||||
.Xr boot 8 ,
|
||||
.Xr config 8 .
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
driver first appeared in
|
||||
.Fx 3.1 .
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm
|
||||
driver was written by
|
||||
.An Søren Schmidt Aq sos@FreeBSD.org
|
||||
and
|
||||
.An Kazutaka Yokota Aq yokota@FreeBSD.org .
|
||||
This manual page was written by
|
||||
.An Kazutaka Yokota .
|
@ -1,112 +0,0 @@
|
||||
.\"
|
||||
.\" Copyright (c) 1999
|
||||
.\" Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer as
|
||||
.\" the first lines of this file unmodified.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||
.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||
.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd February 9, 1999
|
||||
.Dt ATKBDC 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm atkbdc
|
||||
.Nd
|
||||
the AT keyboard controller interface
|
||||
.Sh SYNOPSIS
|
||||
.Cd "options" \&"KBD_RESETDELAY=N\&"
|
||||
.Cd "options" \&"KBD_MAXWAIT=N\&"
|
||||
.Cd "options" \&"KBDIO_DEBUG=N\&"
|
||||
.Cd "controller atkbdc0 at isa? port IO_KBD"
|
||||
.Sh DESCRIPTION
|
||||
The keyboard controller
|
||||
.Nm
|
||||
provides I/O services for the AT keyboard and PS/2 mouse style
|
||||
pointing devices.
|
||||
This controller is required for the keyboard driver
|
||||
.Nm atkbd
|
||||
and the PS/2 pointing device driver
|
||||
.Nm psm .
|
||||
.Pp
|
||||
There can be only one
|
||||
.Nm
|
||||
device configured in the system.
|
||||
.Sh DRIVER CONFIGURATION
|
||||
.Ss Kernel Configuration Options
|
||||
The following kernel configuration options can be used to control the
|
||||
.Nm
|
||||
driver.
|
||||
They may be set in the kernel configuration file
|
||||
.Pq see Xr config 8 .
|
||||
.Bl -tag -width MOUSE
|
||||
.It Em KBD_RESETDELAY=X, KBD_MAXWAIT=Y
|
||||
The keyboard driver
|
||||
.Nm atkbd
|
||||
and the pointing device driver
|
||||
.Nm psm
|
||||
may ask the
|
||||
.Nm
|
||||
driver to reset these devices during the boot process.
|
||||
It sometimes takes a long time before these devices respond to
|
||||
the reset command.
|
||||
These options control how long the
|
||||
.Nm
|
||||
driver should
|
||||
wait before eventually giving up -- the driver will wait
|
||||
.Fa X
|
||||
*
|
||||
.Fa Y
|
||||
msecs at most. If the drivers seem unable to detect
|
||||
devices, you may want to increase these values. The default values are
|
||||
200 msec for
|
||||
.Fa X
|
||||
and 5
|
||||
for
|
||||
.Fa Y .
|
||||
.It Em KBDIO_DEBUG=N
|
||||
Sets the debug level to
|
||||
.Fa N .
|
||||
The default value is zero, which suppresses all debugging output.
|
||||
.El
|
||||
.\".Ss Driver Flags
|
||||
.\".Sh FILES
|
||||
.\".Sh EXAMPLE
|
||||
.\".Sh DIAGNOSTICS
|
||||
.\".Sh CAVEATS
|
||||
.\".Sh BUGS
|
||||
.Sh SEE ALSO
|
||||
.Xr atkbd 4 ,
|
||||
.Xr psm 4 ,
|
||||
.Xr config 8 .
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
driver first appeared in
|
||||
.Fx 3.1 .
|
||||
It is based on the kbdio module in
|
||||
.Fx 2.2 .
|
||||
.Sh AUTHORS
|
||||
The kbdio module, the
|
||||
.Nm
|
||||
driver and this manual page were written by
|
||||
.An Kazutaka Yokota Aq yokota@FreeBSD.org .
|
@ -1,155 +0,0 @@
|
||||
.\" Copyright (c) 1997, 1998, 1999
|
||||
.\" Bill Paul <wpaul@ctr.columbia.edu>. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by Bill Paul.
|
||||
.\" 4. Neither the name of the author nor the names of any co-contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD
|
||||
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||
.\" THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd January 2, 1999
|
||||
.Dt AX 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm ax
|
||||
.Nd
|
||||
ASIX Electronics AX88140A and AX88141 fast ethernet device driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd "device ax0"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver provides support for PCI ethernet adapters and embedded
|
||||
controllers based on the ASIX AX88140A and AX88141 fast ethernet
|
||||
controller chips, including the Alfa Inc. GFC2204 and the CNet Pro110B.
|
||||
The AX88141 is a new version of the AX88140A with power management
|
||||
and magic packet support.
|
||||
.Pp
|
||||
The ASIX chip uses bus master DMA and is designed to be a
|
||||
DEC 21x4x workalike. The only major difference between the DEC
|
||||
and ASIX parts is that the ASIX receiver filter is programmed
|
||||
using two special registers where as the DEC chip is programmed
|
||||
by uploading a special setup frame via the transmit DMA engine.
|
||||
The ASIX receive filter can only be programmed with a single
|
||||
perfect filter entry for the local station address and a 64-bit
|
||||
multicast hash table; the DEC filter supports several other
|
||||
options. The ASIX fast ethernet controller supports both
|
||||
10 and 100Mbps speeds in either full or half duplex using
|
||||
an external MII transceiver.
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media types:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It autoselect
|
||||
Enable autoselection of the media type and options.
|
||||
The user can manually override
|
||||
the autoselected mode by adding media options to the
|
||||
.Pa /etc/rc.conf
|
||||
file.
|
||||
.It 10baseT/UTP
|
||||
Set 10Mbps operation. The
|
||||
.Ar mediaopt
|
||||
option can also be used to select either
|
||||
.Ar full-duplex
|
||||
or
|
||||
.Ar half-duplex
|
||||
modes.
|
||||
.It 100baseTX
|
||||
Set 100Mbps (fast ethernet) operation. The
|
||||
.Ar mediaopt
|
||||
option can also be used to select either
|
||||
.Ar full-duplex
|
||||
or
|
||||
.Ar half-duplex
|
||||
modes.
|
||||
.El
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media options:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It full-duplex
|
||||
Force full duplex operation
|
||||
.It half-duplex
|
||||
Force half duplex operation.
|
||||
.El
|
||||
.Pp
|
||||
For more information on configuring this device, see
|
||||
.Xr ifconfig 8 .
|
||||
.Sh DIAGNOSTICS
|
||||
.Bl -diag
|
||||
.It "ax%d: couldn't map memory"
|
||||
A fatal initialization error has occurred.
|
||||
.It "ax%d: couldn't map interrupt"
|
||||
A fatal initialization error has occurred.
|
||||
.It "ax%d: watchdog timeout"
|
||||
The device has stopped responding to the network, or there is a problem with
|
||||
the network connection (cable).
|
||||
.It "ax%d: no memory for rx list"
|
||||
The driver failed to allocate an mbuf for the receiver ring.
|
||||
.It "ax%d: no memory for tx list"
|
||||
The driver failed to allocate an mbuf for the transmitter ring when
|
||||
allocating a pad buffer or collapsing an mbuf chain into a cluster.
|
||||
.It "ax%d: chip is in D3 power state -- setting to D0"
|
||||
This message applies only to adapters which support power
|
||||
management. Some operating systems place the controller in low power
|
||||
mode when shutting down, and some PCI BIOSes fail to bring the chip
|
||||
out of this state before configuring it. The controller loses all of
|
||||
its PCI configuration in the D3 state, so if the BIOS does not set
|
||||
it back to full power mode in time, it won't be able to configure it
|
||||
correctly. The driver tries to detect this condition and bring
|
||||
the adapter back to the D0 (full power) state, but this may not be
|
||||
enough to return the driver to a fully operational condition. If
|
||||
you see this message at boot time and the driver fails to attach
|
||||
the device as a network interface, you will have to perform second
|
||||
warm boot to have the device properly configured.
|
||||
.Pp
|
||||
Note that this condition only occurs when warm booting from another
|
||||
operating system. If you power down your system prior to booting
|
||||
.Fx ,
|
||||
the card should be configured correctly.
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr arp 4 ,
|
||||
.Xr netintro 4 ,
|
||||
.Xr ifconfig 8
|
||||
.Rs
|
||||
.%T ASIX AX81140A data sheet
|
||||
.%O http://www.asix.com.tw
|
||||
.Re
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
device driver first appeared in
|
||||
.Fx 3.0 .
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm
|
||||
driver was written by
|
||||
.An Bill Paul Aq wpaul@ctr.columbia.edu .
|
@ -1,119 +0,0 @@
|
||||
.\"
|
||||
.\" Copyright (c) 1997 David E. O'Brien
|
||||
.\"
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS OR
|
||||
.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
.\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||
.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd January 19, 1997
|
||||
.Dt DE 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm de
|
||||
.Nd
|
||||
DEC DC21x4x Ethernet device driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd "device de0"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver provides support for the Ethernet adapters based on the Digital
|
||||
Equipment DC21x4x based self-contained Ethernet chips.
|
||||
.Pp
|
||||
It supports the DEC PCI DE435 card, DEC EISA DE425, DEC DE450, DEC DE500,
|
||||
SMC 8432, 9332 and 9334, Cogent EM100FX and EM440TX, Asante,
|
||||
ZNYX ZX3xx, and others based on the 21040 and 21041 Ethernet controllers or
|
||||
the 21140[A], 21141, 21142 and 21143 Fast 100Mbps Ethernet controllers.
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media types:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxx
|
||||
.It autoselect
|
||||
Enable autoselection of the media type and options
|
||||
.It 10baseT/UTP
|
||||
Set 10Mbps operation on the 10baseT port
|
||||
.It 10base2/BNC
|
||||
Set 10Mbps operation on the BNC port
|
||||
.It 10base5/AUI
|
||||
Set 10Mbps operation on the AUI port
|
||||
.It 100baseTX
|
||||
Set 100Mbps (fast ethernet) operation
|
||||
.It 100baseFX
|
||||
Set 100Mbps operation
|
||||
.It 100baseT4
|
||||
Set 100Mbps operation (4-pair cat-3 cable)
|
||||
.El
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media options:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxx
|
||||
.It full-duplex
|
||||
Set full duplex operation
|
||||
.El
|
||||
.Pp
|
||||
Note that the media types available depend on the particular card in use.
|
||||
Some cards are explicitly programmed to a particular media type by a
|
||||
setup utility and are not changeable.
|
||||
.Pp
|
||||
Use the
|
||||
.Xr ifconfig 8
|
||||
command an in particular the
|
||||
.Fl m
|
||||
flag to list the supported media types for your particular card.
|
||||
.Pp
|
||||
The old
|
||||
.Dq ifconfig linkN
|
||||
method of configuration is not supported.
|
||||
.Sh DIAGNOSTICS
|
||||
.Bl -diag
|
||||
.It "de%d: waking device from sleep/snooze mode"
|
||||
The 21041 and 21140A chips support suspending the operation of the card.
|
||||
.It "de%d: error: desired IRQ of %d does not match device's actual IRQ of %d"
|
||||
The device probe detected that the board is configured for a different
|
||||
interrupt than the one specified in the kernel configuration file.
|
||||
.It "de%d: not configured; limit of %d reached or exceeded"
|
||||
There is a limit of 32
|
||||
.Nm
|
||||
devices allowed in a single machine.
|
||||
.It "de%d: not configured; 21040 pass 2.0 required (%d.%d found)"
|
||||
.It "de%d: not configured; 21140 pass 1.1 required (%d.%d found)"
|
||||
Certain revisions of the chipset are not supported by this driver.
|
||||
.El
|
||||
.Sh CAVEATS
|
||||
Since the 21040 is available on both EISA and PCI boards, one must be careful
|
||||
in how defines the 21040 in the kernel config file.
|
||||
.Sh SEE ALSO
|
||||
.Xr arp 4 ,
|
||||
.Xr netintro 4 ,
|
||||
.Xr ifconfig 8
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm
|
||||
device driver was written by
|
||||
.An Matt Thomas .
|
||||
This manual page was written by
|
||||
.An David E. O'Brien .
|
@ -1,150 +0,0 @@
|
||||
.\" Copyright (c) 1997, 1998, 1999
|
||||
.\" Bill Paul <wpaul@ctr.columbia.edu>. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by Bill Paul.
|
||||
.\" 4. Neither the name of the author nor the names of any co-contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD
|
||||
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||
.\" THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd September 4, 1999
|
||||
.Dt DM 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm dm
|
||||
.Nd
|
||||
Davicom DM9100/DM9102 fast ethernet device driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd "controller miibus0"
|
||||
.Cd "device dm0"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver provides support for PCI ethernet adapters and embedded
|
||||
controllers based on the Davicom DM9100 and DM9102 PCI
|
||||
fast ethernet controller chips including the Jaton Corporation
|
||||
XPressNet.
|
||||
.Pp
|
||||
The DM9100 and DM9102 are designed to be DEC 21x4x workalikes. The
|
||||
register layout, DMA descriptor scheme and receive filter programming
|
||||
are identical to the DEC part. The DM9102
|
||||
is a 100Mbps ethernet MAC and MII-compliant transceiver
|
||||
in a single package. The DM9100 is similar to the DM9102 except
|
||||
that it has no internal PHY, requiring instead an external transceiver
|
||||
to be attached to its MII interface.
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media types:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It autoselect
|
||||
Enable autoselection of the media type and options.
|
||||
The user can manually override
|
||||
the autoselected mode by adding media options to the
|
||||
.Pa /etc/rc.conf
|
||||
fine.
|
||||
.It 10baseT/UTP
|
||||
Set 10Mbps operation. The
|
||||
.Ar mediaopt
|
||||
option can also be used to select either
|
||||
.Ar full-duplex
|
||||
or
|
||||
.Ar half-duplex modes.
|
||||
.It 100baseTX
|
||||
Set 100Mbps (fast ethernet) operation. The
|
||||
.Ar mediaopt
|
||||
option can also be used to select either
|
||||
.Ar full-duplex
|
||||
or
|
||||
.Ar half-duplex
|
||||
modes.
|
||||
.El
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media options:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It full-duplex
|
||||
Force full duplex operation
|
||||
.It half-duplex
|
||||
Force half duplex operation.
|
||||
.El
|
||||
.Pp
|
||||
For more information on configuring this device, see
|
||||
.Xr ifconfig 8 .
|
||||
.Sh DIAGNOSTICS
|
||||
.Bl -diag
|
||||
.It "dm%d: couldn't map ports/memory"
|
||||
A fatal initialization error has occurred.
|
||||
.It "dm%d: couldn't map interrupt"
|
||||
A fatal initialization error has occurred.
|
||||
.It "dm%d: watchdog timeout"
|
||||
The device has stopped responding to the network, or there is a problem with
|
||||
the network connection (cable).
|
||||
.It "dm%d: no memory for rx list"
|
||||
The driver failed to allocate an mbuf for the receiver ring.
|
||||
.It "dm%d: no memory for tx list"
|
||||
The driver failed to allocate an mbuf for the transmitter ring when
|
||||
allocating a pad buffer or collapsing an mbuf chain into a cludmr.
|
||||
.It "dm%d: chip is in D3 power state -- setting to D0"
|
||||
This message applies only to adapters which support power
|
||||
management. Some operating sydmms place the controller in low power
|
||||
mode when shutting down, and some PCI BIOSes fail to bring the chip
|
||||
out of this state before configuring it. The controller loses all of
|
||||
its PCI configuration in the D3 state, so if the BIOS does not set
|
||||
it back to full power mode in time, it won't be able to configure it
|
||||
correctly. The driver tries to detect this condition and bring
|
||||
the adapter back to the D0 (full power) state, but this may not be
|
||||
enough to return the driver to a fully operational condition. If
|
||||
you see this message at boot time and the driver fails to attach
|
||||
the device as a network interface, you will have to perform second
|
||||
warm boot to have the device properly configured.
|
||||
.Pp
|
||||
Note that this condition only occurs when warm booting from another
|
||||
operating sydmm. If you power down your sydmm prior to booting
|
||||
.Fx ,
|
||||
the card should be configured correctly.
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr arp 4 ,
|
||||
.Xr netintro 4 ,
|
||||
.Xr ifconfig 8
|
||||
.Rs
|
||||
.%T Davicom DM9102 datasheet
|
||||
.%O http://www.davicom8.com
|
||||
.Re
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
device driver first appeared in
|
||||
.Fx 3.0 .
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm
|
||||
driver was written by
|
||||
.An Bill Paul Aq wpaul@ee.columbia.edu .
|
@ -1,70 +0,0 @@
|
||||
.\"
|
||||
.\" Copyright (c) 1994 Wilko Bulte
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. The name of the author may not be used to endorse or promote products
|
||||
.\" derived from this software withough specific prior written permission
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||
.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||
.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd August 31, 1994
|
||||
.Dt FDC 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm fdc
|
||||
.Nd
|
||||
PC architecture floppy disk controller driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd "controller fdc0 at isa? port" \&"IO_FD1\&" "bio flags 0x1 irq 6 drq 2"
|
||||
.Cd "disk fd0 at fdc0 drive 0
|
||||
.Cd "disk fd1 at fdc0 drive 1
|
||||
.Sh DESCRIPTION
|
||||
This driver provides access to floppy disk drives and QIC40/80 tapedrives.
|
||||
In /dev for each floppy device a number of minor devices are present. The
|
||||
/dev/fd* devices with trailing alphabetic characters are used to indicate
|
||||
.Sq partitions
|
||||
on the floppy disk. The /dev/fd*.<number> are devices that
|
||||
indicate the size of the floppy disk (so: 720kB, 1440kB etc). The latter
|
||||
are used for formatting disks using fdformat or for accessing different
|
||||
density disks in multidensity drive. Example: 720kB disk in a 1.44Mb drive.
|
||||
.Pp
|
||||
Normally, the driver will ask the system's CMOS memory to obtain the
|
||||
floppy drive configuration. Some machines do not store any form of a
|
||||
configuration value in their CMOS. Use the flags value
|
||||
.Ql 0x1
|
||||
to pretend a 1.44 MB floppy drive as the first unit, without asking the
|
||||
CMOS for it.
|
||||
.Sh FILES
|
||||
.Bl -tag -width Pa -compact
|
||||
.It /dev/fd*
|
||||
floppy disk device nodes
|
||||
.It /dev/fd*.<size in kB>
|
||||
floppy disk device nodes where the trailing number indicates the floppy
|
||||
capacity
|
||||
.It Pa /sys/i386/conf/GENERIC
|
||||
sample generic kernel config file
|
||||
.It Pa /sys/i386/isa/fd.c
|
||||
floppy driver source
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr fdformat 1 ,
|
||||
.Xr disktab 5
|
@ -1,96 +0,0 @@
|
||||
.\"
|
||||
.\" Copyright (c) 1997 David E. O'Brien
|
||||
.\"
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS OR
|
||||
.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
.\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||
.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd January 19, 1997
|
||||
.Dt FXP 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm fxp
|
||||
.Nd
|
||||
Intel EtherExpress Pro/100B ethernet device driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd "device fxp0"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver provides support for the EtherExpress Pro/10, Pro/100B, and Pro/100+
|
||||
PCI Fast Ethernet adapters based on the Intel i82557 or i82559 ethernet
|
||||
chips.
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media types:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It autoselect
|
||||
Enable autoselection of the media type and options
|
||||
.It 10baseT/UTP
|
||||
Set 10Mbps operation
|
||||
.It 100baseTX
|
||||
Set 100Mbps (fast ethernet) operation
|
||||
.El
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media options:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It full-duplex
|
||||
Set full duplex operation
|
||||
.El
|
||||
.Pp
|
||||
Note that 100baseTX media type is only available on the Pro/100B and Pro/100+.
|
||||
For further information on configuring this device, see
|
||||
.Xr ifconfig 8 .
|
||||
.Sh DIAGNOSTICS
|
||||
.Bl -diag
|
||||
.It "fxp%d: couldn't map memory"
|
||||
A fatal initialization error has occurred.
|
||||
.It "fxp%d: couldn't map interrupt"
|
||||
A fatal initialization error has occurred.
|
||||
.It "fxp%d: Failed to malloc memory"
|
||||
There are not enough mbuf's available for allocation.
|
||||
.It "fxp%d: device timeout"
|
||||
The device has stopped responding to the network, or there is a problem with
|
||||
the network connection (cable).
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr arp 4 ,
|
||||
.Xr netintro 4 ,
|
||||
.Xr ifconfig 8
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
device driver first appeared in
|
||||
.Fx 2.1 .
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm
|
||||
device driver was written by
|
||||
.An David Greenman .
|
||||
This manual page was written by
|
||||
.An David E. O'Brien .
|
@ -1,152 +0,0 @@
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd January 8, 1995
|
||||
.Dt KEYBOARD 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm keyboard
|
||||
.Nd pc keyboard interface
|
||||
.Sh DESCRIPTION
|
||||
|
||||
The PC keyboard is used as the console character input device. The keyboard
|
||||
is owned by the current virtual console.
|
||||
To switch between the virtual consoles use the sequence
|
||||
.Ar ALT+Fn ,
|
||||
which means hold down ALT and press one of the function keys. The
|
||||
virtual console with the same number as the function key is then
|
||||
selected as the current virtual console and given exclusive use of
|
||||
the keyboard and display.
|
||||
|
||||
The console allows entering values that are not physically
|
||||
present on the keyboard via a special keysequence.
|
||||
To use this facility press and hold down ALT,
|
||||
then enter a decimal number from 0-255 via the numerical keypad, then
|
||||
release ALT. The entered value is then used as the ASCII value for one
|
||||
character. This way it is possible to enter any ASCII value, not present
|
||||
on the keyboard.
|
||||
The console driver also includes a history function. It is activated by
|
||||
pressing the scroll-lock key. This holds the display, and enables the cursor
|
||||
arrows for scrolling up and down through the last scrolled out lines.
|
||||
|
||||
The keyboard is configurable to suit the individual user and the different
|
||||
national layout.
|
||||
|
||||
The keys on the keyboard can have any of the following functions:
|
||||
|
||||
Normal key - Enter the ASCII value associated with the key.
|
||||
|
||||
Function key - Enter a string of ASCII values.
|
||||
|
||||
Switch Key - Switch virtual console.
|
||||
|
||||
Modifier Key - Change the meaning of another key.
|
||||
|
||||
|
||||
The keyboard is seen as a number of keys numbered from 1 to n. This
|
||||
number is often referred to as the "scancode" for a given key. The number
|
||||
of the key is transmitted as an 8 bit char with bit 7 as 0 when a key is
|
||||
pressed, and the number with bit 7 as 1 when released. This makes it
|
||||
possible to make the mapping of the keys fully configurable.
|
||||
|
||||
The meaning of every key is programmable via the PIO_KEYMAP ioctl call, that
|
||||
takes a structure keymap_t as argument. The layout of this structure is as
|
||||
follows:
|
||||
.Pp
|
||||
.Bd -literal -offset indent
|
||||
struct keymap {
|
||||
u_short n_keys;
|
||||
struct key_t {
|
||||
u_char map[NUM_STATES];
|
||||
u_char spcl;
|
||||
u_char flgs;
|
||||
} key[NUM_KEYS];
|
||||
};
|
||||
.Ed
|
||||
.Pp
|
||||
The field n_keys tells the system how many keydefinitions (scancodes)
|
||||
follows. Each scancode is then specified in the key_t substructure.
|
||||
|
||||
Each scancode can be translated to any of 8 different values, depending
|
||||
on the shift, control, and alt state. These eight possibilities are
|
||||
represented by the map array, as shown below:
|
||||
|
||||
alt
|
||||
scan cntrl alt alt cntrl
|
||||
code base shift cntrl shift alt shift cntrl shift
|
||||
map[n] 0 1 2 3 4 5 6 7
|
||||
---- ------------------------------------------------------
|
||||
0x1E 'a' 'A' 0x01 0x01 'a' 'A' 0x01 0x01
|
||||
|
||||
This is the default mapping for the key labelled 'A' which normally has
|
||||
scancode 0x1E. The eight states are as shown, giving the 'A' key its
|
||||
normal behavior.
|
||||
The spcl field is used to give the key "special" treatment, and is
|
||||
interpreted as follows.
|
||||
Each bit corresponds to one of the states above. If the bit is 0 the
|
||||
key emits the number defined in the corresponding map[] entry.
|
||||
If the bit is 1 the key is "special". This means it does not emit
|
||||
anything; instead it changes the "state". That means it is a shift,
|
||||
control, alt, lock, switch-screen, function-key or no-op key.
|
||||
The bitmap is backwards ie. 7 for base, 6 for shift etc.
|
||||
|
||||
The flgs field defines if the key should react on caps-lock (1),
|
||||
num-lock (2), both (3) or ignore both (0).
|
||||
|
||||
The
|
||||
.Xr kbdcontrol 1
|
||||
utility is used to load such a description into/outof
|
||||
the kernel at runtime. This makes it possible to change the key
|
||||
assignments at runtime, or more important to get (GIO_KEYMAP ioctl)
|
||||
the exact key meanings from the kernel (fx. used by the X server).
|
||||
|
||||
The function keys can be programmed using the SETFKEY ioctl call.
|
||||
|
||||
This ioctl takes a argument of the type fkeyarg_t:
|
||||
.Bd -literal -offset indent
|
||||
struct fkeyarg {
|
||||
u_short keynum;
|
||||
char keydef[MAXFK];
|
||||
char flen;
|
||||
};
|
||||
.Ed
|
||||
.Pp
|
||||
The field keynum defines which function key that is programmed.
|
||||
The array keydef should contain the new string to be used (MAXFK long),
|
||||
and the length should be entered in flen.
|
||||
|
||||
The GETFKEY ioctl call works in a similar manner, except it returns
|
||||
the current setting of keynum.
|
||||
|
||||
The function keys are numbered like this:
|
||||
.Bd -literal -offset indent
|
||||
F1-F12 key 1 - 12
|
||||
Shift F1-F12 key 13 - 24
|
||||
Ctrl F1-F12 key 25 - 36
|
||||
Ctrl+shift F1-F12 key 37 - 48
|
||||
|
||||
Home key 49
|
||||
Up arrow key 50
|
||||
Page Up key 51
|
||||
(keypad) - key 52
|
||||
Left arrow key 53
|
||||
(keypad) 5 key 54
|
||||
Right arrow key 55
|
||||
(keypad) + key 56
|
||||
End key 57
|
||||
Down arrow key 58
|
||||
Page down key 59
|
||||
Insert key 60
|
||||
Delete key 61
|
||||
|
||||
Right window key 62
|
||||
Left window key 63
|
||||
Menu key 64
|
||||
.Ed
|
||||
|
||||
The
|
||||
.Xr kbdcontrol 1
|
||||
utility also allows changing these values at runtime.
|
||||
.Pp
|
||||
.Sh AUTHORS
|
||||
.An Søren Schmidt Aq sos@FreeBSD.org
|
@ -1,193 +0,0 @@
|
||||
.\" Copyright (c) 1991 The Regents of the University of California.
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by the University of
|
||||
.\" California, Berkeley and its contributors.
|
||||
.\" 4. Neither the name of the University nor the names of its contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
||||
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)mem.4 5.3 (Berkeley) 5/2/91
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd May 2, 1991
|
||||
.Dt MEM 4 i386
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm mem ,
|
||||
.Nm kmem
|
||||
.Nd memory files
|
||||
.Sh DESCRIPTION
|
||||
The special file
|
||||
.Nm /dev/mem
|
||||
is an interface to the physical memory of the computer.
|
||||
Byte offsets in this file are interpreted as physical memory addresses.
|
||||
Reading and writing this file is equivalent to reading and writing
|
||||
memory itself.
|
||||
Only offsets within the bounds of
|
||||
.Nm /dev/mem
|
||||
are allowed.
|
||||
.Pp
|
||||
Kernel virtual memory is accessed through the interface
|
||||
.Nm /dev/kmem
|
||||
in the same manner as
|
||||
.Nm /dev/mem .
|
||||
Only kernel virtual addresses that are currently mapped to memory are allowed.
|
||||
.Pp
|
||||
On
|
||||
.Tn ISA
|
||||
the
|
||||
.Tn I/O
|
||||
memory space begins at physical address 0x000a0000
|
||||
and runs to 0x00100000.
|
||||
The
|
||||
per-process data
|
||||
size
|
||||
for the current process
|
||||
is
|
||||
.Dv UPAGES
|
||||
long, and ends at virtual
|
||||
address 0xf0000000.
|
||||
.Sh IOCTL INTERFACE
|
||||
Several architectures allow attributes to be associated with ranges of physical
|
||||
memory. These attributes can be manipulated via
|
||||
.Fn ioctl
|
||||
calls performed on
|
||||
.Nm /dev/mem .
|
||||
Declarations and data types are to be found in
|
||||
.Pa <memrange.h>
|
||||
.Pp
|
||||
The specific attributes, and number of programmable ranges may vary between
|
||||
architectures. The full set of supported attributes is:
|
||||
.Bl -tag -width 10
|
||||
.It MDF_UNCACHEABLE
|
||||
The region is not cached.
|
||||
.It MDF_WRITECOMBINE
|
||||
Writes to the region may be combined or performed out of order.
|
||||
.It MDF_WRITETHROUGH
|
||||
Writes to the region are committed synchronously.
|
||||
.It MDF_WRITEBACK
|
||||
Writes to the region are committed asynchronously.
|
||||
.It MDF_WRITEPROTECT
|
||||
The region cannot be written to.
|
||||
.El
|
||||
.Pp
|
||||
Memory ranges are described by
|
||||
.Fa struct mem_range_desc :
|
||||
.Bd -literal -offset indent
|
||||
u_int64_t mr_base; /\(** physical base address \(**/
|
||||
u_int64_t mr_len; /\(** physical length of region \(**/
|
||||
int mr_flags; /\(** attributes of region \(**/
|
||||
char mr_owner[8];
|
||||
.Ed
|
||||
.Pp
|
||||
In addition to the region attributes listed above, the following flags
|
||||
may also be set in the
|
||||
.Fa mr_flags
|
||||
field:
|
||||
.Bl -tag -width 10
|
||||
.It MDF_FIXBASE
|
||||
The region's base address cannot be changed.
|
||||
.It MDF_FIXLEN
|
||||
The region's length cannot be changed.
|
||||
.It MDF_FIRMWARE
|
||||
The region is believed to have been established by the system firmare.
|
||||
.It MDF_ACTIVE
|
||||
The region is currently active.
|
||||
.It MDF_BOGUS
|
||||
We believe the region to be invalid or otherwise erroneous.
|
||||
.It MDF_FIXACTIVE
|
||||
The region cannot be disabled.
|
||||
.It MDF_BUSY
|
||||
The region is currently owned by another process and may not be
|
||||
altered.
|
||||
.El
|
||||
.Pp
|
||||
Operations are performed using
|
||||
.Fa struct mem_range_op :
|
||||
.Bd -literal -offset indent
|
||||
struct mem_range_desc *mo_desc;
|
||||
int mo_arg[2];
|
||||
.Ed
|
||||
.Pp
|
||||
The
|
||||
.Fa MEMRANGE_GET
|
||||
ioctl is used to retrieve current memory range attributes. If
|
||||
.Fa mo_arg[0]
|
||||
is set to 0, it will be updated with the total number of memory range
|
||||
descriptors. If greater than 0, the array at
|
||||
.Fa mo_desc
|
||||
will be filled with a corresponding number of descriptor structures,
|
||||
or the maximum, whichever is less.
|
||||
.Pp
|
||||
The
|
||||
.Fa MEMRANGE_SET
|
||||
ioctl is used to add, alter and remove memory range attributes. A range
|
||||
with the MDF_FIXACTIVE flag may not be removed; a range with the MDF_BUSY
|
||||
flag may not be removed or updated.
|
||||
.Pp
|
||||
.Fa mo_arg[0]
|
||||
should be set to MEMRANGE_SET_UPDATE to update an existing
|
||||
or establish a new range, or to MEMRANGE_SET_REMOVE to remove a range.
|
||||
.Pp
|
||||
.Sh RETURN VALUES
|
||||
.Bl -tag -width 10
|
||||
.It EOPNOTSUPP
|
||||
Memory range operations are not supported on this architecture.
|
||||
.It ENXIO
|
||||
No memory range descriptors are available (eg. firmware has not enabled
|
||||
any).
|
||||
.It EINVAL
|
||||
The memory range supplied as an argument is invalid or overlaps another
|
||||
range in a fashion not supported by this architecture.
|
||||
.It EBUSY
|
||||
An attempt to remove or update a range failed because the range is busy.
|
||||
.It ENOSPC
|
||||
An attempt to create a new range failed due to a shortage of hardware
|
||||
resources (eg. descriptor slots).
|
||||
.It ENOENT
|
||||
An attempt to remove a range failed because no range matches the descriptor
|
||||
base/length supplued.
|
||||
.It EPERM
|
||||
An attempt to remove a range failed because the range is permanently
|
||||
enabled.
|
||||
.El
|
||||
.Sh BUGS
|
||||
Busy range attributes are not yet managed correctly.
|
||||
.Sh FILES
|
||||
.Bl -tag -width Pa -compact
|
||||
.It Pa /dev/mem
|
||||
.It Pa /dev/kmem
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr memcontrol 8
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm mem ,
|
||||
.Nm kmem
|
||||
files appeared in
|
||||
.At v6 .
|
||||
The ioctl interface for memory range attributes was added in
|
||||
.Fx 3.2 .
|
@ -1,382 +0,0 @@
|
||||
.\"
|
||||
.\" Copyright (c) 1997
|
||||
.\" Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer as
|
||||
.\" the first lines of this file unmodified.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||
.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||
.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd December 3, 1997
|
||||
.Dt MOUSE 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm mouse
|
||||
.Nd mouse and pointing device drivers
|
||||
.Sh SYNOPSIS
|
||||
.Fd #include <machine/mouse.h>
|
||||
.Sh DESCRIPTION
|
||||
The mouse drivers
|
||||
.Xr mse 4 ,
|
||||
.Xr psm 4
|
||||
and
|
||||
.Xr sysmouse 4
|
||||
provide user programs with movement and button state information of the mouse.
|
||||
Currently there are specific device drivers for bus, InPort and PS/2 mice.
|
||||
The serial mouse is not directly supported by a dedicated driver, but
|
||||
it is accessible via the serial device driver or via
|
||||
.Xr moused 8
|
||||
and
|
||||
.Xr sysmouse 4 .
|
||||
.Pp
|
||||
The user program simply opens a mouse device with a
|
||||
.Xr open 2
|
||||
call and reads
|
||||
mouse data from the device via
|
||||
.Xr read 2 .
|
||||
Movement and button states are usually encoded in fixed-length data packets.
|
||||
Some mouse devices may send data in variable length of packets.
|
||||
Actual protocol (data format) used by each driver differs widely.
|
||||
.Pp
|
||||
The mouse drivers may have ``non-blocking'' attribute which will make
|
||||
the driver return immediately if mouse data is not available.
|
||||
.Pp
|
||||
Mouse device drivers often offer several levels of operation.
|
||||
The current operation level can be examined and changed via
|
||||
.Xr ioctl 2
|
||||
commands.
|
||||
The level zero is the lowest level at which the driver offers the basic
|
||||
service to user programs.
|
||||
Most drivers provide horizontal and vertical movement of the mouse
|
||||
and state of up to three buttons at this level.
|
||||
At the level one, if supported by the driver, mouse data is encoded
|
||||
in the standard format
|
||||
.Dv MOUSE_PROTO_SYSMOUSE
|
||||
as follows:
|
||||
.Pp
|
||||
.Bl -tag -width Byte_1 -compact
|
||||
.It Byte 1
|
||||
.Bl -tag -width bit_7 -compact
|
||||
.It bit 7
|
||||
Always one.
|
||||
.It bit 6..3
|
||||
Always zero.
|
||||
.It bit 2
|
||||
Left button status; cleared if pressed, otherwise set.
|
||||
.It bit 1
|
||||
Middle button status; cleared if pressed, otherwise set. Always one,
|
||||
if the device does not have the middle button.
|
||||
.It bit 0
|
||||
Right button status; cleared if pressed, otherwise set.
|
||||
.El
|
||||
.It Byte 2
|
||||
The first half of horizontal movement count in two's complement;
|
||||
-128 through 127.
|
||||
.It Byte 3
|
||||
The first half of vertical movement count in two's complement;
|
||||
-128 through 127.
|
||||
.It Byte 4
|
||||
The second half of the horizontal movement count in two's complement;
|
||||
-128 through 127. To obtain the full horizontal movement count, add
|
||||
the byte 2 and 4.
|
||||
.It Byte 5
|
||||
The second half of the vertical movement count in two's complement;
|
||||
-128 through 127. To obtain the full vertical movement count, add
|
||||
the byte 3 and 5.
|
||||
.It Byte 6
|
||||
The bit 7 is always zero. The lower 7 bits encode the first half of
|
||||
Z axis movement count in two's complement; -64 through 63.
|
||||
.It Byte 7
|
||||
The bit 7 is always zero. The lower 7 bits encode the second half of
|
||||
the Z axis movement count in two's complement; -64 through 63.
|
||||
To obtain the full Z axis movement count, add the byte 6 and 7.
|
||||
.It Byte 8
|
||||
The bit 7 is always zero. The bits 0 through 6 reflect the state
|
||||
of the buttons 4 through 10.
|
||||
If a button is pressed, the corresponding bit is cleared. Otherwise
|
||||
the bit is set.
|
||||
.El
|
||||
.Pp
|
||||
The first 5 bytes of this format is compatible with the MouseSystems
|
||||
format. The additional 3 bytes have their MSBs always set to zero.
|
||||
Thus, if the user program can interpret the MouseSystems data format and
|
||||
tries to find the first byte of the format by detecting the bit pattern
|
||||
10000xxxb,
|
||||
it will discard the additional bytes, thus, be able to decode x, y
|
||||
and states of 3 buttons correctly.
|
||||
.Pp
|
||||
Device drivers may offer operation levels higher than one.
|
||||
Refer to manual pages of individual drivers for details.
|
||||
.Sh IOCTLS
|
||||
The following
|
||||
.Xr ioctl 2
|
||||
commands are defined for the mouse drivers. The degree of support
|
||||
varies from one driver to another. This section gives general
|
||||
description of the commands.
|
||||
Refer to manual pages of individual drivers for specific details.
|
||||
.Pp
|
||||
.Bl -tag -width MOUSE -compact
|
||||
.It Dv MOUSE_GETLEVEL Ar int *level
|
||||
.It Dv MOUSE_SETLEVEL Ar int *level
|
||||
These commands manipulate the operation level of the mouse driver.
|
||||
.Pp
|
||||
.It Dv MOUSE_GETHWINFO Ar mousehw_t *hw
|
||||
Returns the hardware information of the attached device in the following
|
||||
Except for the
|
||||
.Dv iftype
|
||||
field, the device driver may not always fill the structure with correct
|
||||
values.
|
||||
Consult manual pages of individual drivers for details of support.
|
||||
.Bd -literal
|
||||
typedef struct mousehw {
|
||||
int buttons; /* number of buttons */
|
||||
int iftype; /* I/F type */
|
||||
int type; /* mouse/track ball/pad... */
|
||||
int model; /* I/F dependent model ID */
|
||||
int hwid; /* I/F dependent hardware ID */
|
||||
} mousehw_t;
|
||||
.Ed
|
||||
.Pp
|
||||
The
|
||||
.Dv buttons
|
||||
field holds the number of buttons detected by the driver. The driver
|
||||
may put an arbitrary value, such as two, in this field, if it cannot
|
||||
determine the exact number.
|
||||
.Pp
|
||||
The
|
||||
.Dv iftype
|
||||
is the type of interface:
|
||||
.Dv MOUSE_IF_SERIAL ,
|
||||
.Dv MOUSE_IF_BUS ,
|
||||
.Dv MOUSE_IF_INPORT ,
|
||||
.Dv MOUSE_IF_PS2 ,
|
||||
.Dv MOUSE_IF_SYSMOUSE
|
||||
or
|
||||
.Dv MOUSE_IF_UNKNOWN .
|
||||
.Pp
|
||||
The
|
||||
.Dv type
|
||||
tells the device type:
|
||||
.Dv MOUSE_MOUSE ,
|
||||
.Dv MOUSE_TRACKBALL ,
|
||||
.Dv MOUSE_STICK ,
|
||||
.Dv MOUSE_PAD ,
|
||||
or
|
||||
.Dv MOUSE_UNKNOWN .
|
||||
.Pp
|
||||
The
|
||||
.Dv model
|
||||
may be
|
||||
.Dv MOUSE_MODEL_GENERIC
|
||||
or one of
|
||||
.Dv MOUSE_MODEL_XXX
|
||||
constants.
|
||||
.Pp
|
||||
The
|
||||
.Dv hwid
|
||||
is the ID value returned by the pointing device. It
|
||||
depend on the interface type; refer to the manual page of
|
||||
specific mouse drivers for possible values.
|
||||
.Pp
|
||||
.It Dv MOUSE_GETMODE Ar mousemode_t *mode
|
||||
The command reports the current operation parameters of the mouse driver.
|
||||
.Bd -literal
|
||||
typedef struct mousemode {
|
||||
int protocol; /* MOUSE_PROTO_XXX */
|
||||
int rate; /* report rate (per sec) */
|
||||
int resolution; /* MOUSE_RES_XXX, -1 if unknown */
|
||||
int accelfactor; /* acceleration factor */
|
||||
int level; /* driver operation level */
|
||||
int packetsize; /* the length of the data packet */
|
||||
unsigned char syncmask[2]; /* sync. bits */
|
||||
} mousemode_t;
|
||||
.Ed
|
||||
.Pp
|
||||
The
|
||||
.Dv protocol
|
||||
field tells the format in which the device status is returned
|
||||
when the mouse data is read by the user program.
|
||||
It is one of
|
||||
.Dv MOUSE_PROTO_XXX
|
||||
constants.
|
||||
.Pp
|
||||
The
|
||||
.Dv rate
|
||||
field is the status report rate (reports/sec) at which the device will send
|
||||
movement reports to the host computer. -1 if unknown or not applicable.
|
||||
.Pp
|
||||
The
|
||||
.Dv resolution
|
||||
field holds a value specifying resolution of the pointing device.
|
||||
It is a positive value or one of
|
||||
.Dv MOUSE_RES_XXX
|
||||
constants.
|
||||
.Pp
|
||||
The
|
||||
.Dv accelfactor
|
||||
field holds a value to control acceleration feature.
|
||||
It must be zero or greater.
|
||||
If it is zero, acceleration is disabled.
|
||||
.Pp
|
||||
The
|
||||
.Dv packetsize
|
||||
field tells the length of the fixed-size data packet or the length
|
||||
of the fixed part of the variable-length packet.
|
||||
The size depends on the interface type, the device type and model, the
|
||||
protocol and the operation level of the driver.
|
||||
.Pp
|
||||
The array
|
||||
.Dv syncmask
|
||||
holds a bit mask and pattern to detect the first byte of the
|
||||
data packet.
|
||||
.Dv syncmask[0]
|
||||
is the bit mask to be ANDed with a byte. If the result is equal to
|
||||
.Dv syncmask[1] ,
|
||||
the byte is likely to be the first byte of the data packet.
|
||||
Note that this method of detecting the first byte is not 100% reliable,
|
||||
thus, should be taken only as an advisory measure.
|
||||
.Pp
|
||||
.It Dv MOUSE_SETMODE Ar mousemode_t *mode
|
||||
The command changes the current operation parameters of the mouse driver
|
||||
as specified in
|
||||
.Ar mode .
|
||||
Only
|
||||
.Dv rate ,
|
||||
.Dv resolution ,
|
||||
.Dv level
|
||||
and
|
||||
.Dv accelfactor
|
||||
may be modifiable. Setting values in the other field does not generate
|
||||
error and has no effect.
|
||||
.Pp
|
||||
If you do not want to change the current setting of a field, put -1
|
||||
there.
|
||||
You may also put zero in
|
||||
.Dv resolution
|
||||
and
|
||||
.Dv rate ,
|
||||
and the default value for the fields will be selected.
|
||||
.\" .Pp
|
||||
.\" .It Dv MOUSE_GETVARS Ar mousevar_t *vars
|
||||
.\" Get internal variables of the mouse driver.
|
||||
.\" The variables which can be manipulated through these commands
|
||||
.\" are specific to each driver.
|
||||
.\" This command may not be supported by all drivers.
|
||||
.\" .Bd -literal
|
||||
.\" typedef struct mousevar {
|
||||
.\" int var[16]; /* internal variables */
|
||||
.\" } mousevar_t;
|
||||
.\" .Ed
|
||||
.\" .Pp
|
||||
.\" If the commands are supported, the first element of the array is
|
||||
.\" filled with a signature value.
|
||||
.\" Apart from the signature data, there is currently no standard concerning
|
||||
.\" the other elements of the buffer.
|
||||
.\" .Pp
|
||||
.\" .It Dv MOUSE_SETVARS Ar mousevar_t *vars
|
||||
.\" Get internal variables of the mouse driver.
|
||||
.\" The first element of the array must be a signature value.
|
||||
.\" This command may not be supported by all drivers.
|
||||
.Pp
|
||||
.It Dv MOUSE_READDATA Ar mousedata_t *data
|
||||
The command reads the raw data from the device.
|
||||
.Bd -literal
|
||||
typedef struct mousedata {
|
||||
int len; /* # of data in the buffer */
|
||||
int buf[16]; /* data buffer */
|
||||
} mousedata_t;
|
||||
.Ed
|
||||
.Pp
|
||||
The calling process must fill the
|
||||
.Dv len
|
||||
field with the number of bytes to be read into the buffer.
|
||||
This command may not be supported by all drivers.
|
||||
.Pp
|
||||
.It Dv MOUSE_READSTATE Ar mousedata_t *state
|
||||
The command reads the raw state data from the device.
|
||||
It uses the same structure as above.
|
||||
This command may not be supported by all drivers.
|
||||
.Pp
|
||||
.It Dv MOUSE_GETSTATUS Ar mousestatus_t *status
|
||||
The command returns the current state of buttons and
|
||||
movement counts in the following structure.
|
||||
.Bd -literal
|
||||
typedef struct mousestatus {
|
||||
int flags; /* state change flags */
|
||||
int button; /* button status */
|
||||
int obutton; /* previous button status */
|
||||
int dx; /* x movement */
|
||||
int dy; /* y movement */
|
||||
int dz; /* z movement */
|
||||
} mousestatus_t;
|
||||
.Ed
|
||||
.Pp
|
||||
The
|
||||
.Dv button
|
||||
and
|
||||
.Dv obutton
|
||||
fields hold the current and the previous state of the mouse buttons.
|
||||
When a button is pressed, the corresponding bit is set.
|
||||
The mouse drivers may support up to 31 buttons with the bit 0 through 31.
|
||||
Few button bits are defined as
|
||||
.Dv MOUSE_BUTTON1DOWN
|
||||
through
|
||||
.Dv MOUSE_BUTTON8DOWN .
|
||||
The first three buttons correspond to left, middle and right buttons.
|
||||
.Pp
|
||||
If the state of the button has changed since the last
|
||||
.Dv MOUSE_GETSTATUS
|
||||
call, the corresponding bit in the
|
||||
.Dv flags
|
||||
field will be set.
|
||||
If the mouse has moved since the last call, the
|
||||
.Dv MOUSE_POSCHANGED
|
||||
bit in the
|
||||
.Dv flags
|
||||
field will also be set.
|
||||
.Pp
|
||||
The other fields hold movement counts since the last
|
||||
.Dv MOUSE_GETSTATUS
|
||||
call. The internal counters will be reset after every call to this
|
||||
command.
|
||||
.El
|
||||
.Sh FILES
|
||||
.Bl -tag -width /dev/sysmouseXX -compact
|
||||
.It Pa /dev/cuaa%d
|
||||
serial ports
|
||||
.It Pa /dev/mse%d
|
||||
bus and InPort mouse device
|
||||
.It Pa /dev/psm%d
|
||||
PS/2 mouse device
|
||||
.It Pa /dev/sysmouse
|
||||
virtual mouse device
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr ioctl 2 ,
|
||||
.Xr mse 4 ,
|
||||
.Xr psm 4 ,
|
||||
.Xr sysmouse 4 ,
|
||||
.Xr moused 8
|
||||
.\".Sh HISTORY
|
||||
.Sh AUTHORS
|
||||
This manual page was written by
|
||||
.An Kazutaka Yokota Aq yokota@FreeBSD.org .
|
@ -1,299 +0,0 @@
|
||||
.\" Copyright (c) 1996
|
||||
.\" Mike Pritchard <mpp@FreeBSD.org>. All rights reserved.
|
||||
.\"
|
||||
.\" Copyright (c) 1983, 1991, 1993
|
||||
.\" The Regents of the University of California. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by the University of
|
||||
.\" California, Berkeley and its contributors.
|
||||
.\" 4. Neither the name of the University nor the names of its contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
||||
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)mtio.4 8.1 (Berkeley) 6/5/93
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd February 11, 1996
|
||||
.Dt MTIO 4 i386
|
||||
.Os FreeBSD 2.2
|
||||
.Sh NAME
|
||||
.Nm mtio
|
||||
.Nd
|
||||
.Tn FreeBSD
|
||||
magtape interface
|
||||
.Sh DESCRIPTION
|
||||
The special files
|
||||
named
|
||||
.Pa /dev/[nr]sa*
|
||||
refer to SCSI tape drives,
|
||||
which may be attached to the system.
|
||||
.Pa /dev/[nr]sa*.ctl
|
||||
are control devices that can be used to issue ioctls to the SCSI
|
||||
tape driver to set parameters that are required to last beyond the
|
||||
unmounting of a tape.
|
||||
.Pp
|
||||
.Pp
|
||||
The rewind devices automatically rewind
|
||||
when the last requested read, write or seek has finished, or the end of the tape
|
||||
has been reached. The letter
|
||||
.Ql n
|
||||
is usually prepended to
|
||||
the name of the no-rewind devices.
|
||||
.Pp
|
||||
Tapes can be written with either fixed length records or variable length
|
||||
records. See
|
||||
.Xr sa 4
|
||||
for more information. Two end-of-file markers mark the end of a tape, and
|
||||
one end-of-file marker marks the end of a tape file.
|
||||
If the tape is not to be rewound it is positioned with the
|
||||
head in between the two tape marks, where the next write
|
||||
will over write the second end-of-file marker.
|
||||
.Pp
|
||||
All of the magtape devices may be manipulated with the
|
||||
.Xr mt 1
|
||||
command.
|
||||
.Pp
|
||||
A number of
|
||||
.Xr ioctl 2
|
||||
operations are available
|
||||
on raw magnetic tape.
|
||||
The following definitions are from
|
||||
.Aq Pa sys/mtio.h :
|
||||
.Bd -literal
|
||||
/*
|
||||
* Structures and definitions for mag tape io control commands
|
||||
*/
|
||||
|
||||
/* structure for MTIOCTOP - mag tape op command */
|
||||
struct mtop {
|
||||
short mt_op; /* operations defined below */
|
||||
daddr_t mt_count; /* how many of them */
|
||||
};
|
||||
|
||||
/* operations */
|
||||
#define MTWEOF 0 /* write an end-of-file record */
|
||||
#define MTFSF 1 /* forward space file */
|
||||
#define MTBSF 2 /* backward space file */
|
||||
#define MTFSR 3 /* forward space record */
|
||||
#define MTBSR 4 /* backward space record */
|
||||
#define MTREW 5 /* rewind */
|
||||
#define MTOFFL 6 /* rewind and put the drive offline */
|
||||
#define MTNOP 7 /* no operation, sets status only */
|
||||
#define MTCACHE 8 /* enable controller cache */
|
||||
#define MTNOCACHE 9 /* disable controller cache */
|
||||
|
||||
#if defined(__FreeBSD__)
|
||||
/* Set block size for device. If device is a variable size dev */
|
||||
/* a non zero parameter will change the device to a fixed block size */
|
||||
/* device with block size set to that of the parameter passed in. */
|
||||
/* Resetting the block size to 0 will restore the device to a variable */
|
||||
/* block size device. */
|
||||
|
||||
#define MTSETBSIZ 10
|
||||
|
||||
/* Set density values for device. They are defined in the SCSI II spec */
|
||||
/* and range from 0 to 0x17. Sets the value for the opened mode only */
|
||||
|
||||
#define MTSETDNSTY 11
|
||||
|
||||
#define MTERASE 12 /* erase to EOM */
|
||||
#define MTEOD 13 /* Space to EOM */
|
||||
#define MTCOMP 14 /* select compression mode 0=off, 1=def */
|
||||
#define MTRETENS 15 /* re-tension tape */
|
||||
#define MTWSS 16 /* write setmark(s) */
|
||||
#define MTFSS 17 /* forward space setmark */
|
||||
#define MTBSS 18 /* backward space setmark */
|
||||
|
||||
#define MT_COMP_ENABLE 0xffffffff
|
||||
#define MT_COMP_DISABLED 0xfffffffe
|
||||
#define MT_COMP_UNSUPP 0xfffffffd
|
||||
|
||||
/*
|
||||
* Values in mt_dsreg that say what the device is doing
|
||||
*/
|
||||
#define MTIO_DSREG_NIL 0 /* Unknown */
|
||||
#define MTIO_DSREG_REST 1 /* Doing Nothing */
|
||||
#define MTIO_DSREG_RBSY 2 /* Communicating with tape (but no motion) */
|
||||
#define MTIO_DSREG_WR 20 /* Writing */
|
||||
#define MTIO_DSREG_FMK 21 /* Writing Filemarks */
|
||||
#define MTIO_DSREG_ZER 22 /* Erasing */
|
||||
#define MTIO_DSREG_RD 30 /* Reading */
|
||||
#define MTIO_DSREG_FWD 40 /* Spacing Forward */
|
||||
#define MTIO_DSREG_REV 41 /* Spacing Reverse */
|
||||
#define MTIO_DSREG_POS 42 /* Hardware Positioning (direction unknown) */
|
||||
#define MTIO_DSREG_REW 43 /* Rewinding */
|
||||
#define MTIO_DSREG_TEN 44 /* Retensioning */
|
||||
#define MTIO_DSREG_UNL 45 /* Unloading */
|
||||
#define MTIO_DSREG_LD 46 /* Unloading */
|
||||
|
||||
#endif
|
||||
|
||||
/* structure for MTIOCGET - mag tape get status command */
|
||||
|
||||
struct mtget {
|
||||
short mt_type; /* type of magtape device */
|
||||
/* the following two registers are grossly device dependent */
|
||||
short mt_dsreg; /* ``drive status'' register */
|
||||
short mt_erreg; /* ``error'' register */
|
||||
/* end device-dependent registers */
|
||||
short mt_resid; /* residual count */
|
||||
#if defined (__FreeBSD__)
|
||||
daddr_t mt_blksiz; /* presently operating blocksize */
|
||||
daddr_t mt_density; /* presently operating density */
|
||||
daddr_t mt_comp; /* presently operating compression */
|
||||
daddr_t mt_blksiz0; /* blocksize for mode 0 */
|
||||
daddr_t mt_blksiz1; /* blocksize for mode 1 */
|
||||
daddr_t mt_blksiz2; /* blocksize for mode 2 */
|
||||
daddr_t mt_blksiz3; /* blocksize for mode 3 */
|
||||
daddr_t mt_density0; /* density for mode 0 */
|
||||
daddr_t mt_density1; /* density for mode 1 */
|
||||
daddr_t mt_density2; /* density for mode 2 */
|
||||
daddr_t mt_density3; /* density for mode 3 */
|
||||
/* the following are not yet implemented */
|
||||
u_char mt_comp0; /* compression type for mode 0 */
|
||||
u_char mt_comp1; /* compression type for mode 1 */
|
||||
u_char mt_comp2; /* compression type for mode 2 */
|
||||
u_char mt_comp3; /* compression type for mode 3 */
|
||||
/* end not yet implemented */
|
||||
#endif
|
||||
daddr_t mt_fileno; /* file number of current position */
|
||||
daddr_t mt_blkno; /* block number of current position */
|
||||
};
|
||||
|
||||
/* structure for MTIOCERRSTAT - tape get error status command */
|
||||
/* really only supported for SCSI tapes right now */
|
||||
struct scsi_tape_errors {
|
||||
/*
|
||||
* These are latched from the last command that had a SCSI
|
||||
* Check Condition noted for these operations. The act
|
||||
* of issuing an MTIOCERRSTAT unlatches and clears them.
|
||||
*/
|
||||
u_int8_t io_sense[32]; /* Last Sense Data For Data I/O */
|
||||
u_int32_t io_resid; /* residual count from last Data I/O */
|
||||
u_int8_t io_cdb[16]; /* Command that Caused the Last Data Sense */
|
||||
u_int8_t ctl_sense[32]; /* Last Sense Data For Control I/O */
|
||||
u_int32_t ctl_resid; /* residual count from last Control I/O */
|
||||
u_int8_t ctl_cdb[16]; /* Command that Caused the Last Control Sense */
|
||||
/*
|
||||
* These are the read and write cumulative error counters.
|
||||
* (how to reset cumulative error counters is not yet defined).
|
||||
* (not implemented as yet but space is being reserved for them)
|
||||
*/
|
||||
struct {
|
||||
u_int32_t retries; /* total # retries performed */
|
||||
u_int32_t corrected; /* total # corrections performed */
|
||||
u_int32_t processed; /* total # corrections succssful */
|
||||
u_int32_t failures; /* total # corrections/retries failed */
|
||||
u_int64_t nbytes; /* total # bytes processed */
|
||||
} wterr, rderr;
|
||||
};
|
||||
|
||||
union mterrstat {
|
||||
struct scsi_tape_errors scsi_errstat;
|
||||
char _reserved_padding[256];
|
||||
};
|
||||
/*
|
||||
* Constants for mt_type byte. These are the same
|
||||
* for controllers compatible with the types listed.
|
||||
*/
|
||||
#define MT_ISTS 0x01 /* TS-11 */
|
||||
#define MT_ISHT 0x02 /* TM03 Massbus: TE16, TU45, TU77 */
|
||||
#define MT_ISTM 0x03 /* TM11/TE10 Unibus */
|
||||
#define MT_ISMT 0x04 /* TM78/TU78 Massbus */
|
||||
#define MT_ISUT 0x05 /* SI TU-45 emulation on Unibus */
|
||||
#define MT_ISCPC 0x06 /* SUN */
|
||||
#define MT_ISAR 0x07 /* SUN */
|
||||
#define MT_ISTMSCP 0x08 /* DEC TMSCP protocol (TU81, TK50) */
|
||||
#define MT_ISCY 0x09 /* CCI Cipher */
|
||||
#define MT_ISCT 0x0a /* HP 1/4 tape */
|
||||
#define MT_ISFHP 0x0b /* HP 7980 1/2 tape */
|
||||
#define MT_ISEXABYTE 0x0c /* Exabyte */
|
||||
#define MT_ISEXA8200 0x0c /* Exabyte EXB-8200 */
|
||||
#define MT_ISEXA8500 0x0d /* Exabyte EXB-8500 */
|
||||
#define MT_ISVIPER1 0x0e /* Archive Viper-150 */
|
||||
#define MT_ISPYTHON 0x0f /* Archive Python (DAT) */
|
||||
#define MT_ISHPDAT 0x10 /* HP 35450A DAT drive */
|
||||
#define MT_ISMFOUR 0x11 /* M4 Data 1/2 9track drive */
|
||||
#define MT_ISTK50 0x12 /* DEC SCSI TK50 */
|
||||
#define MT_ISMT02 0x13 /* Emulex MT02 SCSI tape controller */
|
||||
|
||||
/* mag tape io control commands */
|
||||
#define MTIOCTOP _IOW('m', 1, struct mtop) /* do a mag tape op */
|
||||
#define MTIOCGET _IOR('m', 2, struct mtget) /* get tape status */
|
||||
/* these two do not appear to be used anywhere */
|
||||
#define MTIOCIEOT _IO('m', 3) /* ignore EOT error */
|
||||
#define MTIOCEEOT _IO('m', 4) /* enable EOT error */
|
||||
/*
|
||||
* When more SCSI-3 SSC (streaming device) devices are out there
|
||||
* that support the full 32 byte type 2 structure, we'll have to
|
||||
* rethink these ioctls to support all the entities they haul into
|
||||
* the picture (64 bit blocks, logical file record numbers, etc..).
|
||||
*/
|
||||
#define MTIOCRDSPOS _IOR('m', 5, u_int32_t) /* get logical blk addr */
|
||||
#define MTIOCRDHPOS _IOR('m', 6, u_int32_t) /* get hardware blk addr */
|
||||
#define MTIOCSLOCATE _IOW('m', 5, u_int32_t) /* seek to logical blk addr */
|
||||
#define MTIOCHLOCATE _IOW('m', 6, u_int32_t) /* seek to hardware blk addr */
|
||||
#define MTIOCERRSTAT _IOR('m', 7, union mterrstat) /* get tape errors */
|
||||
|
||||
#ifndef KERNEL
|
||||
#define DEFTAPE "/dev/nrsa0"
|
||||
#endif
|
||||
|
||||
#ifdef KERNEL
|
||||
/*
|
||||
* minor device number
|
||||
*/
|
||||
|
||||
#define T_UNIT 003 /* unit selection */
|
||||
#define T_NOREWIND 004 /* no rewind on close */
|
||||
#define T_DENSEL 030 /* density select */
|
||||
#define T_800BPI 000 /* select 800 bpi */
|
||||
#define T_1600BPI 010 /* select 1600 bpi */
|
||||
#define T_6250BPI 020 /* select 6250 bpi */
|
||||
#define T_BADBPI 030 /* undefined selection */
|
||||
#endif
|
||||
#endif /* _SYS_MTIO_H_ */
|
||||
.Ed
|
||||
.Pp
|
||||
.Sh FILES
|
||||
.Bl -tag -width /dev/[nr]sa* -compact
|
||||
.It Pa /dev/[nr]sa*
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr mt 1 ,
|
||||
.Xr tar 1 ,
|
||||
.Xr st 4
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm mtio
|
||||
manual appeared in
|
||||
.Bx 4.2 .
|
||||
An i386 version first appeared in
|
||||
.Fx 2.2 .
|
||||
.Sh BUGS
|
||||
The status should be returned in a device independent format.
|
||||
.Pp
|
||||
The special file naming should be redone in a more consistent and
|
||||
understandable manner.
|
@ -1,173 +0,0 @@
|
||||
.\" Copyright (c) 1997, 1998
|
||||
.\" Bill Paul <wpaul@ctr.columbia.edu>. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by Bill Paul.
|
||||
.\" 4. Neither the name of the author nor the names of any co-contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD
|
||||
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||
.\" THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd November 5, 1998
|
||||
.Dt MX 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm mx
|
||||
.Nd
|
||||
Macronix 98713/98715/98725 fast ethernet device driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd "controller miibus0"
|
||||
.Cd "device mx0"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver provides support for PCI ethernet adapters and embedded
|
||||
controllers based on the Macronix 98713, 98713A, 98715, 98715A and
|
||||
98725 fast ethernet controller chips. This includes the NDC
|
||||
Communications SOHOware SFA110, the SVEC PN102-TX
|
||||
fast ethernet card, and various other adapters. The
|
||||
.Nm
|
||||
driver also supports the Lite-On 82c115 PNIC II chip, which is
|
||||
actually similar in design to the Macronix 98715A with the addition
|
||||
of wake on LAN support. Supported PNIC II cards include the
|
||||
LinkSys LNE100TX Version 2.
|
||||
.Pp
|
||||
The Macronix chips use bus master DMA and are designed to be
|
||||
DEC 'tulip' workalikes. The original 98713 had an MII bus for
|
||||
controlling an external PHY, however the 98713A and up use an
|
||||
internal transceiver with NWAY support. The Macronix parts are
|
||||
advertised as being register compatible with the DEC 21x4x
|
||||
controllers. All of the Macronix controllers support both
|
||||
10 and 100Mbps speeds in either full or half duplex.
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media types:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It autoselect
|
||||
Enable autoselection of the media type and options.
|
||||
The user can manually override
|
||||
the autoselected mode by adding media options to the
|
||||
.Pa /etc/rc.conf
|
||||
file.
|
||||
.It 10baseT/UTP
|
||||
Set 10Mbps operation. The
|
||||
.Ar mediaopt
|
||||
option can also be used to select either
|
||||
.Ar full-duplex
|
||||
or
|
||||
.Ar half-duplex modes.
|
||||
.It 100baseTX
|
||||
Set 100Mbps (fast ethernet) operation. The
|
||||
.Ar mediaopt
|
||||
option can also be used to select either
|
||||
.Ar full-duplex
|
||||
or
|
||||
.Ar half-duplex
|
||||
modes.
|
||||
.El
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media options:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It full-duplex
|
||||
Force full duplex operation
|
||||
.It half-duplex
|
||||
Force half duplex operation.
|
||||
.El
|
||||
.Pp
|
||||
Note that the 100baseTX media type is only available if supported
|
||||
by the adapter.
|
||||
For more information on configuring this device, see
|
||||
.Xr ifconfig 8 .
|
||||
.Sh DIAGNOSTICS
|
||||
.Bl -diag
|
||||
.It "mx%d: couldn't map memory"
|
||||
A fatal initialization error has occurred.
|
||||
.It "mx%d: couldn't map interrupt"
|
||||
A fatal initialization error has occurred.
|
||||
.It "mx%d: watchdog timeout"
|
||||
The device has stopped responding to the network, or there is a problem with
|
||||
the network connection (cable).
|
||||
.It "mx%d: no memory for rx list"
|
||||
The driver failed to allocate an mbuf for the receiver ring.
|
||||
.It "mx%d: no memory for tx list"
|
||||
The driver failed to allocate an mbuf for the transmitter ring when
|
||||
allocating a pad buffer or collapsing an mbuf chain into a cluster.
|
||||
.It "mx%d: chip is in D3 power state -- setting to D0"
|
||||
This message applies only to adapters which support power
|
||||
management. Some operating systems place the controller in low power
|
||||
mode when shutting down, and some PCI BIOSes fail to bring the chip
|
||||
out of this state before configuring it. The controller loses all of
|
||||
its PCI configuration in the D3 state, so if the BIOS does not set
|
||||
it back to full power mode in time, it won't be able to configure it
|
||||
correctly. The driver tries to detect this condition and bring
|
||||
the adapter back to the D0 (full power) state, but this may not be
|
||||
enough to return the driver to a fully operational condition. If
|
||||
you see this message at boot time and the driver fails to attach
|
||||
the device as a network interface, you will have to perform second
|
||||
warm boot to have the device properly configured.
|
||||
.Pp
|
||||
Note that this condition only occurs when warm booting from another
|
||||
operating system. If you power down your system prior to booting
|
||||
.Fx ,
|
||||
the card should be configured correctly.
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr arp 4 ,
|
||||
.Xr netintro 4 ,
|
||||
.Xr ifconfig 8
|
||||
.Rs
|
||||
.%T Macronix 98713/A, 98715/A and 98725 data sheets
|
||||
.%O http://www.macronix.com
|
||||
.Re
|
||||
.Rs
|
||||
.%T Macronix 98713/A and 98715/A app notes
|
||||
.%O http://www.macronix.com
|
||||
.Re
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
device driver first appeared in
|
||||
.Fx 3.0 .
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm
|
||||
driver was written by
|
||||
.An Bill Paul Aq wpaul@ctr.columbia.edu .
|
||||
.Sh BUGS
|
||||
The Macronix application notes claim that in order to put the
|
||||
chips in normal operation, the driver must write a certian magic
|
||||
number into the CSR16 register. The numbers are documented in
|
||||
the app notes, but the exact meaning of the bits is not.
|
||||
.Pp
|
||||
The 98713A seems to have a problem with 10Mbps full duplex mode.
|
||||
The transmitter works but the receiver tends to produce many
|
||||
unexplained errors leading to very poor overall performance. The
|
||||
98715A does not exhibit this problem. All other modes on the
|
||||
98713A seem to work correctly.
|
@ -1,46 +0,0 @@
|
||||
.\"
|
||||
.\" Copyright (c) 1994 James A. Jegers
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. The name of the author may not be used to endorse or promote products
|
||||
.\" derived from this software without specific prior written permission
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||
.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||
.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd July 10, 1996
|
||||
.Dt NCR 4 i386
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm ncr
|
||||
.Nd NCR 53C8xx SCSI driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd "device ncr0"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver provides support for the NCR/Symbios 53C810, 53C810a,
|
||||
53C815, 53C820, 53C825a, 53C860, 53C875, 53C875j, 53C885,
|
||||
53C895 and 53C896 SCSI controller chips.
|
||||
.Sh SEE ALSO
|
||||
.Xr cd 4 ,
|
||||
.Xr ch 4 ,
|
||||
.Xr da 4 ,
|
||||
.Xr intro 4 ,
|
||||
.Xr sa 4 ,
|
||||
.Xr scsi 4
|
@ -1,70 +0,0 @@
|
||||
.\" Copyright (c) 1999
|
||||
.\" Nick Hibma <hibma@skylink.it>. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by Bill Paul.
|
||||
.\" 4. Neither the name of the author nor the names of any co-contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY NICK HIBMA AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL NICK HIBMA OR THE VOICES IN HIS HEAD
|
||||
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||
.\" THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd February 21, 1999
|
||||
.Dt 0HCI 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm ohci
|
||||
.Nd
|
||||
OHCI USB Host Controller Driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd "controller ohci0"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver provides support for OHCI-type PCI based USB controllers. This
|
||||
includes
|
||||
.Bl -tag -width xxxxx
|
||||
.It AcerLabs M5237 (Aladdin-V)
|
||||
.It OPTi 82C861 (FireLink)
|
||||
.It NEC uPD 9210
|
||||
.It CMD Tech 670 (USB0670)
|
||||
.It CMD Tech 673 (USB0673)
|
||||
.El
|
||||
|
||||
or any other OHCI v1.0 compliant controller.
|
||||
.Sh SEE ALSO
|
||||
.Xr uhci 4
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
device driver first appeared in
|
||||
.Fx 3.0 .
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm
|
||||
driver was written by
|
||||
.An Lennart Augustsson Aq augustss@carlstedt.se
|
||||
for the
|
||||
.Nx
|
||||
project.
|
@ -1,202 +0,0 @@
|
||||
.\"
|
||||
.\" Copyright (c) 1998, Luigi Rizzo
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
|
||||
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd June 3, 1998
|
||||
.Dt PCM 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm pcm
|
||||
.Nd FreeBSD audio device driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd "device pcm0 at isa? port? irq 5 drq 1 flags 0x15"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm pcm
|
||||
driver provides support for various ISA sound cards that are compatible
|
||||
with the WSS/MSS specs, or with the SBPro and SB16. Only audio
|
||||
capture/playback is supported by the driver, and true full duplex
|
||||
operation is available on most cards.
|
||||
.Pp
|
||||
Apart from the usual parameters, the flags field is used to specify
|
||||
the secondary DMA channel (generally used for capture in full duplex
|
||||
cards). Flags are set to 0 for cards not using a secondary DMA
|
||||
channel, or to 0x10 + C to specify channel C.
|
||||
.Pp
|
||||
PnP audio cards are also supported using the
|
||||
.Nm pnp
|
||||
support which is available in FreeBSD starting from release 2.2.6.
|
||||
See the
|
||||
.Xr pnp 4
|
||||
manpage for more information. In particular, remember that unit
|
||||
numbers for (recognized)
|
||||
PnP cards are assigned after the legacy ISA devices, and that the
|
||||
actual resources (port, irq and drq) used by the driver are read from
|
||||
the PnP configuration and not from the "device pcm0" line.
|
||||
So, if you have the following line in your kernel config file:
|
||||
.Pp
|
||||
.Cd "device pcm0 ..."
|
||||
.Pp
|
||||
your first PnP audio card will be unit #1, i.e. it will be accessible
|
||||
as /dev/audio1, /dev/dsp1, etc.
|
||||
Many applications default to using /dev/audio, but appropriate
|
||||
symlinks will be created as a side-effect of the the following command:
|
||||
.Pp
|
||||
.Cd cd /dev
|
||||
.Cd ./MAKEDEV snd1
|
||||
.Pp
|
||||
The driver works best with WSS/MSS cards, which have a very clean
|
||||
architecture and an orthogonal set of features. They also happen to be
|
||||
among the cheapest audio cards on the market.
|
||||
Other cards such as SB and ESS have a more complex internal
|
||||
architecture, and often no documentation available. As a consequence,
|
||||
support for these cards is slightly worse.
|
||||
.Pp
|
||||
The driver does its best to recognize the installed harware and drive
|
||||
it correctly, so that you don't have to give too many details in the
|
||||
kernel config files. For PnP cards this is actually easy since they
|
||||
identify themselves. For legacy ISA cards, the driver first looks for
|
||||
MSS cards at addresses 0x530 and 0x604, then for SB
|
||||
cards at 0x220 and 0x240 (obviously, unless overridden in the kernel
|
||||
config file by specifying an address).
|
||||
|
||||
.Sh IOCTL
|
||||
The driver supports most of the Voxware ioctls(), and most
|
||||
applications work unmodified (including popular mpeg players and linux
|
||||
binaries). A few
|
||||
differences exist (the most important one is the ability to use
|
||||
memory-mapped access to the audio buffers). As a consequence, some
|
||||
applications may need to be recompiled with a slightly modified
|
||||
audio module. See /usr/include/machine/soundcard.h for a complete
|
||||
list of the supported ioctls.
|
||||
|
||||
.Sh SUPPORTED CARDS
|
||||
.Pp
|
||||
Below we include a list of supported codecs/cards, including, if
|
||||
possible, the pnp configuration information where applicable
|
||||
(we give default parameters, your actual resources may vary).
|
||||
|
||||
.Bl -tag -width 2m % begin list
|
||||
.It CS4237, CS4236, CS4232, CS4231
|
||||
.Cd "pnp 1 0 os enable port0 0x534 port2 0x220 irq0 5 drq0 1 drq1 3"
|
||||
.Pp
|
||||
All these cards work perfectly in full duplex using the MSS mode.
|
||||
This chipset is used, among others, on the A/Open AW35 and AW32, on
|
||||
some Intel motherboards, and (the CS4231) on some non-PnP cards.
|
||||
.Pp
|
||||
The CS4232 is reported as buggy in the Voxware documentation but
|
||||
I am not sure if this is true. On one of my Intel motherboards,
|
||||
capture does not work simply because the capture DMA channel is
|
||||
not wired to the ISA DMA controller.
|
||||
|
||||
.It GUSPnP
|
||||
.Cd "pnp 1 0 os enable port0 0x220 port1 0x320 port2 0x32c irq0 5 drq0 7 drq1 5"
|
||||
.Pp
|
||||
Supported in full duplex using the MSS mode. The GUSPnP does not use a
|
||||
real CS4231, and I suspect a bug in the emulation when operating
|
||||
with mu-law format. Since the card is discontinued, I did not bother
|
||||
to include special code to set the card in "Mode3" (where mu-law is
|
||||
known to work) and rather I use U8 format internally, and do the
|
||||
conversion in software within the driver. This loses resolution,
|
||||
so you should use 16-bit modes with this card when possible.
|
||||
|
||||
.It Yamaha OPL-SAx
|
||||
.Cd "pnp 1 0 os enable port0 0x220 port1 0x530 port2 0x388 port3 0x370 irq0 5 drq0 1 drq1 3"
|
||||
.Pp
|
||||
Works perfectly in all modes. This chip is used in several PnP cards,
|
||||
but also (in non-PnP mode) on motherboards and laptops (e.g. the
|
||||
Toshiba Libretto).
|
||||
|
||||
.It OPTi931
|
||||
.Cd "pnp 1 1 os enable port0 0x534 port2 0x220 port3 0xe0d irq0 10 drq0 1 drq1 6"
|
||||
.Pp
|
||||
The chip is buggy, but the driver has many workarounds to make it work
|
||||
in full duplex because for some time these were the only full duplex
|
||||
cards I could find. u-law formats uses U8 format internally because of
|
||||
a bug in the chip.
|
||||
|
||||
.It SB16, Vibra16C, and old SB16/AWExx cards
|
||||
.Cd "pnp 1 0 os enable port0 0x220 irq0 5 drq0 1 drq1 5"
|
||||
.Pp
|
||||
These codecs have limited full duplex capabilities, by doing 8-bit
|
||||
in one direction and 16-bit in the other one. The driver supports this
|
||||
mode of operation but keep in mind that it is not a supported mode of
|
||||
operation from CreativeLabs.
|
||||
|
||||
.It Vibra16X and newer SB16/AWExx cards
|
||||
.Cd "pnp 1 0 os enable port0 0x220 irq0 5 drq0 1 drq1 3"
|
||||
.Pp
|
||||
Recently CreativeLabs has changed the codec (DSP) and the new one is
|
||||
somewhat different from the old one. The most apparent difference is
|
||||
the use of two 8-bit DMA channels, which seems to have broken our full
|
||||
duplex support. Maybe one can achieve full duplex by making use of the
|
||||
wavetable to play audio, but since this driver does not support the
|
||||
wavetable you have to stick with half duplex.
|
||||
|
||||
.It SBPro and clones
|
||||
This is the default mode of operation for most other cards. We have
|
||||
only limited (and possibly buggy) support for them: 8-bit, half
|
||||
duplex, even if the hardware in some cases (e.g. ESS chips) might do more.
|
||||
.El
|
||||
.Pp
|
||||
.Sh DIAGNOSTICS AND TROUBLESHOOTING
|
||||
.Bl -tag -width 2m
|
||||
.It "This is XXX but LDN Y is disabled"
|
||||
.Pp
|
||||
This means that the bios has left the PnP device disabled, and you
|
||||
have to enable it manually booting with "-c" and giving the pnp
|
||||
configuration shown above.
|
||||
.It "pcmX: unit not configured, perhaps you want pcmY ?"
|
||||
This means that you are using the wrong unit. Generally this happens
|
||||
when you are using a PnP card without creating the symlinks to the
|
||||
correct unit. Re-create the symlinks (and possibly also the device
|
||||
entries) in the /dev directory to point to the right one.
|
||||
|
||||
.It "timeout flushing dbuf_out ..."
|
||||
This means a problem in the configuration of the card (specifically,
|
||||
in the DMA channel) or (much less likely) in the driver, which has
|
||||
not recognized the card correctly. Check the DMA channel used for
|
||||
capture.
|
||||
|
||||
.It capture does not work
|
||||
This usually happens when the input dma channel is misconfigured.
|
||||
|
||||
.El
|
||||
.Sh BUGS
|
||||
Due to lack of documentation,
|
||||
SB16 support is not very good. Also, mixer support is not complete,
|
||||
and some features of your cards (e.g. global volume control) might not
|
||||
be supported on all devices.
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm pcm
|
||||
device driver first appeared in
|
||||
.Fx 2.2.6
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm
|
||||
device driver and this manual page were written by
|
||||
.An Luigi Rizzo Aq luigi@iet.unipi.it
|
@ -1,917 +0,0 @@
|
||||
.\"
|
||||
.\" Copyright (c) 1992, 1995 Hellmuth Michaelis, Brian Dunford-Shore,
|
||||
.\" Joerg Wunsch and Holger Veit.
|
||||
.\"
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by Hellmuth Michaelis,
|
||||
.\" Brian Dunford-Shore, Joerg Wunsch and Holger Veit.
|
||||
.\" 4. The name authors may not be used to endorse or promote products
|
||||
.\" derived from this software without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS ``AS IS'' AND ANY EXPRESS OR
|
||||
.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
.\" IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||
.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)pcvt.4, 3.20, Last Edit-Date: [Sun Apr 2 18:23:39 1995]
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.\" Man page pcvt(4) created after pcvt_ioctl.h on 13-Jan-93
|
||||
.\" by Joerg Wunsch
|
||||
.\"
|
||||
.\" updated for rel 2.10 (-hm)
|
||||
.\" updated for rel 2.20 (-hm)
|
||||
.\" updated for rel 3.00 (-jw)
|
||||
.\" updated for final rel 3.00 (-hm)
|
||||
.\" removed references to 386BSD (-hm)
|
||||
.\"
|
||||
.Dd February 27, 1994
|
||||
.Dt PCVT 4 i386
|
||||
.Sh NAME
|
||||
.Nm pcvt ,
|
||||
.Nm vt
|
||||
.Nd PC console virtual screen system
|
||||
.Sh SYNOPSIS
|
||||
options
|
||||
.Do
|
||||
.Em PCVT_FREEBSD = version
|
||||
|
|
||||
.Em PCVT_NETBSD = version
|
||||
.Dc
|
||||
.br
|
||||
.Op options Dq Em PCVT_NSCREENS = number
|
||||
.br
|
||||
.Op options Dq Em PCVT_XXXX
|
||||
.Po
|
||||
see
|
||||
.Sx Configuration
|
||||
below
|
||||
.Pc
|
||||
.Pp
|
||||
.Cd "device vt0 at isa?"
|
||||
.Sh DESCRIPTION
|
||||
.Ss Overview
|
||||
The
|
||||
.Nm pcvt
|
||||
driver provides a virtual screen system with several additional
|
||||
features not available in historic console drivers.
|
||||
Besides the ability of handling
|
||||
multiple virtual screens,
|
||||
the probably most important is an emulation of a wide range
|
||||
of DEC VT-220
|
||||
.if t \(tm
|
||||
.if n (TM)
|
||||
functionality. See
|
||||
.Sx Features
|
||||
for a detailed description.
|
||||
.Pp
|
||||
The
|
||||
.Nm pcvt
|
||||
driver requires the keyboard driver
|
||||
.Nm atkbd
|
||||
to be also configured in the kernel.
|
||||
|
||||
.Ss Features
|
||||
.Bl -bullet
|
||||
.It
|
||||
Almost full DEC VT220
|
||||
.if t \(tm
|
||||
.if n (TM)
|
||||
functionality
|
||||
.Po
|
||||
moving towards VT320
|
||||
.if t \(tm
|
||||
.if n (TM)
|
||||
.Pc
|
||||
.It
|
||||
Completely independent virtual terminals for MDA/HGC/CGA/EGA and VGA
|
||||
.It
|
||||
25, 28, 35, 40, 43 or 50x80 screen resolution for each virtual screen
|
||||
.It
|
||||
Fully remappable keyboard to support national keyboards
|
||||
.It
|
||||
All VT220 character sets plus ISO Latin-1 and DEC technical supported
|
||||
.It
|
||||
VT220 downloadable character set supported when run on EGA/VGA
|
||||
.It
|
||||
VT220 user defined keys for each virtual terminal
|
||||
.It
|
||||
Optional function key label support
|
||||
.if t \('a
|
||||
.if n 'a
|
||||
la Hewlett-Packard
|
||||
.It
|
||||
Display function codes functionality
|
||||
.It
|
||||
Support for MDA, CGA, EGA and VGA display adaptors
|
||||
.It
|
||||
Support for 132 column operation on VGA chipsets
|
||||
.It
|
||||
X Window Support for XFree86 >= 1.2 using the pccons model, or
|
||||
for XFree86 >= 2.0 using the syscons model
|
||||
.Po
|
||||
requires
|
||||
.Em PCVT_USL_VT_COMPAT
|
||||
to be configured
|
||||
.Pc
|
||||
.El
|
||||
|
||||
What it cannot:
|
||||
.Bl -bullet
|
||||
.It
|
||||
No double wide/high characters
|
||||
.It
|
||||
No softscroll
|
||||
.It
|
||||
No inverse background
|
||||
.It
|
||||
No VT220 printer output support
|
||||
.It
|
||||
No VT52 support at all
|
||||
.It
|
||||
No 8-bit controls
|
||||
.It
|
||||
Only limited AT-keyboard
|
||||
.Pq 84 keys
|
||||
support
|
||||
.Pq yet
|
||||
.It
|
||||
Help you to make money...
|
||||
.El
|
||||
|
||||
.Ss Configuration
|
||||
The
|
||||
.Nm pcvt
|
||||
console driver is currently available for the Intel-based BSD operating
|
||||
systems
|
||||
.Tn NetBSD/i386
|
||||
(release 0.9 or higher),
|
||||
and
|
||||
.Tn FreeBSD
|
||||
(release 1.0-GAMMA or higher) .
|
||||
In order to get the appropriate system support, one of the options
|
||||
.Em PCVT_NETBSD ,
|
||||
or
|
||||
.Em PCVT_FREEBSD
|
||||
must be defined in the system's config file
|
||||
.Pq see Xr config 8 .
|
||||
In addition, for the
|
||||
.Tn FreeBSD
|
||||
and
|
||||
.Tn NetBSD
|
||||
operating systems, it is necessary to set this option to the operating
|
||||
system's version number.
|
||||
For
|
||||
.Tn FreeBSD
|
||||
this version number must be expressed as a 3-digit number.
|
||||
E.\& g., if you are running the 1.0 release
|
||||
.Pq which is actually version 1.0.2 ,
|
||||
you should define
|
||||
|
||||
.Em PCVT_FREEBSD = 102
|
||||
|
||||
For
|
||||
.Em NetBSD
|
||||
this version number must be expressed as 9 if you are running NetBSD 0.9
|
||||
and anything greater than 9 for NetBSD-current (pre 1.0). It is recommended
|
||||
to use (as with
|
||||
.Tn FreeBSD )
|
||||
100 for
|
||||
.Nx 1.0
|
||||
and 999 for
|
||||
.Tn NetBSD-current.
|
||||
E.g., if you are running the
|
||||
.Nx 1.0
|
||||
release, you should define
|
||||
|
||||
.Em PCVT_NETBSD = 100
|
||||
|
||||
The
|
||||
.Nm pcvt
|
||||
driver has been designed to be highly configurable in order to satisfy
|
||||
everyone's needs. The preferred way for those configurations is to
|
||||
provide appropriate
|
||||
.Em options
|
||||
lines within the config file, possibly overriding the built-in default
|
||||
values. Therefore it is possible to compile several distinct kernels
|
||||
with different driver behaviour on a single machine.
|
||||
|
||||
The following list gives a short overview of the available configuration
|
||||
options. Refer to the file
|
||||
.Pa i386/isa/pcvt/pcvt_hdr.h
|
||||
in the kernel source tree for detailed documentation.
|
||||
|
||||
Note: the following conventions apply to all the Boolean options.
|
||||
If an option is given with no value, a value of 1
|
||||
.Pq activated
|
||||
is substituted. If an option value is given as 0, this options is
|
||||
deactivated. Any other value is substituted by 1, too. If an option
|
||||
is omitted, a built-in default is assumed.
|
||||
|
||||
.Bl -tag -width indent -compact
|
||||
|
||||
.It Em PCVT_NSCREENS
|
||||
Defines the number of virtual screens.
|
||||
.br
|
||||
Default: 8
|
||||
|
||||
.It Em PCVT_VT220KEYB
|
||||
If activated, a keyboard layout resembling a DEC VT200 (TM) is generated.
|
||||
If deactivated, a mixture between VT220 and HP is used. See the files
|
||||
.Pa Keyboard.VT
|
||||
and
|
||||
.Pa Keyboard.HP
|
||||
in the
|
||||
.Nm pcvt
|
||||
documentation directory for a full description.
|
||||
.br
|
||||
Default: off
|
||||
|
||||
.It Em PCVT_SCREENSAVER
|
||||
Enables the builtin screensaver feature.
|
||||
.br
|
||||
Default: on
|
||||
|
||||
.It Em PCVT_PRETTYSCRNS
|
||||
If enabled, a blinking-star screensaver is used. If disabled, the screen
|
||||
is simply blanked
|
||||
.Pq which might be useful for energy-saving monitors .
|
||||
.br
|
||||
Default: on
|
||||
|
||||
.It Em PCVT_CTRL_ALT_DEL
|
||||
If enabled, the key combination
|
||||
.Aq Em Ctrl
|
||||
.Aq Em Alt
|
||||
.Aq Em Del
|
||||
invokes a CPU reset.
|
||||
.br
|
||||
Default: off
|
||||
|
||||
.It Em PCVT_USEKBDSEC
|
||||
Do NOT override a security lock for the keyboard.
|
||||
.br
|
||||
Default: on
|
||||
|
||||
.It Em PCVT_24LINESDEF
|
||||
If enabled, the 25-line modi
|
||||
.Po
|
||||
VT emulation with 25 lines, and HP emulation with 28 lines
|
||||
.Pc
|
||||
default to 24 lines only to provide a better compatibility to the
|
||||
original DEV VT220 (TM). Thus it should be possible to use the
|
||||
terminal information for those terminals without further changes.
|
||||
Note that this is a startup option; it is possible to toggle between
|
||||
the 24- and 25-lines' display by the
|
||||
.Xr scon 1
|
||||
utility.
|
||||
.br
|
||||
Default: off
|
||||
|
||||
.It Em PCVT_EMU_MOUSE
|
||||
Emulate a three-button mouse via the keypad. Useful for notebooks when
|
||||
running XFree86. See
|
||||
.Sx Mouse emulation
|
||||
below.
|
||||
.br
|
||||
Default: off
|
||||
|
||||
.It Em PCVT_META_ESC
|
||||
If enabled, a sequence composed of
|
||||
.Aq Em esc ,
|
||||
followed by the normal key code is emitted if a key is pressed with the
|
||||
.Aq Em Alt
|
||||
key modifier. If disabled, then normal key code with the value
|
||||
.Em 0x80
|
||||
added is sent.
|
||||
.br
|
||||
Default: off
|
||||
|
||||
.El
|
||||
|
||||
Note that there are further options available which are mainly used for
|
||||
debugging purposes or as a workaround for hardware problems. They are
|
||||
found in
|
||||
.Pa i386/isa/pcvt/pcvt_hdr.h
|
||||
along with their documentation.
|
||||
|
||||
.Ss Internal Functions
|
||||
The functionality described below may be accessed via
|
||||
.Xr ioctl 2
|
||||
system calls with a file descriptor opened on a device node
|
||||
related to the
|
||||
.Nm pcvt
|
||||
driver.
|
||||
To make use of them, a program should contain the following line:
|
||||
|
||||
|
||||
.Dl #include <machine/pcvt_ioctl.h>
|
||||
|
||||
Any parameter definitions cited below can be found in that file.
|
||||
|
||||
|
||||
.Em Keyboard related functions
|
||||
|
||||
Three functions are related to basic keyboard hardware:
|
||||
|
||||
.Bl -tag -width 20n -offset indent -compact
|
||||
.It KBDRESET
|
||||
reset keyboard, set defaults;
|
||||
.It KBDGTPMAT
|
||||
get current typematic value, parameter is a pointer to int where
|
||||
the values is stored to;
|
||||
.It KBDSTPMAT
|
||||
set current typematic value, similar to above command.
|
||||
.El
|
||||
|
||||
Symbolic values are available for the appropriate constants.
|
||||
To specify the initial typematic delay time, they are
|
||||
KBD_TPD250 for 250 ms through
|
||||
KBD_TPD1000 for 1000 ms, in steps of 250 ms. The typematic repeat
|
||||
rates are
|
||||
KBD_TPM300, specifying 30.0 characters per second through
|
||||
KBD_TPM20 for 2.0 characters per second. The intermediate values
|
||||
are: 30.0, 26.7, 24.0, 21.8, 20.0, 18.5, 17.1, 16.0, 15.0, 13.3,
|
||||
12.0, 10.9, 10.0, 9.2, 8.6, 8.0, 7.5, 6.7, 6.0, 5.5, 5.0, 4.6, 4.3,
|
||||
4.0, 3.7, 3.3, 3.0, 2.7, 2.5, 2.3, 2.1, 2.0 characters per second.
|
||||
|
||||
|
||||
.Bl -tag -width 20n -offset indent -compact
|
||||
.It KBDGREPSW
|
||||
get key repetition switch, and
|
||||
.It KBDSREPSW
|
||||
set key repetition switch
|
||||
.El
|
||||
|
||||
again take a pointer to int as argument. They manipulate the
|
||||
drivers internal keyboard repetition flag, possible values are:
|
||||
KBD_REPEATOFF or KBD_REPEATON.
|
||||
|
||||
|
||||
.Bl -tag -width 20n -offset indent -compact
|
||||
.It KBDGLEDS
|
||||
get LED state, and
|
||||
.It KBDSLEDS
|
||||
set LED state manipulate the keyboard indicators, but do not influence
|
||||
the drivers idea of lock key state.
|
||||
.El
|
||||
|
||||
The int where the argument points to
|
||||
may have the values
|
||||
KBD_SCROLLLOCK, KBD_NUMLOCK, KBD_CAPSLOCK, which may be used in any
|
||||
conjunction.
|
||||
|
||||
.Bl -tag -width 20n -offset indent -compact
|
||||
.It KBDGLOCK
|
||||
gets state of SCROLL,NUM,CAPS, and
|
||||
.It KBDSLOCK
|
||||
sets state of SCROLL,NUM,CAPS + LEDs
|
||||
.El
|
||||
|
||||
should be used in a same manner to get/set the drivers internal
|
||||
LED flags.
|
||||
|
||||
|
||||
.Em Keyboard remapping
|
||||
|
||||
One important feature of the
|
||||
.Nm pcvt
|
||||
driver is its ability to overload the built in key definition.
|
||||
|
||||
.Bl -tag -width 20n -offset indent -compact
|
||||
.It KBDGCKEY
|
||||
get current key values,
|
||||
.It KBDSCKEY
|
||||
set new key assignment values, and
|
||||
.It KBDGOKEY
|
||||
get original key assignment values
|
||||
.El
|
||||
|
||||
arrange those functions. The take a pointer to a
|
||||
.Em struct kbd_ovlkey
|
||||
as argument as described below. In addition,
|
||||
|
||||
.Bl -tag -width 20n -offset indent -compact
|
||||
.It KBDRMKEY
|
||||
removes a key assignment, taking a pointer to an int as argument which
|
||||
contains the affected key number;
|
||||
.It KBDDEFAULT
|
||||
removes all key assignments.
|
||||
.El
|
||||
.Bd -literal
|
||||
struct kbd_ovlkey /* complete definition of a key */
|
||||
{
|
||||
u_short keynum; /* the key itself */
|
||||
u_short type; /* type of key, see below */
|
||||
u_char subu; /* subtype, ignored on write */
|
||||
char unshift[KBDMAXOVLKEYSIZE+1]; /* emitted string, unshifted */
|
||||
u_char subs; /* subtype, ignored on write */
|
||||
char shift[KBDMAXOVLKEYSIZE+1]; /* emitted string, shifted */
|
||||
u_char subc; /* subtype, ignored on write */
|
||||
char ctrl[KBDMAXOVLKEYSIZE+1]; /* emitted string, control */
|
||||
u_char suba; /* subtype, ignored on write */
|
||||
char altgr[KBDMAXOVLKEYSIZE+1]; /* emitted string, altgr */
|
||||
};
|
||||
.Ed
|
||||
|
||||
The appropriate values for the
|
||||
.Em type
|
||||
field are:
|
||||
|
||||
.Bl -tag -width 20n -offset indent -compact
|
||||
.It KBD_NONE
|
||||
no function, key is disabled,
|
||||
.It KBD_SHIFT
|
||||
keyboard shift,
|
||||
.It KBD_META
|
||||
alternate shift, sets bit8 to ASCII code,
|
||||
.It KBD_NUM
|
||||
numeric shift, keypad numeric / application mode,
|
||||
.It KBD_CTL
|
||||
control code generation,
|
||||
.It KBD_CAPS
|
||||
caps shift - swaps case of letter,
|
||||
.It KBD_ASCII
|
||||
ASCII code generating key,
|
||||
.It KBD_SCROLL
|
||||
stop output,
|
||||
.It KBD_FUNC
|
||||
function key,
|
||||
.It KBD_KP
|
||||
keypad keys,
|
||||
.It KBD_BREAK
|
||||
ignored,
|
||||
.It KBD_ALTGR
|
||||
AltGr translation feature,
|
||||
.It KBD_SHFTLOCK
|
||||
shift lock,
|
||||
.It KBD_CURSOR
|
||||
cursor keys, and
|
||||
.It KBD_RETURN
|
||||
.Dq Return
|
||||
or
|
||||
.Dq Enter
|
||||
keys.
|
||||
.El
|
||||
|
||||
The
|
||||
.Em subtype
|
||||
field contains one of the values
|
||||
|
||||
.Bl -tag -width 20n -offset indent -compact
|
||||
.It KBD_SUBT_STR
|
||||
key is bound to a string, or
|
||||
.It KBD_SUBT_FNC
|
||||
key is bound to a function.
|
||||
.El
|
||||
|
||||
.Em Mouse emulation
|
||||
|
||||
The mouse emulator
|
||||
.Pq if configured in
|
||||
fakes a three-button mouse using the Mouse Systems protocol. The first
|
||||
.Nm pcvt
|
||||
device node not used by a virtual screen is the mouse device. I.\& e.,
|
||||
for the default value of 8 virtual screens,
|
||||
.Pa /dev/ttyv0
|
||||
through
|
||||
.Pa /dev/ttyv7
|
||||
would refer to the virtual screens, and
|
||||
.Pa /dev/ttyv8
|
||||
were the mouse emulator device. The mouse emulation is turned on by
|
||||
pressing the
|
||||
.Aq Em NumLock
|
||||
key. The pointer is moved by the numerical keypad keys, into the
|
||||
obvious directions. The pointer is initially moved in single steps,
|
||||
and is accelerated after an adjustable time
|
||||
.Pq default: 500 ms
|
||||
by about 6 times. The mouse buttons are emulated by three normal
|
||||
keys, by default the function keys
|
||||
.Aq Em \&F1 ,
|
||||
.Aq Em \&F2 ,
|
||||
and
|
||||
.Aq Em \&F3 .
|
||||
There are two selectable flavors available: normal and
|
||||
.Dq sticky
|
||||
buttons. Normal buttons behave as expected.
|
||||
.Dq Sticky
|
||||
buttons are notified as button-press on the first keypress. They
|
||||
.Dq stick
|
||||
until the key is pressed again
|
||||
.Pq or another button-emulating key instead .
|
||||
Button presses and releases are notified to the user by a simple
|
||||
.Dq pling ,
|
||||
or
|
||||
.Dq plong ,
|
||||
respectively, generated from the PC's built-in speaker.
|
||||
|
||||
The following commands control the emulation.
|
||||
|
||||
.Bl -tag -width 20n -offset indent -compact
|
||||
.It KBDMOUSEGET
|
||||
get the current definitions, and
|
||||
.It KBDMOUSESET
|
||||
set new definitions.
|
||||
.El
|
||||
|
||||
Both accept a
|
||||
.Li struct mousedefs *
|
||||
as the third argument to the ioctl call:
|
||||
.Bd -literal
|
||||
struct mousedefs {
|
||||
int leftbutton; /* (PC) scan code for "left button" key */
|
||||
int middlebutton; /* (PC) scan code for "mid button" key */
|
||||
int rightbutton; /* (PC) scan code for "right button" key */
|
||||
int stickybuttons; /* if true, the buttons are "sticky" */
|
||||
int acceltime; /* timeout in microseconds to start pointer */
|
||||
/* movement acceleration */
|
||||
/* defaults to: scan(F1), scan(F2), scan(F3), false, 500000 */
|
||||
};
|
||||
.Ed
|
||||
|
||||
|
||||
.Em Downloadable character set interface
|
||||
|
||||
EGA and VGA video adaptors provide the capability of downloadable
|
||||
software fonts. Since the
|
||||
.Sq native character set
|
||||
of any IBM-compatible PC video board does not allow the full interpretation
|
||||
of DEC multinational character set or ISO Latin-1
|
||||
.Pq ISO 8859-1 ,
|
||||
this might be very useful for a U**X environment.
|
||||
|
||||
.Bl -tag -width 20n -offset indent -compact
|
||||
.It VGASETFONTATTR
|
||||
set font attr, and
|
||||
.It VGAGETFONTATTR
|
||||
get font attr
|
||||
.El
|
||||
|
||||
are used to manipulate the drivers information about a downloaded
|
||||
font. The take a pointer to a
|
||||
.Em struct vgafontattr
|
||||
as argument:
|
||||
.Bd -literal
|
||||
struct vgafontattr {
|
||||
int character_set; /* VGA character set */
|
||||
int font_loaded; /* Mark font loaded or unloaded */
|
||||
int screen_size; /* Character rows per screen */
|
||||
int character_scanlines; /* Scanlines per character - 1 */
|
||||
int screen_scanlines; /* Scanlines per screen - 1 byte */
|
||||
};
|
||||
.Ed
|
||||
|
||||
Each character of each font is to be downloaded with
|
||||
|
||||
.Bl -tag -width 20n -offset indent -compact
|
||||
.It VGALOADCHAR
|
||||
load vga char,
|
||||
.El
|
||||
|
||||
taking a pointer to
|
||||
.Em struct vgaloadchar
|
||||
as its argument:
|
||||
.Bd -literal
|
||||
struct vgaloadchar {
|
||||
int character_set; /* VGA character set to load into */
|
||||
int character; /* Character to load */
|
||||
int character_scanlines; /* Scanlines per character */
|
||||
u_char char_table[32]; /* VGA character shape table */
|
||||
};
|
||||
.Ed
|
||||
|
||||
The field
|
||||
.Em character_set
|
||||
takes the values
|
||||
CH_SET0, CH_SET1, CH_SET2, CH_SET3 on EGA's or VGA's. Since VGA's
|
||||
might have up to eight simultaneously loaded fonts, they can take
|
||||
CH_SET4, CH_SET5, CH_SET6, or CH_SET7, too.
|
||||
|
||||
Note that there's a dependence between the font size
|
||||
and a possible screen height
|
||||
.Pq in character rows ,
|
||||
depending on the video adaptor used:
|
||||
.Bd -literal
|
||||
Screen size (rows) on: EGA VGA
|
||||
Font size
|
||||
|
||||
8 x 8 43 50
|
||||
8 x 10 35 40
|
||||
8 x 14 25 28
|
||||
8 x 16 not 25
|
||||
applicable
|
||||
.Ed
|
||||
|
||||
|
||||
.Em General screen manipulation commands
|
||||
|
||||
.Bl -tag -width 20n -offset indent -compact
|
||||
.It VGACURSOR
|
||||
sets cursor shape,
|
||||
.El
|
||||
|
||||
taking a pointer to the following structure as argument:
|
||||
.Bd -literal
|
||||
struct cursorshape {
|
||||
int screen_no; /* screen number for which to set, */
|
||||
/* or -1 to set on current active screen */
|
||||
int start; /* top scanline, range 0... Character Height - 1 */
|
||||
int end; /* end scanline, range 0... Character Height - 1 */
|
||||
};
|
||||
.Ed
|
||||
|
||||
.Bl -tag -width 20n -offset indent -compact
|
||||
.It VGASETSCREEN
|
||||
set screen info, and
|
||||
.It VGAGETSCREEN
|
||||
get screen info,
|
||||
.El
|
||||
|
||||
provide an interface to some general driver internal variables
|
||||
which might modify the behaviour of the screens,
|
||||
or which might simply be used to force the driver to switch
|
||||
to one certain screen. Their argument is a pointer to the structure:
|
||||
.Bd -literal
|
||||
struct screeninfo {
|
||||
int adaptor_type; /* type of video adaptor installed */
|
||||
/* read only, ignored on write (yet!) */
|
||||
int totalfonts; /* no of downloadable fonts */
|
||||
/* read only, ignored on write */
|
||||
int totalscreens; /* no of virtual screens */
|
||||
/* read only, ignored on write */
|
||||
int screen_no; /* screen number, this was got from */
|
||||
/* on write, if -1, apply pure_vt_mode */
|
||||
/* and/or screen_size to current screen*/
|
||||
/* else to screen_no supplied */
|
||||
int current_screen; /* screen number, which is displayed. */
|
||||
/* on write, if -1, make this screen */
|
||||
/* the current screen, else set current*/
|
||||
/* displayed screen to parameter */
|
||||
int pure_vt_mode; /* flag, pure VT mode or HP/VT mode */
|
||||
/* on write, if -1, no change */
|
||||
int screen_size; /* screen size */
|
||||
/* on write, if -1, no change */
|
||||
int force_24lines; /* force 24 lines if 25 lines VT mode */
|
||||
/* or 28 lines HP mode to get pure */
|
||||
/* VT220 screen size */
|
||||
/* on write, if -1, no change */
|
||||
int vga_family; /* if adaptor_type = VGA, this reflects*/
|
||||
/* the chipset family after a read */
|
||||
/* nothing happenes on write ... */
|
||||
int vga_type; /* if adaptor_type = VGA, this reflects*/
|
||||
/* the chipset after a read */
|
||||
/* nothing happenes on write ... */
|
||||
int vga_132; /* set to 1 if driver has support for */
|
||||
/* 132 column operation for chipset */
|
||||
/* currently ignored on write */
|
||||
};
|
||||
.Ed
|
||||
|
||||
Its field
|
||||
.Em pure_vt_mode
|
||||
may take the values M_HPVT for a mixed VTxxx and HP Mode, with function
|
||||
key labels and a status line, or M_PUREVT for only VTxxx sequences
|
||||
recognized, with no labels.
|
||||
|
||||
.Bl -tag -width 20n -offset indent -compact
|
||||
.It VGASETCOLMS
|
||||
sets the number of columns for the current screen,
|
||||
.El
|
||||
|
||||
its parameter is a pointer to an integer containing either a value of 80,
|
||||
or a value of 132. Note that setting the number of columns to 132 is
|
||||
only supported on VGA adaptors. Any unsupported numbers cause the ioctl
|
||||
to fail with
|
||||
.Em errno
|
||||
.Pq see Xr intro 2
|
||||
being set to
|
||||
.Em EINVAL .
|
||||
|
||||
.Em VGA color palette interface
|
||||
|
||||
Only on VGA adaptors, there's a color palette register at the output.
|
||||
It is responsible for the red, green and blue output voltage provided
|
||||
for each of the 256 internal color codes, each lying in the range of
|
||||
0 through 63 (with 63 representing the brightest value for a base color).
|
||||
Thus, these adaptors map each color code to a color of a
|
||||
.Dq palette
|
||||
out of 262144 colors. The commands
|
||||
|
||||
.Bl -tag -width 20n -offset indent -compact
|
||||
.It VGAREADPEL
|
||||
read VGA palette entry, and
|
||||
.It VGAWRITEPEL
|
||||
write VGA palette entry
|
||||
.El
|
||||
|
||||
establish an interface to these palette registers. Their argument is
|
||||
a pointer to:
|
||||
.Bd -literal
|
||||
struct vgapel {
|
||||
unsigned idx; /* index into palette, 0 .. 255 valid */
|
||||
unsigned r, g, b; /* RGB values, masked by VGA_PMASK (63) */
|
||||
};
|
||||
.Ed
|
||||
|
||||
|
||||
.Em Driver identification
|
||||
|
||||
.Bl -tag -width 20n -offset indent -compact
|
||||
.It VGAPCVTID
|
||||
returns information if the current compiled in driver is pcvt and it's
|
||||
major and minor revision numbers. the call is taking a pointer to the
|
||||
following structure as argument:
|
||||
.El
|
||||
|
||||
.Bd -literal
|
||||
struct pcvtid {
|
||||
#define PCVTIDNAMELN 16 /* driver id - string length */
|
||||
char name[PCVTIDNAMELN]; /* driver name, == PCVTIDSTR */
|
||||
#define PCVTIDNAME "pcvt" /* driver id - string */
|
||||
int rmajor; /* revision number, major */
|
||||
#define PCVTIDMAJOR 3
|
||||
int rminor; /* revision number, minor */
|
||||
#define PCVTIDMINOR 00
|
||||
};
|
||||
.Ed
|
||||
|
||||
|
||||
.Bl -tag -width 20n -offset indent -compact
|
||||
.It VGAPCVTINFO
|
||||
returns information if the current compiled in driver is pcvt and it's
|
||||
compile time options. the call is taking a pointer to the following
|
||||
structure as argument:
|
||||
.El
|
||||
|
||||
.Bd -literal
|
||||
struct pcvtinfo {
|
||||
u_int opsys; /* PCVT_xxx(x)BSD */
|
||||
#define CONF_UNKNOWNOPSYS 0
|
||||
#define CONF_386BSD 1 /* unsupported !!! */
|
||||
#define CONF_NETBSD 2
|
||||
#define CONF_FREEBSD 3
|
||||
u_int opsysrel; /* Release for NetBSD/FreeBSD */
|
||||
u_int nscreens; /* PCVT_NSCREENS */
|
||||
u_int scanset; /* PCVT_SCANSET */
|
||||
u_int updatefast; /* PCVT_UPDATEFAST */
|
||||
u_int updateslow; /* PCVT_UPDATESLOW */
|
||||
u_int sysbeepf; /* PCVT_SYSBEEPF */
|
||||
u_int pcburst; /* PCVT_PCBURST */
|
||||
u_int kbd_fifo_sz; /* PCVT_KBD_FIFO_SZ */
|
||||
|
||||
/* config booleans */
|
||||
|
||||
u_long compile_opts; /* PCVT_xxxxxxxxxxxxxxx */
|
||||
};
|
||||
.Ed
|
||||
|
||||
|
||||
.Em Screen saver
|
||||
|
||||
Depending on the configuration of a
|
||||
.Nm pcvt
|
||||
driver, their might be a simple screen saver available. It is controlled
|
||||
by the command
|
||||
|
||||
.Bl -tag -width 20n -offset indent -compact
|
||||
.It VGASCREENSAVER
|
||||
set timeout for screen saver in seconds; 0 turns it off,
|
||||
.El
|
||||
|
||||
taking a pointer to an integer as argument. Despite of its command name,
|
||||
this is available on
|
||||
.Em any
|
||||
kind of adaptor if configured in by the
|
||||
.Xr config 8
|
||||
option
|
||||
.Dq PCVT_SCREENSAVER
|
||||
|
||||
.Em Compatibility commands for USL-style VT's
|
||||
|
||||
Release 3.00 of this
|
||||
.Nm pcvt
|
||||
driver supports a subset of the USL-style commands used to control
|
||||
the virtual terminal interface. This feature is mainly intended to
|
||||
allow
|
||||
.Em XFree86 ,
|
||||
release 2.0 or higher, to switch between virtual screens even when
|
||||
running an X server. They are ugly with respect to the implied semantics
|
||||
.Pq i.\& e., they break Berkeley semantics
|
||||
and are therefore not recommended for common use. See the file
|
||||
.Pa i386/include/pcvt_ioctl.h
|
||||
for their documentation.
|
||||
|
||||
.Sh FILES
|
||||
.Bl -tag -width /usr/include/machine/pcvt_ioctl.h
|
||||
.It Pa /usr/include/machine/pcvt_ioctl.h
|
||||
Definitions for
|
||||
.Xr ioctl 2
|
||||
function calls
|
||||
.It Pa /dev/ttyv?
|
||||
.It Pa /dev/console
|
||||
Device nodes to access the
|
||||
.Nm pcvt
|
||||
driver
|
||||
.It Pa i386/isa/pcvt/pcvt_hdr.h
|
||||
.Pq relative to the kernel source tree
|
||||
Documents the various compile-time options to tailor
|
||||
.Nm pcvt .
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm pcvt
|
||||
driver has been developed for and contributed to 386BSD release 0.1. Since
|
||||
release 3.00 explicit support is provided for NetBSD 0.9. It is expected
|
||||
that no further development on pcvt is done for 386BSD 0.1 after release 3.00,
|
||||
in fact, 386BSD support was dropped with release 3.20.
|
||||
.Sh AUTHORS
|
||||
Written by
|
||||
.An Hellmuth Michaelis Aq hm@hcshh.hcs.de
|
||||
with much help from
|
||||
.An Brian Dunford-Shore Aq brian@morpheus.wustl.edu
|
||||
.br
|
||||
.if n Joerg Wunsch
|
||||
.if t J\(:org Wunsch
|
||||
.Aq joerg_wunsch@uriah.sax.de
|
||||
.br
|
||||
This driver is based on several people's previous
|
||||
work, notably by
|
||||
.An William Jolitz'
|
||||
and
|
||||
.An Don Ahn's
|
||||
historic
|
||||
.Xr pccons 4
|
||||
implementation
|
||||
.br
|
||||
.Aq ljolitz@cardio.ucsf.edu
|
||||
.br
|
||||
.An Holger Veit Aq veit@first.gmd.de
|
||||
.Sh SEE ALSO
|
||||
.Xr intro 2 ,
|
||||
.Xr ioctl 2 ,
|
||||
.Xr atkbd 4 ,
|
||||
.Xr keyboard 4 ,
|
||||
.Xr screen 4 ,
|
||||
.Xr config 8 ,
|
||||
.Xr ispcvt 8
|
||||
.Sh BUGS
|
||||
Certainly existent. See the file
|
||||
.Pa BugList
|
||||
in the Documentation directory for an up-to-date list.
|
||||
|
||||
.Ss Tested Video Boards
|
||||
.Bd -literal
|
||||
Manufacturer Chipset Monitor
|
||||
|
||||
2theMax (?) ET4000 VGA Color
|
||||
Video7 Inc. Video 7 VGA Color
|
||||
Diamond Stealth VRAM S3 NEC 3FGx
|
||||
Trident TVGA 8800CS NEC 3D
|
||||
Data General C&T P82C604 VGA Color
|
||||
NoName Hercules W86855AF Mono
|
||||
Kyocera (Mainboard) WD90C11 Sony Color
|
||||
unknown ET3000 NEC 3D
|
||||
.Ed
|
||||
|
||||
.Ss Tested Keyboards
|
||||
.Bd -literal
|
||||
Manufacturer Type Layout
|
||||
|
||||
Cherry MF II US
|
||||
Cherry/Tandon MF II German
|
||||
Hewlett-Packard MF II US
|
||||
Hewlett-Packard MF II German
|
||||
Tatung AT German
|
||||
.Ed
|
||||
|
||||
There is absolutely NO support for the ancient PC-keyboards
|
||||
.Pq they had 83 keys .
|
||||
|
||||
There is only limited support for AT-keyboards
|
||||
.Bo
|
||||
they have 84 keys, and a separate numeric keypad,
|
||||
they don't have F11/F12 keys
|
||||
.Bc
|
||||
because the emulator needs F9 through F12 for control functions, and due to
|
||||
the current design of the keyboard driver there is no
|
||||
.Pq full
|
||||
support for national keyboards because
|
||||
of the lack of an ALtGr key.
|
||||
|
||||
MF-keyboards are fully supported, 101- and 102-key versions.
|
@ -1,160 +0,0 @@
|
||||
.\" Copyright (c) 1997, 1998
|
||||
.\" Bill Paul <wpaul@ctr.columbia.edu>. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by Bill Paul.
|
||||
.\" 4. Neither the name of the author nor the names of any co-contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD
|
||||
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||
.\" THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd November 7, 1998
|
||||
.Dt PN 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm pn
|
||||
.Nd
|
||||
Lite-On 82c168/82c169 PNIC fast ethernet device driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd "device pn0"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver provides support for PCI ethernet adapters and embedded
|
||||
controllers based on the Lite-On 82c168 and 82c169 fast ethernet
|
||||
controller chips. This includes the LinkSys LNE100TX, the
|
||||
Bay Networks Netgear FA310TX revision D1, the Matrox Networks
|
||||
FastNIC 10/100, the Kingston KNE110TX (EtherRx VP),
|
||||
and various other commodity fast ethernet cards.
|
||||
.Pp
|
||||
The Lite-On chips use bus master DMA and are designed to be
|
||||
DEC 'tulip' workalikes. Many vendors that formerly based their
|
||||
designs around the DEC 21x4x devices are now using the PNIC
|
||||
instead. The chips support both an internal transceiver
|
||||
and external transceivers via an MII bus. The Lite-On parts are
|
||||
advertised as being register compatible with the DEC 21x4x
|
||||
controllers, however there are some differences in the way the
|
||||
EEPROM and MII access is done. The PNIC controllers support both
|
||||
10 and 100Mbps speeds in either full or half duplex.
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media types:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It autoselect
|
||||
Enable autoselection of the media type and options.
|
||||
The user can manually override
|
||||
the autoselected mode by adding media options to the
|
||||
.Pa /etc/rc.conf
|
||||
fine.
|
||||
.It 10baseT/UTP
|
||||
Set 10Mbps operation. The
|
||||
.Ar mediaopt
|
||||
option can also be used to select either
|
||||
.Ar full-duplex
|
||||
or
|
||||
.Ar half-duplex modes.
|
||||
.It 100baseTX
|
||||
Set 100Mbps (fast ethernet) operation. The
|
||||
.Ar mediaopt
|
||||
option can also be used to select either
|
||||
.Ar full-duplex
|
||||
or
|
||||
.Ar half-duplex
|
||||
modes.
|
||||
.El
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media options:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It full-duplex
|
||||
Force full duplex operation
|
||||
.It half-duplex
|
||||
Force half duplex operation.
|
||||
.El
|
||||
.Pp
|
||||
Note that the 100baseTX media type is only available if supported
|
||||
by the adapter.
|
||||
For more information on configuring this device, see
|
||||
.Xr ifconfig 8 .
|
||||
.Sh DIAGNOSTICS
|
||||
.Bl -diag
|
||||
.It "pn%d: couldn't map memory"
|
||||
A fatal initialization error has occurred.
|
||||
.It "pn%d: couldn't map interrupt"
|
||||
A fatal initialization error has occurred.
|
||||
.It "pn%d: watchdog timeout"
|
||||
The device has stopped responding to the network, or there is a problem with
|
||||
the network connection (cable).
|
||||
.It "pn%d: no memory for rx list"
|
||||
The driver failed to allocate an mbuf for the receiver ring.
|
||||
.It "pn%d: no memory for tx list"
|
||||
The driver failed to allocate an mbuf for the transmitter ring when
|
||||
allocating a pad buffer or collapsing an mbuf chain into a cluster.
|
||||
.It "pn%d: chip is in D3 power state -- setting to D0"
|
||||
This message applies only to adapters which support power
|
||||
management. Some operating systems place the controller in low power
|
||||
mode when shutting down, and some PCI BIOSes fail to bring the chip
|
||||
out of this state before configuring it. The controller loses all of
|
||||
its PCI configuration in the D3 state, so if the BIOS does not set
|
||||
it back to full power mode in time, it won't be able to configure it
|
||||
correctly. The driver tries to detect this condition and bring
|
||||
the adapter back to the D0 (full power) state, but this may not be
|
||||
enough to return the driver to a fully operational condition. If
|
||||
you see this message at boot time and the driver fails to attach
|
||||
the device as a network interface, you will have to perform second
|
||||
warm boot to have the device properly configured.
|
||||
.Pp
|
||||
Note that this condition only occurs when warm booting from another
|
||||
operating system. If you power down your system prior to booting
|
||||
.Fx ,
|
||||
the card should be configured correctly.
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr arp 4 ,
|
||||
.Xr netintro 4 ,
|
||||
.Xr ifconfig 8
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
device driver first appeared in
|
||||
.Fx 3.0 .
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm
|
||||
driver was written by
|
||||
.An Bill Paul Aq wpaul@ctr.columbia.edu .
|
||||
.Sh BUGS
|
||||
The internal NWAY support on the 82c168 chip is horribly broken, which
|
||||
means that autoselection will not work, except maybe for half-duplex
|
||||
10Mbps links. In order to use other modes (e.g. 100Mbps) it will be
|
||||
necessary to
|
||||
use
|
||||
.Xr ifconfig 8
|
||||
to set the interface manually. Autoselection for 82c169 boards using
|
||||
MII transceivers should work correctly.
|
@ -1,771 +0,0 @@
|
||||
.\"
|
||||
.\" Copyright (c) 1997
|
||||
.\" Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer as
|
||||
.\" the first lines of this file unmodified.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||
.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||
.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd January 30, 1999
|
||||
.Dt PSM 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm psm
|
||||
.Nd
|
||||
PS/2 mouse style pointing device driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd "options" \&"PSM_HOOKAPM\&"
|
||||
.Cd "options" \&"PSM_RESETAFTERSUSPEND\&"
|
||||
.Cd "options" \&"KBD_RESETDELAY=N\&"
|
||||
.Cd "options" \&"KBD_MAXWAIT=N\&"
|
||||
.Cd "options" \&"PSM_DEBUG=N\&"
|
||||
.Cd "options" \&"KBDIO_DEBUG=N\&"
|
||||
.Cd "device psm0 at atkbdc? irq 12"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver provides support for the PS/2 mouse style pointing device.
|
||||
Currently there can be only one
|
||||
.Nm
|
||||
device node in the system.
|
||||
As the PS/2 mouse port is located
|
||||
at the auxiliary port of the keyboard controller,
|
||||
the keyboard controller driver,
|
||||
.Nm atkbdc ,
|
||||
must also be configured in the kernel.
|
||||
Note that there is currently no provision of changing the
|
||||
.Em irq
|
||||
number.
|
||||
.Pp
|
||||
Basic PS/2 style pointing device has two or three buttons.
|
||||
Some devices may have a roller or a wheel and/or additional buttons.
|
||||
.Ss Device Resolution
|
||||
The PS/2 style pointing device usually has several grades of resolution,
|
||||
that is, sensitivity of movement. They are typically 25, 50, 100 and 200
|
||||
pulse per inch. Some devices may have finer resolution.
|
||||
The current resolution can be changed at runtime. The
|
||||
.Nm
|
||||
driver allows the user to initially set the resolution
|
||||
via the driver flag
|
||||
.Pq see Sx DRIVER CONFIGURATION
|
||||
or change it later via the
|
||||
.Xr ioctl 2
|
||||
command
|
||||
.Dv MOUSE_SETMODE
|
||||
.Pq see Sx IOCTLS .
|
||||
.Ss Report Rate
|
||||
Frequency, or report rate, at which the device sends movement
|
||||
and button state reports to the host system is also configurable.
|
||||
The PS/2 style pointing device typically supports 10, 20, 40, 60, 80, 100
|
||||
and 200 reports per second.
|
||||
60 or 100 appears to be the default value for many devices.
|
||||
Note that when there is no movement and no button has changed its state,
|
||||
the device won't send anything to the host system.
|
||||
The report rate can be changed via an ioctl call.
|
||||
.Ss Operation Levels
|
||||
The
|
||||
.Nm
|
||||
driver has three levels of operation.
|
||||
The current operation level can be set via an ioctl call.
|
||||
.Pp
|
||||
At the level zero the basic support is provided; the device driver will report
|
||||
horizontal and vertical movement of the attached device
|
||||
and state of up to three buttons.
|
||||
The movement and status are encoded in a series of fixed-length data packets
|
||||
.Pq see Sx Data Packet Format .
|
||||
This is the default level of operation and the driver is initially
|
||||
at this level when opened by the user program.
|
||||
.Pp
|
||||
The operation level one, the `extended' level, supports a roller (or wheel),
|
||||
if any, and up to 11 buttons.
|
||||
The movement of the roller is reported as movement along the Z axis.
|
||||
8 byte data packets are sent to the user program at this level.
|
||||
.Pp
|
||||
At the operation level two, data from the pointing device is passed to the
|
||||
user program as is.
|
||||
Modern PS/2 type pointing devices often use proprietary data format.
|
||||
Therefore, the user program is expected to have
|
||||
intimate knowledge about the format from a particular device when operating
|
||||
the driver at this level.
|
||||
This level is called `native' level.
|
||||
.Ss Data Packet Format
|
||||
Data packets read from the
|
||||
.Nm
|
||||
driver are formatted differently at each operation level.
|
||||
.Pp
|
||||
A data packet from the PS/2 mouse style pointing device
|
||||
is three bytes long at the operation level zero:
|
||||
.Pp
|
||||
.Bl -tag -width Byte_1 -compact
|
||||
.It Byte 1
|
||||
.Bl -tag -width bit_7 -compact
|
||||
.It bit 7
|
||||
One indicates overflow in the vertical movement count.
|
||||
.It bit 6
|
||||
One indicates overflow in the horizontal movement count.
|
||||
.It bit 5
|
||||
Set if the vertical movement count is negative.
|
||||
.It bit 4
|
||||
Set if the horizontal movement count is negative.
|
||||
.It bit 3
|
||||
Always one.
|
||||
.\" The ALPS GlidePoint clears this bit when the user `taps' the surface of
|
||||
.\" the pad, otherwise the bit is set.
|
||||
.\" Most, if not all, other devices always set this bit.
|
||||
.It bit 2
|
||||
Middle button status; set if pressed. For devices without the middle
|
||||
button, this bit is always zero.
|
||||
.It bit 1
|
||||
Right button status; set if pressed.
|
||||
.It bit 0
|
||||
Left button status; set if pressed.
|
||||
.El
|
||||
.It Byte 2
|
||||
Horizontal movement count in two's compliment;
|
||||
-256 through 255.
|
||||
Note that the sign bit is in the first byte.
|
||||
.It Byte 3
|
||||
Vertical movement count in two's compliment;
|
||||
-256 through 255.
|
||||
Note that the sign bit is in the first byte.
|
||||
.El
|
||||
.Pp
|
||||
At the level one, a data packet is encoded
|
||||
in the standard format
|
||||
.Dv MOUSE_PROTO_SYSMOUSE
|
||||
as defined in
|
||||
.Xr mouse 4 .
|
||||
.Pp
|
||||
At the level two, native level, there is no standard on the size and format
|
||||
of the data packet.
|
||||
.Ss Acceleration
|
||||
The
|
||||
.Nm
|
||||
driver can somewhat `accelerate' the movement of the pointing device.
|
||||
The faster you move the device, the further the pointer
|
||||
travels on the screen.
|
||||
The driver has an internal variable which governs the effect of
|
||||
the acceleration. Its value can be modified via the driver flag
|
||||
or via an ioctl call.
|
||||
.Ss Device Number
|
||||
The minor device number of the
|
||||
.Nm
|
||||
is made up of:
|
||||
.Bd -literal -offset indent
|
||||
minor = (`unit' << 1) | `non-blocking'
|
||||
.Ed
|
||||
.Pp
|
||||
where `unit' is the device number (usually 0) and the `non-blocking' bit
|
||||
is set to indicate ``don't block waiting for mouse input,
|
||||
return immediately''.
|
||||
The `non-blocking' bit should be set for \fIXFree86\fP,
|
||||
therefore the minor device number usually used for \fIXFree86\fP is 1.
|
||||
See
|
||||
.Sx FILES
|
||||
for device node names.
|
||||
.Sh DRIVER CONFIGURATION
|
||||
.Ss Kernel Configuration Options
|
||||
There are following kernel configuration options to control the
|
||||
.Nm
|
||||
driver.
|
||||
They may be set in the kernel configuration file
|
||||
.Pq see Xr config 8 .
|
||||
.Bl -tag -width MOUSE
|
||||
.It Em PSM_HOOKAPM
|
||||
The built-in PS/2 pointing device of some laptop computers is somehow
|
||||
not operable immediately after the system `resumes' from
|
||||
the power saving mode,
|
||||
though it will eventually become available.
|
||||
There are reports that
|
||||
stimulating the device by performing I/O will help
|
||||
waking up the device quickly. This option will add a piece of code
|
||||
to the
|
||||
.Nm
|
||||
driver to hook
|
||||
the APM `resume' event and exercise some harmless I/O operations to the
|
||||
device.
|
||||
.It Em PSM_RESETAFTERSUSPEND
|
||||
This option adds more drastic action for the above problem.
|
||||
It will make the
|
||||
.Nm
|
||||
driver to reset the pointing device after the APM resume event.
|
||||
It has no effect unless the
|
||||
.Em PSM_HOOKAPM
|
||||
option is enabled as well.
|
||||
.It Em KBD_RESETDELAY=X, KBD_MAXWAIT=Y
|
||||
The
|
||||
.Nm
|
||||
driver will attempt to reset the pointing device during the boot process.
|
||||
It sometimes takes a long while before the device will respond after
|
||||
reset. These options control how long the driver should wait before
|
||||
it eventually gives up waiting. The driver will wait
|
||||
.Fa X
|
||||
*
|
||||
.Fa Y
|
||||
msecs at most. If the driver seems unable to detect your pointing
|
||||
device, you may want to increase these values. The default values are
|
||||
200 msec for
|
||||
.Fa X
|
||||
and 5
|
||||
for
|
||||
.Fa Y .
|
||||
.It Em PSM_DEBUG=N, KBDIO_DEBUG=N
|
||||
Sets the debug level to
|
||||
.Fa N .
|
||||
The default debug level is zero. See
|
||||
.Sx DIAGNOSTICS
|
||||
for debug logging.
|
||||
.El
|
||||
.Ss Driver Flags
|
||||
The
|
||||
.Nm
|
||||
driver accepts the following driver flags. Set them in the
|
||||
kernel configuration file or in the User Configuration Menu at
|
||||
the boot time
|
||||
.Pq see Xr boot 8 .
|
||||
.Pp
|
||||
.Bl -tag -width MOUSE
|
||||
.It bit 0..3 RESOLUTION
|
||||
This flag specifies the resolution of the pointing device.
|
||||
It must be zero through four. The greater the value
|
||||
is, the finer resolution the device will select.
|
||||
Actual resolution selected by this field varies according to the model
|
||||
of the device. Typical resolutions are:
|
||||
.Pp
|
||||
.Bl -tag -width 0_(medium_high)__ -compact
|
||||
.It Em 1 (low)
|
||||
25 pulse per inch (ppi)
|
||||
.It Em 2 (medium low)
|
||||
50 ppi
|
||||
.It Em 3 (medium high)
|
||||
100 ppi
|
||||
.It Em 4 (high)
|
||||
200 ppi
|
||||
.El
|
||||
.Pp
|
||||
Leaving this flag zero will selects the default resolution for the
|
||||
device (whatever it is).
|
||||
.It bit 4..7 ACCELERATION
|
||||
This flag controls the amount of acceleration effect.
|
||||
The smaller the value of this flag is, more sensitive the movement becomes.
|
||||
The minimum value allowed, thus the value for the most sensitive setting,
|
||||
is one. Setting this flag to zero will completely disables the
|
||||
acceleration effect.
|
||||
.It bit 8 NOCHECKSYNC
|
||||
The
|
||||
.Nm
|
||||
driver tries to detect the first byte of the data packet by checking
|
||||
the bit pattern of that byte. Although this method should work with most
|
||||
PS/2 pointing devices, it may interfere with some devices which are not
|
||||
so compatible with known devices.
|
||||
If you think your pointing device is not functioning as expected,
|
||||
and the kernel frequently prints the following message to the console,
|
||||
.Bd -literal -offset indent
|
||||
psmintr: out of sync (xxxx != yyyy).
|
||||
.Ed
|
||||
.Pp
|
||||
set this flag to disable synchronization check and see if it helps.
|
||||
.It bit 9 NOIDPROBE
|
||||
The
|
||||
.Nm
|
||||
driver will not try to identify the model of the pointing device and
|
||||
will not carry out model-specific initialization.
|
||||
The device should always act like a standard PS/2 mouse without such
|
||||
initialization.
|
||||
Extra features, such as wheels and additional buttons, won't be
|
||||
recognized by the
|
||||
.Nm
|
||||
driver.
|
||||
.It bit 10 NORESET
|
||||
When this flag is set, the
|
||||
.Nm
|
||||
driver won't reset the pointing device when initializing the device.
|
||||
If the FreeBSD kernel
|
||||
is started after another OS has run, the pointing device will inherit
|
||||
settings from the previous OS.
|
||||
However, because there is no way for the
|
||||
.Nm
|
||||
driver to know the settings, the device and the driver may not
|
||||
work correctly.
|
||||
The flag should never be necessary under normal circumstances.
|
||||
.It bit 11 FORCETAP
|
||||
Some pad devices report as if the fourth button is pressed
|
||||
when the user `taps' the surface of the device (see
|
||||
.Sx CAVEATS ) .
|
||||
This flag will make the
|
||||
.Nm
|
||||
driver assume that the device behaves this way.
|
||||
Without the flag, the driver will assume this behavior
|
||||
for ALPS GlidePoint models only.
|
||||
.It bit 12 IGNOREPORTERROR
|
||||
This flag makes
|
||||
.Nm
|
||||
driver ignore certain error conditions when probing the PS/2 mouse port.
|
||||
It should never be necessary under normal circumstances.
|
||||
.El
|
||||
.Sh IOCTLS
|
||||
There are a few
|
||||
.Xr ioctl 2
|
||||
commands for mouse drivers.
|
||||
These commands and related structures and constants are defined in
|
||||
.Ao Pa machine/mouse.h Ac .
|
||||
General description of the commands is given in
|
||||
.Xr mouse 4 .
|
||||
This section explains the features specific to the
|
||||
.Nm
|
||||
driver.
|
||||
.Pp
|
||||
.Bl -tag -width MOUSE -compact
|
||||
.It Dv MOUSE_GETLEVEL Ar int *level
|
||||
.It Dv MOUSE_SETLEVEL Ar int *level
|
||||
These commands manipulate the operation level of the
|
||||
.Nm
|
||||
driver.
|
||||
.Pp
|
||||
.It Dv MOUSE_GETHWINFO Ar mousehw_t *hw
|
||||
Returns the hardware information of the attached device in the following
|
||||
structure.
|
||||
.Bd -literal
|
||||
typedef struct mousehw {
|
||||
int buttons; /* number of buttons */
|
||||
int iftype; /* I/F type */
|
||||
int type; /* mouse/track ball/pad... */
|
||||
int model; /* I/F dependent model ID */
|
||||
int hwid; /* I/F dependent hardware ID */
|
||||
} mousehw_t;
|
||||
.Ed
|
||||
.Pp
|
||||
The
|
||||
.Dv buttons
|
||||
field holds the number of buttons on the device.
|
||||
The
|
||||
.Nm
|
||||
driver currently can detect the 3 button mouse from Logitech and report
|
||||
accordingly.
|
||||
The 3 button mouse from the other manufacturer may or may not be
|
||||
reported correctly. However, it will not affect the operation of
|
||||
the driver.
|
||||
.Pp
|
||||
The
|
||||
.Dv iftype
|
||||
is always
|
||||
.Dv MOUSE_IF_PS2 .
|
||||
.Pp
|
||||
The
|
||||
.Dv type
|
||||
tells the device type:
|
||||
.Dv MOUSE_MOUSE ,
|
||||
.Dv MOUSE_TRACKBALL ,
|
||||
.Dv MOUSE_STICK ,
|
||||
.Dv MOUSE_PAD ,
|
||||
or
|
||||
.Dv MOUSE_UNKNOWN .
|
||||
The user should not heavily rely on this field, as the
|
||||
driver may not always, in fact it is very rarely able to, identify
|
||||
the device type.
|
||||
.Pp
|
||||
The
|
||||
.Dv model
|
||||
is always
|
||||
.Dv MOUSE_MODEL_GENERIC
|
||||
at the operation level 0.
|
||||
It may be
|
||||
.Dv MOUSE_MODEL_GENERIC
|
||||
or one of
|
||||
.Dv MOUSE_MODEL_XXX
|
||||
constants at higher operation levels.
|
||||
Again the
|
||||
.Nm
|
||||
driver may or may not set an appropriate value in this field.
|
||||
.Pp
|
||||
The
|
||||
.Dv hwid
|
||||
is the ID value returned by the device.
|
||||
Known IDs include:
|
||||
.Pp
|
||||
.Bl -tag -width 0__ -compact
|
||||
.It Em 0
|
||||
Mouse (Microsoft, Logitech and many other manufacturers)
|
||||
.It Em 2
|
||||
Microsoft Ballpoint mouse
|
||||
.It Em 3
|
||||
Microsoft IntelliMouse
|
||||
.El
|
||||
.Pp
|
||||
.It Dv MOUSE_GETMODE Ar mousemode_t *mode
|
||||
The command gets the current operation parameters of the mouse
|
||||
driver.
|
||||
.Bd -literal
|
||||
typedef struct mousemode {
|
||||
int protocol; /* MOUSE_PROTO_XXX */
|
||||
int rate; /* report rate (per sec), -1 if unknown */
|
||||
int resolution; /* MOUSE_RES_XXX, -1 if unknown */
|
||||
int accelfactor; /* acceleration factor */
|
||||
int level; /* driver operation level */
|
||||
int packetsize; /* the length of the data packet */
|
||||
unsigned char syncmask[2]; /* sync. bits */
|
||||
} mousemode_t;
|
||||
.Ed
|
||||
.Pp
|
||||
The
|
||||
.Dv protocol
|
||||
is
|
||||
.Dv MOUSE_PROTO_PS2
|
||||
at the operation level zero and two.
|
||||
.Dv MOUSE_PROTO_SYSMOUSE
|
||||
at the operation level one.
|
||||
.Pp
|
||||
The
|
||||
.Dv rate
|
||||
is the status report rate (reports/sec) at which the device will send
|
||||
movement report to the host computer.
|
||||
Typical supported values are 10, 20, 40, 60, 80, 100 and 200.
|
||||
Some mice may accept other arbitrary values too.
|
||||
.Pp
|
||||
The
|
||||
.Dv resolution
|
||||
of the pointing device must be one of
|
||||
.Dv MOUSE_RES_XXX
|
||||
constants or a positive value. The greater the value
|
||||
is, the finer resolution the mouse will select.
|
||||
Actual resolution selected by the
|
||||
.Dv MOUSE_RES_XXX
|
||||
constant varies according to the model of mouse. Typical resolutions are:
|
||||
.Pp
|
||||
.Bl -tag -width MOUSE_RES_MEDIUMHIGH__ -compact
|
||||
.It Dv MOUSE_RES_LOW
|
||||
25 ppi
|
||||
.It Dv MOUSE_RES_MEDIUMLOW
|
||||
50 ppi
|
||||
.It Dv MOUSE_RES_MEDIUMHIGH
|
||||
100 ppi
|
||||
.It Dv MOUSE_RES_HIGH
|
||||
200 ppi
|
||||
.El
|
||||
.Pp
|
||||
The
|
||||
.Dv accelfactor
|
||||
field holds a value to control acceleration feature
|
||||
.Pq see Sx Acceleration .
|
||||
It must be zero or greater. If it is zero, acceleration is disabled.
|
||||
.Pp
|
||||
The
|
||||
.Dv packetsize
|
||||
field specifies the length of the data packet. It depends on the
|
||||
operation level and the model of the pointing device.
|
||||
.Pp
|
||||
.Bl -tag -width level_0__ -compact
|
||||
.It Em level 0
|
||||
3 bytes
|
||||
.It Em level 1
|
||||
8 bytes
|
||||
.It Em level 2
|
||||
Depends on the model of the device
|
||||
.El
|
||||
.Pp
|
||||
The array
|
||||
.Dv syncmask
|
||||
holds a bit mask and pattern to detect the first byte of the
|
||||
data packet.
|
||||
.Dv syncmask[0]
|
||||
is the bit mask to be ANDed with a byte. If the result is equal to
|
||||
.Dv syncmask[1] ,
|
||||
the byte is likely to be the first byte of the data packet.
|
||||
Note that this detection method is not 100% reliable,
|
||||
thus, should be taken only as an advisory measure.
|
||||
.Pp
|
||||
.It Dv MOUSE_SETMODE Ar mousemode_t *mode
|
||||
The command changes the current operation parameters of the mouse driver
|
||||
as specified in
|
||||
.Ar mode .
|
||||
Only
|
||||
.Dv rate ,
|
||||
.Dv resolution ,
|
||||
.Dv level
|
||||
and
|
||||
.Dv accelfactor
|
||||
may be modifiable. Setting values in the other field does not generate
|
||||
error and has no effect.
|
||||
.Pp
|
||||
If you do not want to change the current setting of a field, put -1
|
||||
there.
|
||||
You may also put zero in
|
||||
.Dv resolution
|
||||
and
|
||||
.Dv rate ,
|
||||
and the default value for the fields will be selected.
|
||||
.\" .Pp
|
||||
.\" .It Dv MOUSE_GETVARS Ar mousevar_t *vars
|
||||
.\" .It Dv MOUSE_SETVARS Ar mousevar_t *vars
|
||||
.\" These commands are not supported by the
|
||||
.\" .Nm
|
||||
.\" driver.
|
||||
.Pp
|
||||
.It Dv MOUSE_READDATA Ar mousedata_t *data
|
||||
.\" The command reads the raw data from the device.
|
||||
.\" .Bd -literal
|
||||
.\" typedef struct mousedata {
|
||||
.\" int len; /* # of data in the buffer */
|
||||
.\" int buf[16]; /* data buffer */
|
||||
.\" } mousedata_t;
|
||||
.\" .Ed
|
||||
.\" .Pp
|
||||
.\" Upon returning to the user program, the driver will place the number
|
||||
.\" of valid data bytes in the buffer in the
|
||||
.\" .Dv len
|
||||
.\" field.
|
||||
.\" .Pp
|
||||
.It Dv MOUSE_READSTATE Ar mousedata_t *state
|
||||
.\" The command reads the hardware settings from the device.
|
||||
.\" Upon returning to the user program, the driver will place the number
|
||||
.\" of valid data bytes in the buffer in the
|
||||
.\" .Dv len
|
||||
.\" field. It is usually 3 bytes.
|
||||
.\" The buffer is formatted as follows:
|
||||
.\" .Pp
|
||||
.\" .Bl -tag -width Byte_1 -compact
|
||||
.\" .It Byte 1
|
||||
.\" .Bl -tag -width bit_6 -compact
|
||||
.\" .It bit 7
|
||||
.\" Reserved.
|
||||
.\" .It bit 6
|
||||
.\" 0 - stream mode, 1 - remote mode.
|
||||
.\" In the stream mode, the pointing device sends the device status
|
||||
.\" whenever its state changes. In the remote mode, the host computer
|
||||
.\" must request the status to be sent.
|
||||
.\" The
|
||||
.\" .Nm
|
||||
.\" driver puts the device in the stream mode.
|
||||
.\" .It bit 5
|
||||
.\" Set if the pointing device is currently enabled. Otherwise zero.
|
||||
.\" .It bit 4
|
||||
.\" 0 - 1:1 scaling, 1 - 2:1 scaling.
|
||||
.\" 1:1 scaling is the default.
|
||||
.\" .It bit 3
|
||||
.\" Reserved.
|
||||
.\" .It bit 2
|
||||
.\" Left button status; set if pressed.
|
||||
.\" .It bit 1
|
||||
.\" Middle button status; set if pressed.
|
||||
.\" .It bit 0
|
||||
.\" Right button status; set if pressed.
|
||||
.\" .El
|
||||
.\" .It Byte 2
|
||||
.\" .Bl -tag -width bit_6_0 -compact
|
||||
.\" .It bit 7
|
||||
.\" Reserved.
|
||||
.\" .It bit 6..0
|
||||
.\" Resolution code: zero through three. Actual resolution for
|
||||
.\" the resolution code varies from one device to another.
|
||||
.\" .El
|
||||
.\" .It Byte 3
|
||||
.\" The status report rate (reports/sec) at which the device will send
|
||||
.\" movement report to the host computer.
|
||||
.\" .El
|
||||
These commands are not currently supported by the
|
||||
.Nm
|
||||
driver.
|
||||
.Pp
|
||||
.It Dv MOUSE_GETSTATUS Ar mousestatus_t *status
|
||||
The command returns the current state of buttons and
|
||||
movement counts as described in
|
||||
.Xr mouse 4 .
|
||||
.El
|
||||
.Sh FILES
|
||||
.Bl -tag -width /dev/npsm0 -compact
|
||||
.It Pa /dev/psm0
|
||||
`non-blocking' device node
|
||||
.It Pa /dev/bpsm0
|
||||
`blocking' device node under
|
||||
.Em devfs .
|
||||
.El
|
||||
.Sh EXAMPLE
|
||||
.Dl "options" \&"PSM_HOOKAPM\&"
|
||||
.Dl "device psm0 at atkbdc? irq 12"
|
||||
.Pp
|
||||
Add the
|
||||
.Nm
|
||||
driver to the kernel with the optional code to stimulate the pointing device
|
||||
after the `resume' event.
|
||||
.Pp
|
||||
.Dl "device psm0 at atkbdc? flags 0x024 irq 12"
|
||||
.Pp
|
||||
Set the device resolution high (4) and the acceleration factor to 2.
|
||||
.Sh DIAGNOSTICS
|
||||
.Pp
|
||||
At debug level 0, little information is logged except for the following
|
||||
line during boot process:
|
||||
.Bd -literal -offset indent
|
||||
psm0: device ID X
|
||||
.Ed
|
||||
.Pp
|
||||
where
|
||||
.Fa X
|
||||
the device ID code returned by the found pointing device.
|
||||
See
|
||||
.Dv MOUSE_GETINFO
|
||||
for known IDs.
|
||||
.Pp
|
||||
At debug level 1 more information will be logged
|
||||
while the driver probes the auxiliary port (mouse port).
|
||||
Messages are logged with the LOG_KERN facility at the LOG_DEBUG level
|
||||
.Pq see Xr syslogd 8 .
|
||||
.Bd -literal -offset indent
|
||||
psm0: current command byte:xxxx
|
||||
kbdio: TEST_AUX_PORT status:0000
|
||||
kbdio: RESET_AUX return code:00fa
|
||||
kbdio: RESET_AUX status:00aa
|
||||
kbdio: RESET_AUX ID:0000
|
||||
[...]
|
||||
psm: status 00 02 64
|
||||
psm0 irq 12 on isa
|
||||
psm0: model AAAA, device ID X, N buttons
|
||||
psm0: config:00000www, flags:0000uuuu, packet size:M
|
||||
psm0: syncmask:xx, syncbits:yy
|
||||
.Ed
|
||||
.Pp
|
||||
The first line shows the command byte value of the keyboard
|
||||
controller just before the auxiliary port is probed.
|
||||
It usually is 4D, 45, 47 or 65, depending on how the motherboard BIOS
|
||||
initialized the keyboard controller upon power-up.
|
||||
.Pp
|
||||
The second line shows the result of the keyboard controller's
|
||||
test on the auxiliary port interface, with zero indicating
|
||||
no error; note that some controllers report no error even if
|
||||
the port does not exist in the system, however.
|
||||
.Pp
|
||||
The third through fifth lines show the reset status of the pointing device.
|
||||
The functioning device should return the sequence of FA AA <ID>.
|
||||
The ID code is described above.
|
||||
.Pp
|
||||
The seventh line shows the current hardware settings.
|
||||
.\" See
|
||||
.\" .Dv MOUSE_READSTATE
|
||||
.\" for definitions.
|
||||
These bytes are formatted as follows:
|
||||
.Pp
|
||||
.Bl -tag -width Byte_1 -compact
|
||||
.It Byte 1
|
||||
.Bl -tag -width bit_6 -compact
|
||||
.It bit 7
|
||||
Reserved.
|
||||
.It bit 6
|
||||
0 - stream mode, 1 - remote mode.
|
||||
In the stream mode, the pointing device sends the device status
|
||||
whenever its state changes. In the remote mode, the host computer
|
||||
must request the status to be sent.
|
||||
The
|
||||
.Nm
|
||||
driver puts the device in the stream mode.
|
||||
.It bit 5
|
||||
Set if the pointing device is currently enabled. Otherwise zero.
|
||||
.It bit 4
|
||||
0 - 1:1 scaling, 1 - 2:1 scaling.
|
||||
1:1 scaling is the default.
|
||||
.It bit 3
|
||||
Reserved.
|
||||
.It bit 2
|
||||
Left button status; set if pressed.
|
||||
.It bit 1
|
||||
Middle button status; set if pressed.
|
||||
.It bit 0
|
||||
Right button status; set if pressed.
|
||||
.El
|
||||
.It Byte 2
|
||||
.Bl -tag -width bit_6_0 -compact
|
||||
.It bit 7
|
||||
Reserved.
|
||||
.It bit 6..0
|
||||
Resolution code: zero through three. Actual resolution for
|
||||
the resolution code varies from one device to another.
|
||||
.El
|
||||
.It Byte 3
|
||||
The status report rate (reports/sec) at which the device will send
|
||||
movement report to the host computer.
|
||||
.El
|
||||
.Pp
|
||||
Note that the pointing device will not be enabled until the
|
||||
.Nm
|
||||
driver is opened by the user program.
|
||||
.Pp
|
||||
The rest of the lines show the device ID code, the number of detected
|
||||
buttons and internal variables.
|
||||
.Pp
|
||||
At debug level 2, much more detailed information is logged.
|
||||
.Sh CAVEATS
|
||||
Many pad devices behave as if the first (left) button were pressed if
|
||||
the user `taps' the surface of the pad.
|
||||
In contrast, some pad products, e.g. some verions of ALPS GlidePoint
|
||||
and Interlink VersaPad, treat the tapping action
|
||||
as fourth button events.
|
||||
.Pp
|
||||
It is reported that Interlink VersaPad rquires both
|
||||
.Em PSM_HOOKAPM
|
||||
and
|
||||
.Em PSM_RESETAFTERSUSPEND
|
||||
options in order to recover from suspended state.
|
||||
Add these options to your kernel configuration file if the device
|
||||
does not seem to work properly after the system is resumed.
|
||||
.Pp
|
||||
Some PS/2 mouse models from MouseSystems require to be put in the
|
||||
high resolution mode to work properly. Use the driver flag to
|
||||
set resolution.
|
||||
.Pp
|
||||
There is not a guaranteed way to re-synchronize with the first byte
|
||||
of the packet once we are out of synchronization with the data
|
||||
stream. However, if you are using the \fIXFree86\fP server and experiencing
|
||||
the problem, you may be able to make the X server synchronize with the mouse
|
||||
by switching away to a virtual terminal and getting back to the X server,
|
||||
unless the X server is accessing the mouse via
|
||||
.Xr moused 8 .
|
||||
Clicking any button without moving the mouse may also work.
|
||||
.Sh BUGS
|
||||
The ioctl command
|
||||
.Dv MOUSEIOCREAD
|
||||
has been removed. It was never functional anyway.
|
||||
.Sh SEE ALSO
|
||||
.Xr ioctl 2 ,
|
||||
.Xr syslog 3 ,
|
||||
.Xr atkbdc 4 ,
|
||||
.Xr mouse 4 ,
|
||||
.Xr mse 4 ,
|
||||
.Xr sysmouse 4 ,
|
||||
.Xr moused 8 ,
|
||||
.Xr syslogd 8
|
||||
.\".Sh HISTORY
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm
|
||||
driver is based on the work done by quite a number of people, including
|
||||
.An Eric Forsberg ,
|
||||
.An Sandi Donno ,
|
||||
.An Rick Macklem ,
|
||||
.An Andrew Herbert ,
|
||||
.An Charles Hannum ,
|
||||
.An Shoji Yuen
|
||||
and
|
||||
.An Kazutaka Yokota
|
||||
to name the few.
|
||||
.Pp
|
||||
This manual page was written by
|
||||
.An Kazutaka Yokota Aq yokota@FreeBSD.org .
|
@ -1,192 +0,0 @@
|
||||
.\" Copyright (c) 1997, 1998
|
||||
.\" Bill Paul <wpaul@ctr.columbia.edu>. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by Bill Paul.
|
||||
.\" 4. Neither the name of the author nor the names of any co-contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD
|
||||
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||
.\" THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd November 4, 1998
|
||||
.Dt RL 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm rl
|
||||
.Nd
|
||||
RealTek 8129/8139 fast ethernet device driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd "device rl0"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver provides support for PCI ethernet adapters and embedded
|
||||
controllers based on the RealTek 8129 and 8139 fast ethernet controller
|
||||
chips. This includes the Allied Telesyn AT2550, Genius GF100TXR,
|
||||
NDC Communications NE100TX-E, OvisLink LEF-8129TX, OvisLink LEF-8139TX,
|
||||
Netronix Inc. EA-1210 NetEther 10/100, KTX-9130TX 10/100 Fast Ethernet,
|
||||
Encore ENL832-TX 10/100 M PCI, Longshine LCS-8038TX-R, the
|
||||
SMC EZ Card 10/100 PCI 1211-TX, and various other cheap adapters.
|
||||
It also supports the Accton EN1207D which has a
|
||||
chip labeled MPX5030 (or MPX5038) which appears to be a RealTek workalike.
|
||||
.Pp
|
||||
The RealTek controllers use bus master DMA but do not use a
|
||||
descriptor-based data transfer mechanism. The receiver uses a
|
||||
single fixed size ring buffer from which packets must be copied
|
||||
into mbufs. For transmission, there are only four outbound packet
|
||||
address registers which require all outgoing packets to be stored
|
||||
as contiguous buffers. Furthermore, outbound packet buffers must
|
||||
be longword aligned or else transmission will fail.
|
||||
.Pp
|
||||
The 8129 differs from the 8139 in that the 8139 has an internal
|
||||
PHY which is controlled through special direct access registers
|
||||
whereas the 8129 uses an external PHY via an MII bus. The 8139
|
||||
supports both 10 and 100Mbps speeds in either full or half duplex.
|
||||
The 8129 can support the same speeds and modes given an appropriate
|
||||
PHY chip.
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media types:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It autoselect
|
||||
Enable autoselection of the media type and options. This is only
|
||||
supported if the PHY chip attached to the RealTek controller
|
||||
supports NWAY autonegotiation. The user can manually override
|
||||
the autoselected mode by adding media options to the
|
||||
.Pa /etc/rc.conf
|
||||
file.
|
||||
.It 10baseT/UTP
|
||||
Set 10Mbps operation. The
|
||||
.Ar mediaopt
|
||||
option can also be used to select either
|
||||
.Ar full-duplex
|
||||
or
|
||||
.Ar half-duplex modes.
|
||||
.It 100baseTX
|
||||
Set 100Mbps (fast ethernet) operation. The
|
||||
.Ar mediaopt
|
||||
option can also be used to select either
|
||||
.Ar full-duplex
|
||||
or
|
||||
.Ar half-duplex
|
||||
modes.
|
||||
.El
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media options:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It full-duplex
|
||||
Force full duplex operation
|
||||
.It half-duplex
|
||||
Force half duplex operation.
|
||||
.El
|
||||
.Pp
|
||||
Note that the 100baseTX media type is only available if supported
|
||||
by the adapter.
|
||||
For more information on configuring this device, see
|
||||
.Xr ifconfig 8 .
|
||||
.Sh DIAGNOSTICS
|
||||
.Bl -diag
|
||||
.It "rl%d: couldn't map memory"
|
||||
A fatal initialization error has occurred.
|
||||
.It "rl%d: couldn't map interrupt"
|
||||
A fatal initialization error has occurred.
|
||||
.It "rl%d: watchdog timeout"
|
||||
The device has stopped responding to the network, or there is a problem with
|
||||
the network connection (cable).
|
||||
.It "rl%d: no memory for rx list"
|
||||
The driver failed to allocate an mbuf for the receiver ring.
|
||||
.It "rl%d: no memory for tx list"
|
||||
The driver failed to allocate an mbuf for the transmitter ring when
|
||||
allocating a pad buffer or collapsing an mbuf chain into a cluster.
|
||||
.It "rl%d: chip is in D3 power state -- setting to D0"
|
||||
This message applies only to adapters which support power
|
||||
management. Some operating systems place the controller in low power
|
||||
mode when shutting down, and some PCI BIOSes fail to bring the chip
|
||||
out of this state before configuring it. The controller loses all of
|
||||
its PCI configuration in the D3 state, so if the BIOS does not set
|
||||
it back to full power mode in time, it won't be able to configure it
|
||||
correctly. The driver tries to detect this condition and bring
|
||||
the adapter back to the D0 (full power) state, but this may not be
|
||||
enough to return the driver to a fully operational condition. If
|
||||
you see this message at boot time and the driver fails to attach
|
||||
the device as a network interface, you will have to perform second
|
||||
warm boot to have the device properly configured.
|
||||
.Pp
|
||||
Note that this condition only occurs when warm booting from another
|
||||
operating system. If you power down your system prior to booting
|
||||
.Fx ,
|
||||
the card should be configured correctly.
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr arp 4 ,
|
||||
.Xr netintro 4 ,
|
||||
.Xr ifconfig 8
|
||||
.Rs
|
||||
.%B The RealTek 8129 and 8139 datasheets
|
||||
.%O ftp.realtek.com.tw:/lancard/data sheet
|
||||
.Re
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
device driver first appeared in
|
||||
.Fx 3.0 .
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm
|
||||
driver was written by
|
||||
.An Bill Paul Aq wpaul@ctr.columbia.edu .
|
||||
.Sh BUGS
|
||||
Since outbound packets must be longword aligned, the transmit
|
||||
routine has to copy an unaligned packet into an mbuf cluster buffer
|
||||
before transmission. The driver abuses the fact that the cluster buffer
|
||||
pool is allocated at system startup time in a contiguous region starting
|
||||
at a page boundary. Since cluster buffers are 2048 bytes, they are
|
||||
longword aligned by definition. The driver probably should not be
|
||||
depending on this characteristic.
|
||||
.Pp
|
||||
The RealTek data sheets are of especially poor quality: the grammar
|
||||
and spelling are awful and there is a lot of information missing,
|
||||
particularly concerning the receiver operation. One particularly
|
||||
important fact that the data sheets fail to mention relates to the
|
||||
way in which the chip fills in the receive buffer. When an interrupt
|
||||
is posted to signal that a frame has been received, it is possible that
|
||||
another frame might be in the process of being copied into the receive
|
||||
buffer while the driver is busy handling the first one. If the driver
|
||||
manages to finish processing the first frame before the chip is done
|
||||
DMAing the rest of the next frame, the driver may attempt to process
|
||||
the next frame in the buffer before the chip has had a chance to finish
|
||||
DMAing all of it.
|
||||
.Pp
|
||||
The driver can check for an incomplete frame by inspecting the frame
|
||||
length in the header preceeding the actual packet data: an incomplete
|
||||
frame will have the magic length of 0xFFF0. When the driver encounters
|
||||
this value, it knows that it has finished processing all currently
|
||||
available packets. Neither this magic value nor its significance are
|
||||
documented anywhere in the RealTek data sheets.
|
@ -1,166 +0,0 @@
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd January 8, 1995
|
||||
.Dt SCREEN 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm screen
|
||||
.Nd pc display interface
|
||||
.Sh DESCRIPTION
|
||||
|
||||
Access to the
|
||||
.Ar virtual consoles
|
||||
are obtained through the device files
|
||||
ttyv0 - ttyvb in /dev.
|
||||
Each of these files correspond to a separate
|
||||
virtual console.
|
||||
All virtual console devices can be open at once, but only one is
|
||||
active at a time. The active virtual console "owns" the keyboard and
|
||||
display screen.
|
||||
.Pp
|
||||
Output to a virtual console that not currently is on the display is
|
||||
saved in a buffer that holds a "screenfull" (normally 25) lines.
|
||||
Any output written to
|
||||
.Ar /dev/console
|
||||
(the original console device) is echoed to /dev/ttyv0.
|
||||
.Pp
|
||||
To switch between the virtual consoles one uses the sequence
|
||||
.Ar ALT+Fn
|
||||
, which means hold down ALT and press one of the function keys. The
|
||||
virtual console with the same number as the function key is then
|
||||
selected as the current virtual console, and given exclusive use of
|
||||
the keyboard and display. This switch sequence can be changed via
|
||||
the keyboard mapping ioctl call (see keyboard.4)
|
||||
.Pp
|
||||
|
||||
The console allows entering values that are not physically
|
||||
present on the keyboard via a special keysequence.
|
||||
To use this facility press and hold down ALT,
|
||||
then enter a decimal number from 0-255 via the numerical keypad, then
|
||||
release ALT. The entered value is then used as the ASCII value for one
|
||||
character. This way it is possible to enter any ASCII value.
|
||||
The console driver also includes a history function. It is activated by
|
||||
pressing the scroll-lock key. This holds the display, and enables the cursor
|
||||
arrows for scrolling up and down through the last scrolled out lines.
|
||||
|
||||
The console understands a subset of the ANSI x3.64 character
|
||||
sequences. For compatibility with the old pccons, the PC3 character
|
||||
sequences is also supported.
|
||||
.Pp
|
||||
.Bd -literal
|
||||
ANSI Seq Function Termcap entry
|
||||
======= ======= ===================================== ==============
|
||||
|
||||
-- E7 Save cursor position sc
|
||||
|
||||
-- E8 Restore saved cursor position rc
|
||||
|
||||
CUU E[nA move cursor up n lines up/UP (ku)
|
||||
|
||||
CUD E[nB move cursor down n lines do/DO (kd)
|
||||
|
||||
CUF E[nC move cursor right n characters nd/RI (kr)
|
||||
|
||||
CUB E[nD move cursor left n characters --/LE (kl)
|
||||
|
||||
HPA E[n` move cursor to character position n ch
|
||||
|
||||
HPR E[na move cursor right n characters --
|
||||
|
||||
VPA E[nd move cursor to line n cv
|
||||
|
||||
VPR E[ne move cursor down n lines --
|
||||
|
||||
CPL E[nF move cursor to start of line, -- (@7)
|
||||
n lines up
|
||||
|
||||
CNL E[nE move cursor to start of line, nw
|
||||
n lines down
|
||||
|
||||
CUP E[y;xH Move cursor to x, y cm
|
||||
|
||||
HVP E[y;xf Move cursor to x, y --
|
||||
|
||||
CBT E[nZ Move cursor back n tab stops bt (kB)
|
||||
|
||||
IL E[nL Insert n blank lines al/AL
|
||||
|
||||
ICH E[n@ Insert n blank characters ic/IC
|
||||
|
||||
DL E[nM Delete n lines dl/DL
|
||||
|
||||
DCH E[nP Delete n characters dc/DC
|
||||
|
||||
ED E[nJ Erase part or all of display: cd
|
||||
n=0 from cursor to end of display,
|
||||
n=1 from begin of display to cursor,
|
||||
n=2 entire display.
|
||||
|
||||
EL E[nK Erase part or all of line: ce
|
||||
n=0 from cursor to end of line,
|
||||
n=1 from begin of line to cursor,
|
||||
n=2 entire line.
|
||||
|
||||
ECH E[nX Erase n characters ec
|
||||
|
||||
SU E[nS Scroll display n lines up (forward) sf/SF
|
||||
|
||||
SD E[nT Scroll display n lines down (reverse) sr/SR
|
||||
|
||||
|
||||
SGR E[nm Set character attributes: --
|
||||
n= 0 normal attribute (all off)
|
||||
n= 1 bold (highlight)
|
||||
n= 4 underscore (if supported by HW)
|
||||
n= 5 blink (if supported by HW)
|
||||
n= 7 reverse
|
||||
n=3X set foreground color (see table)
|
||||
n=4X set background color (see table)
|
||||
|
||||
X=0 black X=1 red
|
||||
X=2 green X=3 brown
|
||||
X=4 blue X=5 magenta
|
||||
X=6 cyan X=7 white
|
||||
|
||||
-- E[s Save cursor position sc
|
||||
|
||||
-- E[u Restore saved cursor position rc
|
||||
|
||||
-- E[=p;dB Set bell pitch (p) and duration (d), --
|
||||
picth is in units of 840 nS,
|
||||
duration is units of 0,1 S.
|
||||
|
||||
-- E[=tC Set cursor type, 1 selects a blinking --
|
||||
cursor, 0 a steady cursor.
|
||||
|
||||
-- E[=nA Set the border color to color n
|
||||
(see table) (if supported by HW)
|
||||
|
||||
-- E[=nF set normal foreground color to n --
|
||||
(see table)
|
||||
|
||||
-- E[=nG set normal background color to n --
|
||||
(see table)
|
||||
|
||||
-- E[=nH set reverse foreground color to n --
|
||||
(see table)
|
||||
|
||||
-- E[=nI set reverse background color to n --
|
||||
(see table)
|
||||
|
||||
n= 0 black n= 8 grey
|
||||
n= 1 blue n= 9 light blue
|
||||
n= 2 green n=10 light green
|
||||
n= 3 cyan n=11 light cyan
|
||||
n= 4 red n=12 light red
|
||||
n= 5 magenta n=13 light magenta
|
||||
n= 6 brown n=14 yellow
|
||||
n= 7 white n=15 light white
|
||||
|
||||
note: the first E in the sequences stands for ESC (0x1b)
|
||||
|
||||
.Ed
|
||||
.Pp
|
||||
.Sh AUTHORS
|
||||
.An Søren Schmidt Aq sos@FreeBSD.org
|
@ -1,161 +0,0 @@
|
||||
.\" Copyright (c) 1997, 1998, 1999
|
||||
.\" Bill Paul <wpaul@ctr.columbia.edu>. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by Bill Paul.
|
||||
.\" 4. Neither the name of the author nor the names of any co-contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD
|
||||
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||
.\" THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd July 22, 1999
|
||||
.Dt SF 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm sf
|
||||
.Nd
|
||||
Adaptec AIC-6915 "Starfire" PCI fast ethernet adapter driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd "device sf0"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver provides support for Adaptec Duralink fast ethernet adapters
|
||||
based on the Adaptec AIC-6915 "Starfire" chipset. This includes the
|
||||
following:
|
||||
.Bl -bullet -offset indent
|
||||
.It
|
||||
ANA-62011 64-bit single port 10/100baseTX adapter
|
||||
.It
|
||||
ANA-62022 64-bit dual port 10/100baseTX adapter
|
||||
.It
|
||||
ANA-62044 64-bit quad port 10/100baseTX adapter
|
||||
.It
|
||||
ANA-69011 32-bit single port 10/100baseTX adapter
|
||||
.It
|
||||
ANA-62020 64-bit single port 100baseFX adapter
|
||||
.El
|
||||
.Pp
|
||||
The AIC-6915 is a bus master controller with an MII interface. It
|
||||
supports high and low priority transmit and receive queues, TCP/IP
|
||||
checksum offload, multiple DMA descriptor formats and both polling
|
||||
and producer/consumer DMA models. The AIC-6915 receive filtering
|
||||
options include a 16 entry perfect filter, a 512-bit hash table
|
||||
for multicast addresses, a 512-bit hash table for priority address
|
||||
matching and VLAN filtering. An external MII-compliant transceiver
|
||||
is required for media interfacing.
|
||||
.Pp
|
||||
Multiport adapters consist of several AIC-6915 controllers connected
|
||||
via a PCI to PCI bridge. Each controller is treated as a separate
|
||||
interface by the
|
||||
.Nm
|
||||
driver.
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media types:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It autoselect
|
||||
Enable autoselection of the media type and options.
|
||||
The user can manually override
|
||||
the autoselected mode by adding media options to the
|
||||
.Pa /etc/rc.conf
|
||||
file.
|
||||
.It 10baseT/UTP
|
||||
Set 10Mbps operation. The
|
||||
.Ar mediaopt
|
||||
option can also be used to select either
|
||||
.Ar full-duplex
|
||||
or
|
||||
.Ar half-duplex
|
||||
modes.
|
||||
.It 100baseTX
|
||||
Set 100Mbps (fast ethernet) operation. The
|
||||
.Ar mediaopt
|
||||
option can also be used to select either
|
||||
.Ar full-duplex
|
||||
or
|
||||
.Ar half-duplex
|
||||
modes.
|
||||
.El
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media options:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It full-duplex
|
||||
Force full duplex operation
|
||||
.It half-duplex
|
||||
Force half duplex operation.
|
||||
.El
|
||||
.Pp
|
||||
For more information on configuring this device, see
|
||||
.Xr ifconfig 8 .
|
||||
.Sh DIAGNOSTICS
|
||||
.Bl -diag
|
||||
.It "sf%d: couldn't map memory"
|
||||
A fatal initialization error has occurred. This may
|
||||
happen if the PCI BIOS not configured the device, which may be because
|
||||
the BIOS has been configured for a "Plug and Play" operating system.
|
||||
The "Plug and Play OS" setting int he BIOS should be set to "no" or
|
||||
"off" in order for PCI devices to work properly with FreeBSD.
|
||||
.It "sf%d: couldn't map ports"
|
||||
A fatal initialization error has occurred.
|
||||
happen if the PCI BIOS not configured the device, which may be because
|
||||
the BIOS has been configured for a "Plug and Play" operating system.
|
||||
The "Plug and Play OS" setting int he BIOS should be set to "no" or
|
||||
"off" in order for PCI devices to work properly with FreeBSD.
|
||||
.It "sf%d: couldn't map interrupt"
|
||||
A fatal initialization error has occurred.
|
||||
.It "sf%d: no memory for softc struct!"
|
||||
The driver failed to allocate memory for per-device instance information
|
||||
during initialization.
|
||||
.It "sf%d: failed to enable I/O ports/memory mapping!"
|
||||
The driver failed to initialize PCI I/O port or shared memory access.
|
||||
This might happen if the card is not in a bus-master slot.
|
||||
.It "sf%d: watchdog timeout"
|
||||
The device has stopped responding to the network, or there is a problem with
|
||||
the network connection (cable).
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr arp 4 ,
|
||||
.Xr netintro 4 ,
|
||||
.Xr ifconfig 8 ,
|
||||
.Rs
|
||||
.%T The Adaptec AIC-6915 Programmer's Manual
|
||||
.%O ftp://ftp.adaptec.com/pub/BBS/userguides/aic6915_pg.pdf
|
||||
.Re
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
device driver first appeared in
|
||||
.Fx 3.0 .
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm
|
||||
driver was written by
|
||||
.An Bill Paul Aq wpaul@ctr.columbia.edu .
|
@ -1,163 +0,0 @@
|
||||
.\" $FreeBSD$
|
||||
.Dd September 16, 1995
|
||||
.Os FreeBSD
|
||||
.Dt SI 4 i386
|
||||
.Sh NAME
|
||||
.Nm si
|
||||
.Nd Driver for Specialix International SI/XIO or SX intelligent serial card.
|
||||
.Sh SYNOPSIS
|
||||
.Cd "device si0"
|
||||
.Cd "device si0 at isa? irq 12 iomem 0xd0000"
|
||||
.Sh DESCRIPTION
|
||||
The Specialix SI/XIO and SX hardware makes up an 8 to 32 port RS-232 serial
|
||||
multiplexor.
|
||||
.Pp
|
||||
The first instance of the device lines above is for EISA and PCI host cards,
|
||||
the second is for ISA host cards.
|
||||
.Pp
|
||||
The system uses two components: A "Host adapter", which is plugged into
|
||||
an ISA, EISA or PCI slot and provides intelligence and buffering/processing
|
||||
capabilities, as well as an external bus in the form of a 37 pin cable.
|
||||
.Pp
|
||||
On this cable, "modules" are connected. The "SI" module comes in a 4 and 8
|
||||
port version. The "XIO" and "SX" modules come only in
|
||||
8 port versions.
|
||||
.Pp
|
||||
The host adapter polls and transfers data between the modules and the rest
|
||||
of the machine. The Host adapter provides a 256 byte transmit and 256 byte
|
||||
receive FIFO for each of the 32 ports that it can maintain.
|
||||
.Pp
|
||||
The XIO modules can operate each of their 8 ports at 115,200 baud.
|
||||
The SI version can run at 57,600 baud. The SX modules can operate each of their
|
||||
8 ports at up to 921,600 baud.
|
||||
.Pp
|
||||
SX modules are only supported when connected to an SX host card. SI or
|
||||
XIO modules are supported on any host card.
|
||||
.Pp
|
||||
The host adapter uses a shared memory block in the traditional ISA bus
|
||||
"hole" between 0xA0000 and 0xEFFFF. The adapter can be configured outside
|
||||
range, but requires the memory range to be explicitly non-cached. The
|
||||
driver does not yet support this mode of operation.
|
||||
.Pp
|
||||
SX ISA Host cards have an 8/16 bit mode switch or jumper on them. This switch
|
||||
or jumper MUST be set for 8 bit mode.
|
||||
.Pp
|
||||
The ISA adapters can use Irq's 11, 12 or 15 (and 9 and 10 in the case of
|
||||
SX host cards).
|
||||
.Pp
|
||||
The si device driver may have some of it's configuration settings changed
|
||||
at run-time with the
|
||||
.Xr sicontrol 8
|
||||
utility.
|
||||
.Pp
|
||||
The si device driver also responds to the
|
||||
.Xr comcontrol 8
|
||||
utility for configuring drain-on-close timeouts.
|
||||
.Pp
|
||||
The driver also defines 3 sysctl variables that can be manipulated:
|
||||
machdep.si_debug sets the debug level for the whole driver. It depends
|
||||
on the driver being compiled with SI_DEBUG. machdep.si_pollrate
|
||||
sets how often per second the driver polls for lost interrupts.
|
||||
machdep.si_realpoll sets whether or not the card will treat the
|
||||
poll intervals as if they were interrupts.
|
||||
.Pp
|
||||
An open on a /dev device node controlled by the si driver obeys the same
|
||||
semantics as the
|
||||
.Xr sio 4
|
||||
driver. It fully supports the usual semantics of the cua ports, and the
|
||||
"initial termios" and "locked termios" settings. In summary, an open on a
|
||||
tty port will block until DCD is raised, unless O_NONBLOCK is specified.
|
||||
CLOCAL is honored. An open on a cua port will always succeed, but DCD
|
||||
transitions will be honored after DCD rises for the first time.
|
||||
.Pp
|
||||
Up to four SI/XIO host cards may be controlled by the si driver.
|
||||
Due to the lack of available interrupts, only 3 ISA SI/XIO host cards can be
|
||||
used at once.
|
||||
.Pp
|
||||
The lowest 5 bits of the minor device number are used to select the port
|
||||
number on the module cluster. The next 2 bits select which of 4 host adapter
|
||||
cards. This allows a maximum of 128 ports on this driver.
|
||||
.Pp
|
||||
Bit 7 is used to differentiate a tty/dialin port (bit 7=0) and a
|
||||
cua/callout port (bit 7=1).
|
||||
.Pp
|
||||
Bit 8 through 15 (on
|
||||
.Tn FreeBSD )
|
||||
are unavailable as they are a shadow of the
|
||||
major device number.
|
||||
.Pp
|
||||
If bit 16 is a 1, the device node is referring to the "initial state" device.
|
||||
This "initial state" is used to prime the
|
||||
.Xr termios 4
|
||||
settings of the device when it is initially opened.
|
||||
If bit 17 is a 1, the device node is referring to the "locked state" device.
|
||||
The "locked state" is used to prevent the
|
||||
.Xr termios 4
|
||||
settings from being changed.
|
||||
.Pp
|
||||
To manipulate the initial/locked settings, the
|
||||
.Xr stty 1
|
||||
command is useful. When setting the "locked" variables, enabling the mode
|
||||
on the lock device will lock the termios mode, while disabling the mode will
|
||||
unlock it.
|
||||
.Sh FILES
|
||||
.Bl -tag -width /dev/si_control -compact
|
||||
.It Pa /dev/si_control
|
||||
global driver control file for
|
||||
.Xr sicontrol 8
|
||||
.It Pa /dev/ttyA*
|
||||
terminal/dialin ports
|
||||
.It Pa /dev/cuaA*
|
||||
dialout ports
|
||||
.It Pa /dev/ttyiA*
|
||||
initial termios state devices
|
||||
.It Pa /dev/ttylA*
|
||||
locked termios state devices
|
||||
.It Pa /dev/cuaiA*
|
||||
initial termios state devices for dialout ports
|
||||
.It Pa /dev/cualA*
|
||||
locked termios state devices for dialout ports
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr stty 1 ,
|
||||
.Xr sio 4 ,
|
||||
.Xr termios 4 ,
|
||||
.Xr tty 4 ,
|
||||
.Xr comcontrol 8 ,
|
||||
.Xr sicontrol 8
|
||||
.Sh HISTORY
|
||||
This driver is loosely based on driver code originating at Specialix, which
|
||||
was ported to run on BSDI by
|
||||
.An Andy Rutter Aq andy@specialix.co.uk .
|
||||
The System V driver source is/was available by ftp from
|
||||
.Sy ftp.specialix.co.uk .
|
||||
.Pp
|
||||
This driver is not supported by Specialix International.
|
||||
.Sh AUTHORS
|
||||
.An Peter Wemm Aq peter@netplex.com.au
|
||||
obtained the code from
|
||||
.An Andy Rutter
|
||||
and ported it to
|
||||
.Fx
|
||||
and threw the man page together.
|
||||
.An Bruce Evans Aq bde@zeta.org.au
|
||||
provided a large amount of assistance during porting.
|
||||
.An Nick Sayer Aq nick@specialix.com
|
||||
wrote the EISA, PCI and SX portions.
|
||||
.Sh BUGS
|
||||
The interrupt tuning rate is not believed to be optimal at this time for
|
||||
maximum efficiency.
|
||||
.Pp
|
||||
Polled mode (a feature of standard Specialix drivers) is not implemented,
|
||||
but it can be approximated by turning on machdep.si_realpoll. The poll
|
||||
frequency is set by machdep.si_pollrate (in units of 1/100th of a second).
|
||||
.Pp
|
||||
The driver does not yet support baud rates higher than 115,200 on SX
|
||||
modules.
|
||||
.Pp
|
||||
Operation outside the traditional ISA "hole" is not yet supported, although it
|
||||
should work if the test is removed from the probe routine.
|
||||
.Pp
|
||||
Multiple host cards are supported although combinations of hosts on
|
||||
different bus types have not been tested - device numbering is known to
|
||||
be a problem and may lead to unexpected results.
|
@ -1,324 +0,0 @@
|
||||
.\" Copyright (c) 1990, 1991 The Regents of the University of California.
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" This code is derived from software contributed to Berkeley by
|
||||
.\" the Systems Programming Group of the University of Utah Computer
|
||||
.\" Science Department.
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by the University of
|
||||
.\" California, Berkeley and its contributors.
|
||||
.\" 4. Neither the name of the University nor the names of its contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
||||
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" from: @(#)dca.4 5.2 (Berkeley) 3/27/91
|
||||
.\" from: com.4,v 1.1 1993/08/06 11:19:07 cgd Exp
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd October 10, 1995
|
||||
.Dt SIO 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm sio
|
||||
.Nd
|
||||
fast interrupt driven asynchronous serial communications interface
|
||||
.Sh SYNOPSIS
|
||||
For standard ports:
|
||||
.Cd "device sio0 at isa? port" \&"IO_COM1\&" irq 4
|
||||
.Cd "device sio1 at isa? port" \&"IO_COM2\&" irq 3
|
||||
.Cd "device sio2 at isa? port" \&"IO_COM3\&" irq 5
|
||||
.Cd "device sio3 at isa? port" \&"IO_COM4\&" irq 9
|
||||
.Pp
|
||||
For AST compatible multiport cards with 4 ports:
|
||||
.Cd "options" \&"COM_MULTIPORT\&"
|
||||
.Cd "device sio4 at isa? port 0x2a0 flags 0x701"
|
||||
.Cd "device sio5 at isa? port 0x2a8 flags 0x701"
|
||||
.Cd "device sio6 at isa? port 0x2b0 flags 0x701"
|
||||
.Cd "device sio7 at isa? port 0x2b8 flags 0x701 irq 12"
|
||||
.Pp
|
||||
For Boca Board compatible multiport cards with 8 ports:
|
||||
.Cd "options" \&"COM_MULTIPORT\&"
|
||||
.Cd "device sio4 at isa? port 0x100 flags 0xb05"
|
||||
.Cd "..."
|
||||
.Cd "device sio11 at isa? port 0x138 flags 0xb05 irq 12"
|
||||
.Pp
|
||||
For Hayes ESP cards:
|
||||
.Cd "options" \&"COM_ESP\&"
|
||||
.Cd "..."
|
||||
.Pp
|
||||
Meaning of
|
||||
.Ar flags :
|
||||
.Bl -tag -offset indent -compact -width 0x000000
|
||||
.It 0x00001
|
||||
shared IRQs
|
||||
.It 0x00002
|
||||
disable FIFO
|
||||
.It 0x00004
|
||||
no AST/4 compatible IRQ control register
|
||||
.It 0x00008
|
||||
recover sooner from lost output interrupts
|
||||
.It 0x00010
|
||||
device is potential system console
|
||||
.It 0x00020
|
||||
device is forced to become system console
|
||||
.It 0x00040
|
||||
device is reserved for low-level IO (e. g. for remote kernel debugging)
|
||||
.It 0x00080
|
||||
use this port for remote kernel debugging
|
||||
.It 0x0 Ns Em ?? Ns 00
|
||||
minor number of master port
|
||||
.It 0x20000
|
||||
device is assumed to use a 16650A-type (extended FIFO) chip
|
||||
.El
|
||||
.Pp
|
||||
Minor numbering:
|
||||
.br
|
||||
0b\fIOLIMMMMM\fR
|
||||
.br
|
||||
call\fBO\fRut
|
||||
.br
|
||||
\fBL\fRock
|
||||
.br
|
||||
\fBI\fRnitial
|
||||
.br
|
||||
\fBMMMMMM\fRinor
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm sio
|
||||
driver provides support for NS8250-, NS16450-, NS16550 and NS16550A-based
|
||||
.Tn EIA
|
||||
.Tn RS-232C
|
||||
.Pf ( Tn CCITT
|
||||
.Tn V.24 )
|
||||
communications interfaces. The NS8250 and NS16450 have single character
|
||||
buffers, the NS16550A has 16 character FIFO input and output buffers.
|
||||
.Pp
|
||||
Input and output for each line may set to one of following baud rates;
|
||||
50, 75, 110, 134.5, 150, 300, 600, 1200, 1800, 2400, 4800, 9600,
|
||||
19200, 38400, 57600, or 115200. Your hardware may limit your baud
|
||||
rate choices.
|
||||
.Pp
|
||||
The driver supports `multiport' cards.
|
||||
Multiport cards are those that have one or more groups of ports
|
||||
that share an Interrupt Request (IRQ) line per group.
|
||||
Shared IRQs on different cards are not supported.
|
||||
Frequently 4 ports share 1 IRQ; some 8 port cards have 2 groups of 4 ports,
|
||||
thus using 2 IRQs.
|
||||
Some cards allow the first 2 serial ports to have separate IRQs per port
|
||||
(as per DOS PC standard).
|
||||
.Pp
|
||||
Some cards have an IRQ control register for each group.
|
||||
Some cards require special initialization related to such registers.
|
||||
Only AST/4 compatible IRQ control registers are supported.
|
||||
Some cards have an IRQ status register for each group.
|
||||
The driver does not require or use such registers yet.
|
||||
To work, the control and status registers for a group, if any,
|
||||
must be mapped to the scratch register (register 7)
|
||||
of a port in the group.
|
||||
Such a port is called a
|
||||
.Em master
|
||||
port.
|
||||
.Pp
|
||||
The
|
||||
.Em flags
|
||||
keyword may be used on each
|
||||
.Em device sio
|
||||
line in the kernel configuration file
|
||||
to disable the FIFO on 16550A UARTs
|
||||
(see the synopsis).
|
||||
Disabling the FIFO should rarely be necessary.
|
||||
.Pp
|
||||
The
|
||||
.Em flags
|
||||
keyword
|
||||
.Em must
|
||||
be used for all ports that are part of an IRQ sharing group.
|
||||
One bit specifies IRQ sharing; another bit specifies whether the port does
|
||||
.Em not
|
||||
require AST/4 compatible initialization.
|
||||
The minor number of the device corresponding a master port
|
||||
for the group is encoded as a bitfield in the high byte.
|
||||
The same master port must be specified for all ports in a group.
|
||||
.Pp
|
||||
The
|
||||
.Em irq
|
||||
specification must be given for master ports
|
||||
and for ports that are not part of an IRQ sharing group,
|
||||
and not for other ports.
|
||||
.Pp
|
||||
In the synopsis,
|
||||
.Em flags 0x701
|
||||
means that the 8th port (sio7) is the master
|
||||
port, and that the port is on a multiport card with shared IRQs
|
||||
and an AST/4 compatible IRQ control register.
|
||||
.Pp
|
||||
.Em flags 0xb05
|
||||
means that the 12th port (sio11) is the master
|
||||
port, and that the port is on a multiport card with shared IRQs
|
||||
and no special IRQ control register.
|
||||
.Pp
|
||||
Which port is the master port depends on the card type.
|
||||
Consult the hardware documentation of your card.
|
||||
Since IRQ status registers are never used,
|
||||
and IRQ control registers are only used for AST/4 compatible cards,
|
||||
and some cards map the control/status registers to all ports in a group,
|
||||
any port in a group will sometimes do for the master port.
|
||||
Choose a port containing an IRQ status register for forwards compatibility,
|
||||
and the highest possible port for consistency.
|
||||
.Pp
|
||||
Serial ports controlled by the
|
||||
.Nm sio
|
||||
driver can be used for both `callin' and `callout'.
|
||||
For each port there is a callin device and a callout device.
|
||||
The minor number of the callout device is 128 higher
|
||||
than that of the corresponding callin port.
|
||||
The callin device is general purpose.
|
||||
Processes opening it normally wait for carrier
|
||||
and for the callout device to become inactive.
|
||||
The callout device is used to steal the port from
|
||||
processes waiting for carrier on the callin device.
|
||||
Processes opening it do not wait for carrier
|
||||
and put any processes waiting for carrier on the callin device into
|
||||
a deeper sleep so that they do not conflict with the callout session.
|
||||
The callout device is abused for handling programs that are supposed
|
||||
to work on general ports and need to open the port without waiting
|
||||
but are too stupid to do so.
|
||||
.Pp
|
||||
The
|
||||
.Nm sio
|
||||
driver also supports an initial-state and a lock-state control
|
||||
device for each of the callin and the callout "data" devices.
|
||||
The minor number of the initial-state device is 32 higher
|
||||
than that of the corresponding data device.
|
||||
The minor number of the lock-state device is 64 higher
|
||||
than that of the corresponding data device.
|
||||
The termios settings of a data device are copied
|
||||
from those of the corresponding initial-state device
|
||||
on first opens and are not inherited from previous opens.
|
||||
Use
|
||||
.Xr stty 1
|
||||
in the normal way on the initial-state devices to program
|
||||
initial termios states suitable for your setup.
|
||||
.Pp
|
||||
The lock termios state acts as flags to disable changing
|
||||
the termios state. E.g., to lock a flag variable such as
|
||||
CRTSCTS, use
|
||||
.Em stty crtscts
|
||||
on the lock-state device. Speeds and special characters
|
||||
may be locked by setting the corresponding value in the lock-state
|
||||
device to any nonzero value.
|
||||
.Pp
|
||||
Correct programs talking to correctly wired external devices
|
||||
work with almost arbitrary initial states and almost no locking,
|
||||
but other setups may benefit from changing some of the default
|
||||
initial state and locking the state.
|
||||
In particular, the initial states for non (POSIX) standard flags
|
||||
should be set to suit the devices attached and may need to be
|
||||
locked to prevent buggy programs from changing them.
|
||||
E.g., CRTSCTS should be locked on for devices that support
|
||||
RTS/CTS handshaking at all times and off for devices that don't
|
||||
support it at all. CLOCAL should be locked on for devices
|
||||
that don't support carrier. HUPCL may be locked off if you don't
|
||||
want to hang up for some reason. In general, very bad things happen
|
||||
if something is locked to the wrong state, and things should not
|
||||
be locked for devices that support more than one setting. The
|
||||
CLOCAL flag on callin ports should be locked off for logins
|
||||
to avoid certain security holes, but this needs to be done by
|
||||
getty if the callin port is used for anything else.
|
||||
.Sh FILES
|
||||
.Bl -tag -width /dev/ttyid? -compact
|
||||
.It Pa /dev/ttyd?
|
||||
for callin ports
|
||||
.It Pa /dev/ttyid?
|
||||
.It Pa /dev/ttyld?
|
||||
corresponding callin initial-state and lock-state devices
|
||||
.Pp
|
||||
.It Pa /dev/cuaa?
|
||||
for callout ports
|
||||
.It Pa /dev/cuaia?
|
||||
.It Pa /dev/cuala?
|
||||
corresponding callout initial-state and lock-state devices
|
||||
.El
|
||||
.Pp
|
||||
.Bl -tag -width /etc/rc.serial -compact
|
||||
.It Pa /etc/rc.serial
|
||||
examples of setting the initial-state and lock-state devices
|
||||
.El
|
||||
.Pp
|
||||
The devices numbers are made from the set [0-9a-v] so that more than
|
||||
10 ports can be supported.
|
||||
.Sh DIAGNOSTICS
|
||||
.Bl -diag
|
||||
.It sio%d: silo overflow.
|
||||
Problem in the interrupt handler.
|
||||
.El
|
||||
.Bl -diag
|
||||
.It sio%d: interrupt-level buffer overflow.
|
||||
Problem in the bottom half of the driver.
|
||||
.El
|
||||
.Bl -diag
|
||||
.It sio%d: tty-level buffer overflow.
|
||||
Problem in the application.
|
||||
Input has arrived faster than the given module could process it
|
||||
and some has been lost.
|
||||
.El
|
||||
.\" .Bl -diag
|
||||
.\" .It sio%d: reduced fifo trigger level to %d.
|
||||
.\" Attempting to avoid further silo overflows.
|
||||
.\" .El
|
||||
.Sh SEE ALSO
|
||||
.Xr stty 1 ,
|
||||
.Xr termios 4 ,
|
||||
.Xr tty 4 ,
|
||||
.Xr comcontrol 8
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
driver is derived from the
|
||||
.Tn HP9000/300
|
||||
.Xr dca 4
|
||||
driver and is
|
||||
.Ud
|
||||
.Sh BUGS
|
||||
Data loss may occur at very high baud rates on slow systems,
|
||||
or with too many ports on any system,
|
||||
or on heavily loaded systems when crtscts cannot be used.
|
||||
The use of NS16550A's reduces system load and helps to avoid data loss.
|
||||
.Pp
|
||||
Stay away from plain NS16550's. These are early
|
||||
implementations of the chip with non-functional FIFO hardware.
|
||||
.Pp
|
||||
The constants which define the locations
|
||||
of the various serial ports are holdovers from
|
||||
.Tn DOS .
|
||||
As shown, hex addresses can be and for clarity probably should be used instead.
|
||||
.Pp
|
||||
Note that on the AST/4 the card's dipswitches should
|
||||
.Em not
|
||||
be set to use interrupt sharing. AST/4-like interrupt sharing is only used when
|
||||
.Em multiple
|
||||
AST/4 cards are installed in the same system. The sio driver does not
|
||||
support more than 1 AST/4 on one IRQ.
|
||||
.Pp
|
||||
The examples in the synopsis are too vendor-specific.
|
@ -1,149 +0,0 @@
|
||||
.\" Copyright (c) 1997, 1998, 1999
|
||||
.\" Bill Paul <wpaul@ee.columbia.edu>. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by Bill Paul.
|
||||
.\" 4. Neither the name of the author nor the names of any co-contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD
|
||||
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||
.\" THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd September 4, 1999
|
||||
.Dt SIS 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm sis
|
||||
.Nd
|
||||
Silicon Integrated Systems fast ethernet device driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd "controller miibus0"
|
||||
.Cd "device sis0"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver provides support for PCI ethernet adapters and embedded
|
||||
controllers based on the Silicon Integrated Systems SiS 900
|
||||
and SiS 7016 fast ethernet controller chips.
|
||||
.Pp
|
||||
The SiS 900 is a 100Mbps ethernet MAC and MII-compliant transceiver
|
||||
in a single package. It uses a bus master DMA and a scatter/gather
|
||||
descriptor scheme. The SiS 7016 is similar to the SiS 900 except
|
||||
that it has no internal PHY, requiring instead an external transceiver
|
||||
to be attached to its MII interface.
|
||||
The SiS 900 and SiS 7016 both have a 128-bit multicast hash filter
|
||||
and a single perfect filter entry for the station address.
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media types:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It autoselect
|
||||
Enable autoselection of the media type and options.
|
||||
The user can manually override
|
||||
the autoselected mode by adding media options to the
|
||||
.Pa /etc/rc.conf
|
||||
fine.
|
||||
.It 10baseT/UTP
|
||||
Set 10Mbps operation. The
|
||||
.Ar mediaopt
|
||||
option can also be used to select either
|
||||
.Ar full-duplex
|
||||
or
|
||||
.Ar half-duplex modes.
|
||||
.It 100baseTX
|
||||
Set 100Mbps (fast ethernet) operation. The
|
||||
.Ar mediaopt
|
||||
option can also be used to select either
|
||||
.Ar full-duplex
|
||||
or
|
||||
.Ar half-duplex
|
||||
modes.
|
||||
.El
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media options:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It full-duplex
|
||||
Force full duplex operation
|
||||
.It half-duplex
|
||||
Force half duplex operation.
|
||||
.El
|
||||
.Pp
|
||||
For more information on configuring this device, see
|
||||
.Xr ifconfig 8 .
|
||||
.Sh DIAGNOSTICS
|
||||
.Bl -diag
|
||||
.It "sis%d: couldn't map ports/memory"
|
||||
A fatal initialization error has occurred.
|
||||
.It "sis%d: couldn't map interrupt"
|
||||
A fatal initialization error has occurred.
|
||||
.It "sis%d: watchdog timeout"
|
||||
The device has stopped responding to the network, or there is a problem with
|
||||
the network connection (cable).
|
||||
.It "sis%d: no memory for rx list"
|
||||
The driver failed to allocate an mbuf for the receiver ring.
|
||||
.It "sis%d: no memory for tx list"
|
||||
The driver failed to allocate an mbuf for the transmitter ring when
|
||||
allocating a pad buffer or collapsing an mbuf chain into a clusisr.
|
||||
.It "sis%d: chip is in D3 power state -- setting to D0"
|
||||
This message applies only to adapters which support power
|
||||
management. Some operating sysisms place the controller in low power
|
||||
mode when shutting down, and some PCI BIOSes fail to bring the chip
|
||||
out of this state before configuring it. The controller loses all of
|
||||
its PCI configuration in the D3 state, so if the BIOS does not set
|
||||
it back to full power mode in time, it won't be able to configure it
|
||||
correctly. The driver tries to detect this condition and bring
|
||||
the adapter back to the D0 (full power) state, but this may not be
|
||||
enough to return the driver to a fully operational condition. If
|
||||
you see this message at boot time and the driver fails to attach
|
||||
the device as a network interface, you will have to perform second
|
||||
warm boot to have the device properly configured.
|
||||
.Pp
|
||||
Note that this condition only occurs when warm booting from another
|
||||
operating sysism. If you power down your sysism prior to booting
|
||||
.Fx ,
|
||||
the card should be configured correctly.
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr arp 4 ,
|
||||
.Xr netintro 4 ,
|
||||
.Xr ifconfig 8
|
||||
.Rs
|
||||
.%T SiS 900 and SiS 7016 datasheets
|
||||
.%O http://www.sis.com.tw
|
||||
.Re
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
device driver first appeared in
|
||||
.Fx 3.0 .
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm
|
||||
driver was written by
|
||||
.An Bill Paul Aq wpaul@ee.columbia.edu .
|
@ -1,159 +0,0 @@
|
||||
.\" Copyright (c) 1997, 1998, 1999
|
||||
.\" Bill Paul <wpaul@ctr.columbia.edu>. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by Bill Paul.
|
||||
.\" 4. Neither the name of the author nor the names of any co-contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD
|
||||
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||
.\" THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd July 3, 1999
|
||||
.Dt SK 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm sk
|
||||
.Nd
|
||||
SysKonnect SK-984x PCI gigabit ethernet adapter driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd "device sk0"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver provides support for the SysKonnect SK-984x series PCI
|
||||
gigabit ethernet adapters, including the following:
|
||||
.Bl -bullet -offset indent
|
||||
.It
|
||||
SK-9841 SK-NET GE-LX single port, single mode fiber adapter
|
||||
.It
|
||||
SK-9842 SK-NET GE-SX single port, multimode fiber adapter
|
||||
.It
|
||||
SK-9843 SK-NET GE-LX dual port, single mode fiber adapter
|
||||
.It
|
||||
SK-9844 SK-NET GE-SX duak port, multimode fiber adapter
|
||||
.El
|
||||
.Pp
|
||||
The SysKonnect adapters consist of two main components: the XaQti Corp.
|
||||
XMAC II gigabit MAC and the SysKonnect GEnesis controller ASIC. The
|
||||
XMAC provides the gigabit MAC and PHY suspport while the GEnesis
|
||||
provides an interface to the PCI bus, DMA support, packet buffering
|
||||
and arbitration. The GEnesis can control up to two XMACs simultaneously,
|
||||
allowing dual-port NIC configurations.
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver configures dual port SysKonnect adapters such that each XMAC
|
||||
is treated as a separate logical network interface. Both ports can
|
||||
operate indepenently of each other and can be connected to separate
|
||||
networks. The SysKonnect driver software currently only uses the
|
||||
second port on dual port adapters for failover purposes: if the link
|
||||
on the primary port fails, the SysKonnect driver will automatically
|
||||
switch traffic onto the second port.
|
||||
.Pp
|
||||
The XaQti XMAC II supports full and half duplex operation with
|
||||
autonegotiation. The XMAC also supports unlimited frame sizes.
|
||||
Support for jumbo frames is provided via the interface MTU setting.
|
||||
Selecting an MTU larger than 1500 bytes with the
|
||||
.Xr ifconfig 8
|
||||
utility configures the adapter to receive and transmit jumbo frames.
|
||||
Using jumbo frames can greatly improve performance for certain tasks,
|
||||
such as file transfers and data streaming.
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media types:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It autoselect
|
||||
Enable autoselection of the media type and options.
|
||||
The user can manually override
|
||||
the autoselected mode by adding media options to the
|
||||
.Pa /etc/rc.conf
|
||||
file.
|
||||
.It 1000baseSX
|
||||
Set 1000Mbps (gigabit ethernet) operation. Both
|
||||
.Ar full-duplex
|
||||
and
|
||||
.Ar half-duplex
|
||||
modes are supported.
|
||||
.El
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media options:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It full-duplex
|
||||
Force full duplex operation
|
||||
.It half-duplex
|
||||
Force half duplex operation.
|
||||
.El
|
||||
.Pp
|
||||
For more information on configuring this device, see
|
||||
.Xr ifconfig 8 .
|
||||
.Sh DIAGNOSTICS
|
||||
.Bl -diag
|
||||
.It "sk%d: couldn't map memory"
|
||||
A fatal initialization error has occurred.
|
||||
.It "sk%d: couldn't map ports"
|
||||
A fatal initialization error has occurred.
|
||||
.It "sk%d: couldn't map interrupt"
|
||||
A fatal initialization error has occurred.
|
||||
.It "sk%d: no memory for softc struct!"
|
||||
The driver failed to allocate memory for per-device instance information
|
||||
during initialization.
|
||||
.It "sk%d: failed to enable memory mapping!"
|
||||
The driver failed to initialize PCI shared memory mapping. This might
|
||||
happen if the card is not in a bus-master slot.
|
||||
.It "sk%d: no memory for jumbo buffers!"
|
||||
The driver failed to allocate memory for jumbo frames during
|
||||
initialization.
|
||||
.It "sk%d: watchdog timeout"
|
||||
The device has stopped responding to the network, or there is a problem with
|
||||
the network connection (cable).
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr arp 4 ,
|
||||
.Xr netintro 4 ,
|
||||
.Xr vlan 4 ,
|
||||
.Xr ifconfig 8
|
||||
.Rs
|
||||
.%T XaQti XMAC II datasheet
|
||||
.%O http://www.xaqti.com
|
||||
.Re
|
||||
.Rs
|
||||
.%T SysKonnect GEnesis programming manual
|
||||
.%O http://www.syskonnect.com
|
||||
.Re
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
device driver first appeared in
|
||||
.Fx 3.0 .
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm
|
||||
driver was written by
|
||||
.An Bill Paul Aq wpaul@ctr.columbia.edu .
|
@ -1,242 +0,0 @@
|
||||
.\"
|
||||
.\" Copyright (c) 1999
|
||||
.\" Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer as
|
||||
.\" the first lines of this file unmodified.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||
.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||
.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd February 9, 1999
|
||||
.Dt SPLASH 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm splash
|
||||
.Nd
|
||||
splash screen / screen saver interface
|
||||
.Sh SYNOPSIS
|
||||
.Cd "pseudo-device splash"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
pseudo device driver adds support for the splash screen and screen
|
||||
savers to the kernel.
|
||||
This driver is required if the splash bitmap image is to be loaded or
|
||||
any screen saver is to be used.
|
||||
.Sh SPLASH SCREEN
|
||||
You can load and display an arbitrary bitmap image file as welcome banner
|
||||
on the screen when the system is about to start. This image will remain on
|
||||
the screen during kernel initialization process until the ``Login'' prompt
|
||||
appears on the screen or until a screen saver is loaded and initialized.
|
||||
The image will also disappear if you hit any key, although this may not work
|
||||
immediately if the kernel is still probing devices.
|
||||
.Pp
|
||||
If you specify
|
||||
.Fl c
|
||||
or
|
||||
.Fl v
|
||||
boot option when loading kernel, the splash image will not appear. However, it
|
||||
is still loaded and can be used as a screen saver later: see below.
|
||||
.Pp
|
||||
In order to display the bitmap, the bitmap file itself and the
|
||||
matching splash image decoder module must be loaded by the boot loader.
|
||||
Currently the following decoder module is available:
|
||||
.Pp
|
||||
.Bl -tag -width splash_decoder -compact
|
||||
.It Pa splash_bmp.ko
|
||||
W*ndows BMP file decoder.
|
||||
While the BMP file format allows images of various color depths, this
|
||||
decoder currently only handles 256 color bitmaps. Bitmaps of other color
|
||||
depths will not be displayed.
|
||||
.It Pa splash_pcx.ko
|
||||
ZSoft PCX decoder.
|
||||
This decoder currently only supports version 5 8-bpp single-plane
|
||||
images.
|
||||
.El
|
||||
.Pp
|
||||
The
|
||||
.Sx EXAMPLES
|
||||
section illustrates how to set up the splash screen.
|
||||
.Pp
|
||||
If the standard VGA video mode is used,
|
||||
the size of the bitmap must be 320x200 or less.
|
||||
If you enable the VESA mode support in the kernel,
|
||||
either by statically linking the VESA module or by loading the VESA module
|
||||
.Pq see Xr vga 4 ,
|
||||
you can load bitmaps up to a resolution of 1024x768, depending on the VESA
|
||||
BIOS and the amount of video memory on the video card.
|
||||
.Sh SCREEN SAVER
|
||||
The screen saver will activate when the system is considered idle: i.e.
|
||||
when the user has not typed a key or moved the mouse for a specified period
|
||||
of time. As the screen saver is an optional module, it must be explicitly
|
||||
loaded into memory. Currently the following screen saver modules are
|
||||
available:
|
||||
.Pp
|
||||
.Bl -tag -width splash_module.ko -compact
|
||||
.It Pa blank_saver.ko
|
||||
This screen saver simply blanks the screen.
|
||||
.It Pa daemon_saver.ko
|
||||
Animated BSD Daemon screen saver.
|
||||
.It Pa fade_saver.ko
|
||||
The screen will gradually fade away.
|
||||
.It Pa green_saver.ko
|
||||
If the monitor supports power saving mode, it will be turned off.
|
||||
.It Pa logo_saver.ko
|
||||
Animated graphical BSD Daemon.
|
||||
.It Pa rain_saver.ko
|
||||
Draws shower on the screen.
|
||||
.It Pa snake_saver.ko
|
||||
Draws a snake of string.
|
||||
.It Pa star_saver.ko
|
||||
Twinkling stars.
|
||||
.It Pa warp_saver.ko
|
||||
Streaking stars.
|
||||
.El
|
||||
.Pp
|
||||
Screen saver modules can be loaded using
|
||||
.Xr kldload 8 :
|
||||
.Pp
|
||||
.Dl kldload logo_saver
|
||||
.Pp
|
||||
The timeout value in seconds can be specified as follows:
|
||||
.Pp
|
||||
.Dl vidcontrol -t N
|
||||
.Pp
|
||||
Alternatively, you can set the
|
||||
.Ar saver
|
||||
variable in the
|
||||
.Pa /etc/rc.conf
|
||||
to the screen saver of your choice and
|
||||
the timeout value to the
|
||||
.Ar blanktime
|
||||
variable so that the screen saver is automatically loaded
|
||||
and the timeout value is set when the system starts.
|
||||
.Pp
|
||||
The screen saver may be instantly activated by hitting the
|
||||
.Ar saver
|
||||
key: the defaults are
|
||||
.Em Shift-Pause
|
||||
on the AT enhanced keyboard and
|
||||
.Em Shift-Ctrl-NumLock/Pause
|
||||
on the AT 84 keyboard. You can change the
|
||||
.Ar saver
|
||||
key by modifying the keymap
|
||||
.Pq see Xr kbdcontrol 1 , Xr keymap 5 ,
|
||||
and assign the
|
||||
.Ar saver
|
||||
function to a key of your preference.
|
||||
.Pp
|
||||
The screen saver will not run if the screen is not in text mode.
|
||||
.Sh SPLASH SCREEN AS A SCREEN SAVER
|
||||
If you load a splash image but do not load a screen saver,
|
||||
you can continue using the splash module as a screen saver.
|
||||
The screen blanking interval can be specified as described in the
|
||||
.Sx SCREEN SAVER
|
||||
section above.
|
||||
.\".Sh DRIVER CONFIGURATION
|
||||
.Sh FILES
|
||||
.Bl -tag -width /modules/splash_xxxx.ko -compact
|
||||
.It /boot/defaults/loader.conf
|
||||
boot loader configuration defaults
|
||||
.It /etc/rc.conf
|
||||
system configuration information
|
||||
.It /modules/splash_*.ko
|
||||
splash image decoder modules
|
||||
.It /modules/*_saver.ko
|
||||
screen saver modules
|
||||
.It /modules/vesa.ko
|
||||
the VESA support module
|
||||
.El
|
||||
.Sh EXAMPLE
|
||||
In order to load the splash screen or the screen saver, you must
|
||||
have the following line in the kernel configuration file.
|
||||
.Pp
|
||||
.Dl pseudo-device splash
|
||||
.Pp
|
||||
Next, edit
|
||||
.Pa /boot/loader.conf
|
||||
.Pq see Xr loader.conf 5
|
||||
and include the following lines:
|
||||
.Bd -literal -offset indent
|
||||
splash_bmp_load="YES"
|
||||
bitmap_load="YES"
|
||||
bitmap_name="chuck.bmp"
|
||||
.Ed
|
||||
.Pp
|
||||
In the above example, the file
|
||||
.Pa chuck.bmp
|
||||
is loaded.
|
||||
In the following example, the VESA module
|
||||
is loaded so that a bitmap file which cannot be displayed in standard
|
||||
VGA modes may be shown using one of the VESA video modes.
|
||||
.Bd -literal -offset indent
|
||||
splash_pcx_load="YES"
|
||||
vesa_load="YES"
|
||||
bitmap_load="YES"
|
||||
bitmap_name="chuck.pcx"
|
||||
.Ed
|
||||
.Pp
|
||||
If the VESA support is statically linked to the kernel, it is not
|
||||
necessary to load the VESA module.
|
||||
Just load the bitmap file and the splash decoder module as in the
|
||||
first example above.
|
||||
.\".Sh DIAGNOSTICS
|
||||
.Sh CAVEATS
|
||||
Both the splash screen and the screen saver work with
|
||||
.Xr syscons 4
|
||||
only. They are not available for the alternative console driver
|
||||
.Xr pcvt 4 .
|
||||
.Sh BUGS
|
||||
If you load a screen saver while another screen saver has already
|
||||
been loaded, the first screen saver will not be automatically unloaded
|
||||
and will remain in memory, wasting kernel memory space.
|
||||
.Sh SEE ALSO
|
||||
.Xr vidcontrol 1 ,
|
||||
.Xr syscons 4 ,
|
||||
.Xr vga 4 ,
|
||||
.Xr loader.conf 5 ,
|
||||
.Xr rc.conf 5 ,
|
||||
.Xr kldload 8 ,
|
||||
.Xr kldunload 8 .
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
driver first appeared in
|
||||
.Fx 3.1 .
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm
|
||||
driver and this manual page were written by
|
||||
.An Kazutaka Yokota Aq yokota@FreeBSD.org .
|
||||
The
|
||||
.Pa splash_bmp
|
||||
module was written by
|
||||
.An Michael Smith Aq msmith@FreeBSD.org
|
||||
and
|
||||
.An Kazutaka Yokota .
|
||||
The
|
||||
.Pa splash_pcx
|
||||
module was written by
|
||||
.An Dag-Erling Smørgrav Aq des@FreeBDS.org
|
||||
based on the
|
||||
.Pa splash_bmp
|
||||
code.
|
@ -1,149 +0,0 @@
|
||||
.\" Copyright (c) 1997, 1998, 1999
|
||||
.\" Bill Paul <wpaul@ctr.columbia.edu>. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by Bill Paul.
|
||||
.\" 4. Neither the name of the author nor the names of any co-contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD
|
||||
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||
.\" THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd August 21, 1999
|
||||
.Dt STE 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm ste
|
||||
.Nd
|
||||
Sundance Technologies ST201 fast ethernet device driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd "controller miibus0"
|
||||
.Cd "device ste0"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver provides support for PCI ethernet adapters and embedded
|
||||
controllers based on the Sundance Technologies ST201 PCI fast
|
||||
ethernet controller chip. This includes the D-Link DFE-550TX.
|
||||
.Pp
|
||||
The Sundance ST201 uses bus master DMA and is designed to be a
|
||||
3Com Etherlink XL workalike. It uses the same DMA descriptor
|
||||
structure and is very similar in operation, however its register
|
||||
layout is different. The ST201 has a 64-bit multicast hash filter
|
||||
and a single perfect filter entry for the station address. IT
|
||||
supports both 10 and 100Mbps speeds in either full or half duplex
|
||||
using an MII transceiver.
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media types:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It autoselect
|
||||
Enable autoselection of the media type and options.
|
||||
The user can manually override
|
||||
the autoselected mode by adding media options to the
|
||||
.Pa /etc/rc.conf
|
||||
fine.
|
||||
.It 10baseT/UTP
|
||||
Set 10Mbps operation. The
|
||||
.Ar mediaopt
|
||||
option can also be used to select either
|
||||
.Ar full-duplex
|
||||
or
|
||||
.Ar half-duplex modes.
|
||||
.It 100baseTX
|
||||
Set 100Mbps (fast ethernet) operation. The
|
||||
.Ar mediaopt
|
||||
option can also be used to select either
|
||||
.Ar full-duplex
|
||||
or
|
||||
.Ar half-duplex
|
||||
modes.
|
||||
.El
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media options:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It full-duplex
|
||||
Force full duplex operation
|
||||
.It half-duplex
|
||||
Force half duplex operation.
|
||||
.El
|
||||
.Pp
|
||||
For more information on configuring this device, see
|
||||
.Xr ifconfig 8 .
|
||||
.Sh DIAGNOSTICS
|
||||
.Bl -diag
|
||||
.It "ste%d: couldn't map ports/memory"
|
||||
A fatal initialization error has occurred.
|
||||
.It "ste%d: couldn't map interrupt"
|
||||
A fatal initialization error has occurred.
|
||||
.It "ste%d: watchdog timeout"
|
||||
The device has stopped responding to the network, or there is a problem with
|
||||
the network connection (cable).
|
||||
.It "ste%d: no memory for rx list"
|
||||
The driver failed to allocate an mbuf for the receiver ring.
|
||||
.It "ste%d: no memory for tx list"
|
||||
The driver failed to allocate an mbuf for the transmitter ring when
|
||||
allocating a pad buffer or collapsing an mbuf chain into a cluster.
|
||||
.It "ste%d: chip is in D3 power state -- setting to D0"
|
||||
This message applies only to adapters which support power
|
||||
management. Some operating systems place the controller in low power
|
||||
mode when shutting down, and some PCI BIOSes fail to bring the chip
|
||||
out of this state before configuring it. The controller loses all of
|
||||
its PCI configuration in the D3 state, so if the BIOS does not set
|
||||
it back to full power mode in time, it won't be able to configure it
|
||||
correctly. The driver tries to detect this condition and bring
|
||||
the adapter back to the D0 (full power) state, but this may not be
|
||||
enough to return the driver to a fully operational condition. If
|
||||
you see this message at boot time and the driver fails to attach
|
||||
the device as a network interface, you will have to perform second
|
||||
warm boot to have the device properly configured.
|
||||
.Pp
|
||||
Note that this condition only occurs when warm booting from another
|
||||
operating system. If you power down your system prior to booting
|
||||
.Fx ,
|
||||
the card should be configured correctly.
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr arp 4 ,
|
||||
.Xr netintro 4 ,
|
||||
.Xr ifconfig 8
|
||||
.Rs
|
||||
.%T Sundance ST201 data sheet
|
||||
.%O http://www.sundanceti.com
|
||||
.Re
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
device driver first appeared in
|
||||
.Fx 3.0 .
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm
|
||||
driver was written by
|
||||
.An Bill Paul Aq wpaul@ee.columbia.edu .
|
@ -1,495 +0,0 @@
|
||||
.\"
|
||||
.\" Copyright (c) 1999
|
||||
.\" Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer as
|
||||
.\" the first lines of this file unmodified.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||
.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||
.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd June 30, 1999
|
||||
.Dt SYSCONS 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm syscons ,
|
||||
.Nm sc
|
||||
.Nd
|
||||
the console driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd "options MAXCONS=N"
|
||||
.Cd "options SC_ALT_MOUSE_IMAGE"
|
||||
.Cd "options SC_DISABLE_DDBKEY"
|
||||
.Cd "options SC_DISABLE_REBOOT"
|
||||
.Cd "options SC_HISTORY_SIZE=N"
|
||||
.Cd "options SC_MOUSE_CHAR=C"
|
||||
.Cd "options SC_NO_CUTPASTE"
|
||||
.Cd "options SC_NO_FONT_LOADING"
|
||||
.Cd "options SC_NO_HISTORY"
|
||||
.Cd "options SC_NO_PALETTE_LOADING"
|
||||
.Cd "options SC_NO_SYSMOUSE"
|
||||
.Cd "options SC_PIXEL_MODE"
|
||||
.Cd "options SC_TWOBUTTON_MOUSE
|
||||
.Cd "options SC_NORM_ATTR"=\&"_attribute_\&"
|
||||
.Cd "options SC_NORM_REV_ATTR"=\&"_attribute_\&"
|
||||
.Cd "options SC_KERNEL_CONS_ATTR"=\&"_attribute_\&"
|
||||
.Cd "options SC_KERNEL_CONS_REV_ATTR"=\&"_attribute_\&"
|
||||
.Cd "options SC_DFLT_FONT"
|
||||
.Cd "makeoptions SC_DFLT_FONT"=\&"_font_name_\&"
|
||||
.Cd "device sc0 at isa?"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver provides multiple virtual terminals.
|
||||
It resembles the SCO color console driver.
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver is implemented on top of the keyboard driver
|
||||
.Pq Xr atkbd 4
|
||||
and the video card driver
|
||||
.Pq Xr vga 4
|
||||
and so requires both of them to be configured in the system.
|
||||
.Pp
|
||||
There can be only one
|
||||
.Nm
|
||||
device defined in the system.
|
||||
.Ss Virtual Terminals
|
||||
The
|
||||
.Nm
|
||||
driver provides multiple virtual terminals which appear as if they were
|
||||
separate terminals.
|
||||
One virtual terminal is considered current and exclusively
|
||||
occupies the screen and the keyboard; the other virtual terminals
|
||||
are placed in the background.
|
||||
.Pp
|
||||
In order to use virtual terminals, they must be individually
|
||||
marked ``on'' in
|
||||
.Pa /etc/ttys
|
||||
so that
|
||||
.Xr getty 8
|
||||
will recognize them to be active and run
|
||||
.Xr login 1
|
||||
to let the user to login to the system.
|
||||
By default, only the first eight virtual terminals are activated in
|
||||
.Pa /etc/ttys .
|
||||
.Pp
|
||||
You press the
|
||||
.Em Alt
|
||||
key and a switch key to switch between
|
||||
virtual terminals.
|
||||
The following table summarizes the correspondence between the switch
|
||||
key and the virtual terminal.
|
||||
.Bd -literal -offset indent
|
||||
Alt-F1 ttyv0 Alt-F7 ttyv6 Shift-Alt-F1 ttyv10
|
||||
Alt-F2 ttyv1 Alt-F8 ttyv7 Shift-Alt-F2 ttyv11
|
||||
Alt-F3 ttyv2 Alt-F9 ttyv8 Shift-Alt-F3 ttyv12
|
||||
Alt-F4 ttyv3 Alt-F10 ttyv9 Shift-Alt-F4 ttyv13
|
||||
Alt-F5 ttyv4 Alt-F11 ttyv10 Shift-Alt-F5 ttyv14
|
||||
Alt-F6 ttyv5 Alt-F12 ttyv11 Shift-Alt-F6 ttyv15
|
||||
.Ed
|
||||
.Pp
|
||||
You can also use the ``nscr'' key (usually the
|
||||
.Em PrintScreen
|
||||
key on the AT Enhanced keyboard) to cycle available virtual terminals.
|
||||
.Pp
|
||||
The default number of available virtual terminals is 16.
|
||||
This can be changed by the kernel configuration option
|
||||
.Em MAXCONS
|
||||
(see below).
|
||||
.Pp
|
||||
Note that the X server usually requires a virtual terminal for display
|
||||
purposes, so at least one terminal must be left unused by
|
||||
.Xr getty 8
|
||||
so that it can be used by the X server.
|
||||
.Ss Key Definitions and Function Key Strings
|
||||
The
|
||||
.Nm
|
||||
driver, in conjunction with the keyboard driver, allows the user
|
||||
to change key definitions and function key strings.
|
||||
The
|
||||
.Xr kbdcontrol 1
|
||||
command will load a key definition file (known as ``keymap'' file),
|
||||
dump the current keymap, and assign a string to a function key.
|
||||
See
|
||||
.Xr keyboard 4
|
||||
and
|
||||
.Xr keymap 5
|
||||
for the keymap file.
|
||||
.Pp
|
||||
You may want to set the
|
||||
.Ar keymap
|
||||
variable in
|
||||
.Pa /etc/rc.conf.local
|
||||
to the desired keymap file so that it will be automatically loaded
|
||||
when the system starts up.
|
||||
.Ss Software Font
|
||||
For most modern video cards, e.g. VGA, the
|
||||
.Nm
|
||||
driver and the video card driver allow the user to change
|
||||
the font used on the screen.
|
||||
The
|
||||
.Xr vidcontrol 1
|
||||
command can be used to load a font file from
|
||||
.Pa /usr/share/syscons/fonts .
|
||||
.Pp
|
||||
The font comes in various sizes: 8x8, 8x14 and 8x16.
|
||||
The 8x16 font is typically used for the VGA card in the 80-column-
|
||||
by-25-line mode.
|
||||
Other video modes may require different size of font.
|
||||
It is better to always load these three sizes of the same font.
|
||||
.Pp
|
||||
You may set
|
||||
.Ar font8x8 ,
|
||||
.Ar font8x14
|
||||
and
|
||||
.Ar font8x16
|
||||
variables in
|
||||
.Pa /etc/rc.conf.local
|
||||
to the desired font files so that they will be automatically loaded
|
||||
when the system starts up.
|
||||
.Pp
|
||||
Optionally you can make a particular font file as the default font.
|
||||
See the
|
||||
.Em SC_DFLT_FONT
|
||||
option below.
|
||||
.Ss Screen Map
|
||||
If your video card does not support software font, you may still be able
|
||||
to have similar effect by re-mapping font hard-wired in the video card.
|
||||
Use
|
||||
.Xr vidcontrol 1
|
||||
to load a screen map file which defines mapping between character codes.
|
||||
.Ss Mouse Support and Copy-and-Paste
|
||||
You can use your mouse to copy text on the screen and paste it as if
|
||||
it is typed by hand.
|
||||
You must be running the mouse daemon
|
||||
.Xr moused 8
|
||||
and enable the mouse cursor in the virtual terminal via
|
||||
.Xr vidcontrol 1 .
|
||||
.Pp
|
||||
Pressing the mouse button 1 (usually the left button) will start selection.
|
||||
Releasing the button 1 will end the selection process.
|
||||
The selected text will be marked by inverting foreground and
|
||||
background colors.
|
||||
You can press the button 3 (usually the right button) to extend
|
||||
the selected region.
|
||||
The selected text is placed in the copy buffer and can be pasted
|
||||
at the cursor position by your pressing the button 2 (usually the
|
||||
middle button) as many times as you like.
|
||||
.Pp
|
||||
If your mouse has only two buttons, you may want to use the
|
||||
.Em SC_TWOBUTTON_MOUSE
|
||||
option below to make the right button to paste the text.
|
||||
Alternatively you can make the mouse daemon
|
||||
to emulate the middle button.
|
||||
See the man page for
|
||||
.Xr moused 8
|
||||
for more details.
|
||||
.Ss Back Scrolling
|
||||
The
|
||||
.Nm
|
||||
driver allows the user to browse the output which has ``scrolled off''
|
||||
from the top of the screen.
|
||||
.Pp
|
||||
Press the ``slock'' key (usually
|
||||
.Em ScrllLock
|
||||
and/or
|
||||
.Em Pause
|
||||
keys on many AT Enhanced keyboards) and the terminal is
|
||||
in the ``back scrolling'' mode.
|
||||
It is indicated by the
|
||||
.Em Scroll Lock
|
||||
LED.
|
||||
Use arrow keys,
|
||||
.Em Page Up/Down
|
||||
keys and
|
||||
.Em Home/End
|
||||
keys to scroll buffered terminal output.
|
||||
Press the ``slock'' key again to get back to the normal terminal mode.
|
||||
.Pp
|
||||
The size of the back-scroll buffer can be set by the
|
||||
.Em SC_HISTORY_SIZE
|
||||
option below.
|
||||
.Ss Screen Saver
|
||||
The
|
||||
.Nm
|
||||
driver can be made to put up the screen saver if the current
|
||||
virtual terminal is idle, that is, the user is not typing
|
||||
on the keyboard nor moving mouse.
|
||||
See
|
||||
.Xr splash 4
|
||||
and
|
||||
.Xr vidcontrol 1
|
||||
for more details.
|
||||
.Sh DRIVER CONFIGURATION
|
||||
.Ss Kernel Configuration Options
|
||||
The following kernel configuration options control the
|
||||
.Nm
|
||||
driver.
|
||||
.Bl -tag -width MOUSE
|
||||
.It Em MAXCONS=N
|
||||
This option sets the number of virtual terminals to
|
||||
.Fa N .
|
||||
The default value is 16.
|
||||
.It Em SC_ALT_MOUSE_IMAGE
|
||||
This option selects the alternative way of displaying the mouse cursor
|
||||
in the virtual terminal.
|
||||
It may be vastly costly for some video cards to draw the arrow-shaped
|
||||
cursor and you may want to try this option.
|
||||
However, the appearance of the alternative mouse cursor may not be
|
||||
very appealing.
|
||||
.It Em SC_DISABLE_DDBKEY
|
||||
This option disables the ``debug'' key (by default, it is
|
||||
.Em Alt-Esc ,
|
||||
or
|
||||
.Em Ctl-PrintScreen
|
||||
).
|
||||
It will prevent the user from
|
||||
entering the kernel debugger DDB by pressing the key combination.
|
||||
DDB will still be invoked when the kernel panics or hits a break point
|
||||
if it is included in the kernel.
|
||||
.It Em SC_DISABLE_REBOOT
|
||||
This option disables the ``reboot'' key (by default, it is
|
||||
.Em Ctl-Alt-Del
|
||||
), so that the casual user may not accidentally reboot the system.
|
||||
.It Em SC_HISTORY_SIZE=N
|
||||
Sets the size of back scroll buffer to
|
||||
.Fa N
|
||||
lines.
|
||||
The default value is 100.
|
||||
.It Em SC_MOUSE_CHAR=C
|
||||
Unless the
|
||||
.Em SC_ALT_MOUSE_IMAGE
|
||||
option above is specified, the
|
||||
The
|
||||
.Nm
|
||||
driver reserves four consecutive character codes in order to display the
|
||||
mouse cursor in the virtual terminals in some systems.
|
||||
This option specifies the first character code to
|
||||
.Fa C
|
||||
to be used for this purpose.
|
||||
The default value is 0xd0.
|
||||
A good candidate is 0x03.
|
||||
.It Em SC_PIXEL_MODE
|
||||
Adds support for pixel (raster) mode console.
|
||||
This mode is useful on some laptop computers, but less so on
|
||||
most other systems, and it adds substantial amount of code to syscons.
|
||||
If the this option is NOT defined, you can reduce the kernel size a lot.
|
||||
See the
|
||||
.Em VESA800X600
|
||||
flag below.
|
||||
.It Em SC_TWOBUTTON_MOUSE
|
||||
If you have a two button mouse, you may want to add this option
|
||||
to use the right button of the mouse to paste text.
|
||||
See
|
||||
.Sx Mouse Support and Copy-and-Paste
|
||||
above.
|
||||
.It Em SC_NORM_ATTR=\&"_attribute_\&"
|
||||
.It Em SC_NORM_REV_ATTR=\&"_attribute_\&"
|
||||
.It Em SC_KERNEL_CONS_ATTR=\&"_attribute_\&"
|
||||
.It Em SC_KERNEL_CONS_REV_ATTR=\&"_attribute_\&"
|
||||
These options will set the default colors.
|
||||
Available colors are defined in
|
||||
.Pa /usr/include/machine/pc/display.h .
|
||||
See
|
||||
.Sx EXAMPLE
|
||||
below.
|
||||
.It Em SC_DFLT_FONT
|
||||
This option will specify the default font.
|
||||
Available fonts are: iso, iso2, koi8-r, cp437, cp850, cp865 and cp866.
|
||||
16-line, 14-line and 8-line font data will be compiled in.
|
||||
Without this option, the
|
||||
.Nm
|
||||
driver will use whatever font already loaded in the video card,
|
||||
unless you explicitly load software font at startup.
|
||||
See
|
||||
.Sx EXAMPLE
|
||||
below.
|
||||
.El
|
||||
.Pp
|
||||
The following options will remove some features from the
|
||||
.Nm
|
||||
driver and save kernel memory.
|
||||
.Bl -tag -width MOUSE
|
||||
.It Em SC_NO_CUTPASTE
|
||||
This option disables ``copy and paste'' operation in virtual
|
||||
terminals.
|
||||
.It Em SC_NO_FONT_LOADING
|
||||
The
|
||||
.Nm
|
||||
driver can load software font on some video cards.
|
||||
This option removes this feature.
|
||||
.It Em SC_NO_HISTORY
|
||||
This option disables back-scrolling in virtual terminals.
|
||||
.\".It Em SC_NO_PALETTE_LOADING
|
||||
.It Em SC_NO_SYSMOUSE
|
||||
This option removes mouse support in the
|
||||
.Nm
|
||||
driver.
|
||||
The mouse daemon
|
||||
.Xr moused 8
|
||||
will fail if this option is defined.
|
||||
This option implies the
|
||||
.Em SC_NO_CUTPASTE
|
||||
option too.
|
||||
.El
|
||||
.Ss Driver Flags
|
||||
The following driver flags can be used to control the
|
||||
.Nm
|
||||
driver.
|
||||
They can be set either in the kernel configuration file
|
||||
.Pq see Xr config 8 ,
|
||||
or else in the User Configuration Menu at boot
|
||||
time
|
||||
.Pq see Xr boot 8 .
|
||||
.Bl -tag -width bit_0
|
||||
.\".It bit 0 (VISUAL_BELL)
|
||||
.\"Uses the ``visual'' bell.
|
||||
.\"The screen will blink instead of generating audible sound.
|
||||
.\".It bit 1,2 (CURSOR_TYPE)
|
||||
.\"This option specifies the cursor appearance.
|
||||
.\"Possible values are:
|
||||
.\".Bl -tag -width TYPE -compact
|
||||
.\".It Em 0
|
||||
.\"normal block cursor
|
||||
.\".It Em 2
|
||||
.\"blinking block cursor
|
||||
.\".It Em 4
|
||||
.\"underline cursor
|
||||
.\".It Em 6
|
||||
.\"blinking underline (aka destructive) cursor
|
||||
.\".El
|
||||
.\".It bit 6 (QUIET_BELL)
|
||||
.\"This option suppresses the bell, whether audible or visual,
|
||||
.\"if it is rung in a background virtual terminal.
|
||||
.It bit 7 (VESA800X600)
|
||||
This option puts the video card in the VESA 800x600 dots, 16 color
|
||||
mode.
|
||||
It may be useful for laptop computers for which the 800x600 mode
|
||||
is otherwise unsupported by the X server.
|
||||
Note that in order for this flag to work, the kernel must be
|
||||
compiled with the
|
||||
.Em SC_PIXEL_MODE
|
||||
option explained above.
|
||||
.\"Note also that the ``copy-and-paste'' function is not currently supported
|
||||
.\"in this mode and the mouse pointer will not be displayed.
|
||||
.El
|
||||
.Sh FILES
|
||||
.Bl -tag -width /usr/share/syscons/xxxxyyyyzzz -compact
|
||||
.It Pa /dev/console
|
||||
.It Pa /dev/consolectl
|
||||
.It Pa /dev/ttyv?
|
||||
virtual terminals
|
||||
.It Pa /etc/ttys
|
||||
terminal initialization information
|
||||
.It Pa /usr/share/syscons/fonts/*
|
||||
font files
|
||||
.It Pa /usr/share/syscons/keymaps/*
|
||||
key map files
|
||||
.It Pa /usr/share/syscons/scrmaps/*
|
||||
screen map files
|
||||
.El
|
||||
.Sh EXAMPLE
|
||||
As the
|
||||
.Nm
|
||||
driver requires the keyboard driver and the video card driver,
|
||||
the kernel configuration file should contain the following lines.
|
||||
.Pp
|
||||
.Bd -literal -offset indent
|
||||
device atkbdc0 at isa? port IO_KBD
|
||||
device atkbd0 at atkbdc? irq 1
|
||||
device vga0 at isa? conflicts
|
||||
device sc0 at isa?
|
||||
|
||||
pseudo-device splash
|
||||
.Ed
|
||||
.Pp
|
||||
If you do not intend to load the splash image or use the screen saver,
|
||||
the last line is not necessary, and can be omitted.
|
||||
.Pp
|
||||
Note that the keyboard controller driver
|
||||
.Nm atkbdc
|
||||
is required by the keyboard driver
|
||||
.Nm atkbd .
|
||||
.Pp
|
||||
The following lines will set the default colors.
|
||||
The normal text will be green on black background.
|
||||
The reversed text will be yellow on green background.
|
||||
Note that you cannot put any white space inside the quoted string,
|
||||
because of the current implementation of
|
||||
.Xr config 8 .
|
||||
.Pp
|
||||
.Dl "options SC_NORM_ATTR"=\&"(FG_GREEN|BG_BLACK)\&"
|
||||
.Dl "options SC_NORM_REV_ATTR"=\&"(FG_YELLOW|BG_GREEN)\&"
|
||||
.Pp
|
||||
The following lines will set the default colors of the kernel message.
|
||||
The kernel message will be printed bright red on black background.
|
||||
The reversed message will be black on red background.
|
||||
.Pp
|
||||
.Dl "options SC_KERNEL_CONS_ATTR"=\&"(FG_LIGHTRED|BG_BLACK)\&"
|
||||
.Dl "options SC_KERNEL_CONS_REV_ATTR"=\&"(FG_BLACK|BG_RED)\&"
|
||||
.Pp
|
||||
The following example adds the font files
|
||||
.Pa cp850-8x16.fnt ,
|
||||
.Pa cp850-8x14.font
|
||||
and
|
||||
.Pa cp850-8x8.font
|
||||
to the kernel.
|
||||
.Pp
|
||||
.Dl "options SC_DFLT_FONT"
|
||||
.Dl "makeoptions SC_DFLT_FONT"=\&"cp850\&"
|
||||
.Dl "device sc0 at isa?
|
||||
.Pp
|
||||
.\".Sh DIAGNOSTICS
|
||||
.\".Sh CAVEATS
|
||||
.Sh BUGS
|
||||
This manual page is incomplete and urgently needs revision.
|
||||
.Sh SEE ALSO
|
||||
.Xr kbdcontrol 1 ,
|
||||
.Xr login 1 ,
|
||||
.Xr vidcontrol 1 ,
|
||||
.Xr atkbd 4 ,
|
||||
.Xr atkbdc 4 ,
|
||||
.Xr keyboard 4 ,
|
||||
.Xr screen 4 ,
|
||||
.Xr splash 4 ,
|
||||
.Xr ukbd 4 ,
|
||||
.Xr vga 4 ,
|
||||
.Xr keymap 5 ,
|
||||
.Xr rc.conf 5 ,
|
||||
.Xr screenmap 5 ,
|
||||
.Xr ttys 5 ,
|
||||
.Xr config 8 ,
|
||||
.Xr getty 8 ,
|
||||
.Xr kldload 8 ,
|
||||
.Xr moused 8 .
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
driver first appeared in
|
||||
.Fx 1.0 .
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm
|
||||
driver was written by
|
||||
.An Søren Schmidt Aq sos@FreeBSD.org .
|
||||
This manual page was written by
|
||||
.An Kazutaka Yokota Aq yokota@FreeBSD.org .
|
@ -1,463 +0,0 @@
|
||||
.\" Copyright (c) 1997
|
||||
.\" John-Mark Gurney. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. Neither the name of the author nor the names of any co-contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY John-Mark Gurney AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
|
||||
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd December 3, 1997
|
||||
.Dt SYSMOUSE 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm sysmouse
|
||||
.\" .Nd supplies mouse data from syscons for other applications
|
||||
.Nd virtualized mouse driver
|
||||
.Sh SYNOPSIS
|
||||
.Fd #include <machine/mouse.h>
|
||||
.Fd #include <machine/console.h>
|
||||
.Sh DESCRIPTION
|
||||
The console driver, in conjunction with the mouse daemon
|
||||
.Xr moused 8 ,
|
||||
supplies mouse data to the user process in the standardized way via the
|
||||
.Nm
|
||||
driver.
|
||||
This arrangement makes it possible for the console and the user process
|
||||
.Pq such as the Tn X\ Window System
|
||||
to share the mouse.
|
||||
.Pp
|
||||
The user process which wants to utilize mouse operation simply opens
|
||||
.Pa /dev/sysmouse
|
||||
with a
|
||||
.Xr open 2
|
||||
call and reads
|
||||
mouse data from the device via
|
||||
.Xr read 2 .
|
||||
Make sure that
|
||||
.Xr moused 8
|
||||
is running, otherwise the user process won't see any data coming from
|
||||
the mouse.
|
||||
.Pp
|
||||
.Ss Operation Levels
|
||||
The
|
||||
.Nm
|
||||
driver has two levels of operation.
|
||||
The current operation level can be referred to and changed via ioctl calls.
|
||||
.Pp
|
||||
The level zero, the basic level, is the lowest level at which the driver
|
||||
offers the basic service to user programs.
|
||||
The
|
||||
.Nm
|
||||
driver
|
||||
provides horizontal and vertical movement of the mouse
|
||||
and state of up to three buttons in the
|
||||
.Tn MouseSystems
|
||||
format as follows.
|
||||
.Pp
|
||||
.Bl -tag -width Byte_1 -compact
|
||||
.It Byte 1
|
||||
.Bl -tag -width bit_7 -compact
|
||||
.It bit 7
|
||||
Always one.
|
||||
.It bit 6..3
|
||||
Always zero.
|
||||
.It bit 2
|
||||
Left button status; cleared if pressed, otherwise set.
|
||||
.It bit 1
|
||||
Middle button status; cleared if pressed, otherwise set. Always one,
|
||||
if the device does not have the middle button.
|
||||
.It bit 0
|
||||
Right button status; cleared if pressed, otherwise set.
|
||||
.El
|
||||
.It Byte 2
|
||||
The first half of horizontal movement count in two's complement;
|
||||
-128 through 127.
|
||||
.It Byte 3
|
||||
The first half of vertical movement count in two's complement;
|
||||
-128 through 127.
|
||||
.It Byte 4
|
||||
The second half of the horizontal movement count in two's complement;
|
||||
-128 through 127. To obtain the full horizontal movement count, add
|
||||
the byte 2 and 4.
|
||||
.It Byte 5
|
||||
The second half of the vertical movement count in two's complement;
|
||||
-128 through 127. To obtain the full vertical movement count, add
|
||||
the byte 3 and 5.
|
||||
.El
|
||||
.Pp
|
||||
At the level one, the extended level, mouse data is encoded
|
||||
in the standard format
|
||||
.Dv MOUSE_PROTO_SYSMOUSE
|
||||
as defined in
|
||||
.Xr mouse 4 .
|
||||
.\" .Ss Acceleration
|
||||
.\" The
|
||||
.\" .Nm
|
||||
.\" driver can somewhat `accelerate' the movement of the pointing device.
|
||||
.\" The faster you move the device, the further the pointer
|
||||
.\" travels on the screen.
|
||||
.\" The driver has an internal variable which governs the effect of
|
||||
.\" the acceleration. Its value can be modified via the driver flag
|
||||
.\" or via an ioctl call.
|
||||
.Sh IOCTLS
|
||||
This section describes two classes of
|
||||
.Xr ioctl 2
|
||||
commands:
|
||||
commands for the
|
||||
.Nm
|
||||
driver itself, and commands for the console and the console control drivers.
|
||||
.Ss Sysmouse Ioctls
|
||||
There are a few commands for mouse drivers.
|
||||
General description of the commands is given in
|
||||
.Xr mouse 4 .
|
||||
Followings are the features specific to the
|
||||
.Nm
|
||||
driver.
|
||||
.Pp
|
||||
.Bl -tag -width MOUSE -compact
|
||||
.It Dv MOUSE_GETLEVEL Ar int *level
|
||||
.It Dv MOUSE_SETLEVEL Ar int *level
|
||||
These commands manipulate the operation level of the mouse driver.
|
||||
.Pp
|
||||
.It Dv MOUSE_GETHWINFO Ar mousehw_t *hw
|
||||
Returns the hardware information of the attached device in the following
|
||||
structure. Only the
|
||||
.Dv iftype
|
||||
field is guaranteed to be filled with the correct value in the current
|
||||
version of the
|
||||
.Nm
|
||||
driver.
|
||||
.Bd -literal
|
||||
typedef struct mousehw {
|
||||
int buttons; /* number of buttons */
|
||||
int iftype; /* I/F type */
|
||||
int type; /* mouse/track ball/pad... */
|
||||
int model; /* I/F dependent model ID */
|
||||
int hwid; /* I/F dependent hardware ID */
|
||||
} mousehw_t;
|
||||
.Ed
|
||||
.Pp
|
||||
The
|
||||
.Dv buttons
|
||||
field holds the number of buttons detected by the driver.
|
||||
.Pp
|
||||
The
|
||||
.Dv iftype
|
||||
is always
|
||||
.Dv MOUSE_IF_SYSMOUSE.
|
||||
.Pp
|
||||
The
|
||||
.Dv type
|
||||
tells the device type:
|
||||
.Dv MOUSE_MOUSE ,
|
||||
.Dv MOUSE_TRACKBALL ,
|
||||
.Dv MOUSE_STICK ,
|
||||
.Dv MOUSE_PAD ,
|
||||
or
|
||||
.Dv MOUSE_UNKNOWN .
|
||||
.Pp
|
||||
The
|
||||
.Dv model
|
||||
is always
|
||||
.Dv MOUSE_MODEL_GENERIC
|
||||
at the operation level 0.
|
||||
It may be
|
||||
.Dv MOUSE_MODEL_GENERIC
|
||||
or one of
|
||||
.Dv MOUSE_MODEL_XXX
|
||||
constants at higher operation levels.
|
||||
.Pp
|
||||
The
|
||||
.Dv hwid
|
||||
is always zero.
|
||||
.Pp
|
||||
.It Dv MOUSE_GETMODE Ar mousemode_t *mode
|
||||
The command gets the current operation parameters of the mouse
|
||||
driver.
|
||||
.Bd -literal
|
||||
typedef struct mousemode {
|
||||
int protocol; /* MOUSE_PROTO_XXX */
|
||||
int rate; /* report rate (per sec) */
|
||||
int resolution; /* MOUSE_RES_XXX, -1 if unknown */
|
||||
int accelfactor; /* acceleration factor */
|
||||
int level; /* driver operation level */
|
||||
int packetsize; /* the length of the data packet */
|
||||
unsigned char syncmask[2]; /* sync. bits */
|
||||
} mousemode_t;
|
||||
.Ed
|
||||
.Pp
|
||||
The
|
||||
.Dv protocol
|
||||
field tells the format in which the device status is returned
|
||||
when the mouse data is read by the user program.
|
||||
It is
|
||||
.Dv MOUSE_PROTO_MSC
|
||||
at the operation level zero.
|
||||
.Dv MOUSE_PROTO_SYSMOUSE
|
||||
at the operation level one.
|
||||
.Pp
|
||||
The
|
||||
.Dv rate
|
||||
is always set to -1.
|
||||
.Pp
|
||||
The
|
||||
.Dv resolution
|
||||
is always set to -1.
|
||||
.Pp
|
||||
The
|
||||
.Dv accelfactor
|
||||
is always 0.
|
||||
.Pp
|
||||
The
|
||||
.Dv packetsize
|
||||
field specifies the length of the data packet. It depends on the
|
||||
operation level.
|
||||
.Pp
|
||||
.Bl -tag -width level_0__ -compact
|
||||
.It Em level 0
|
||||
5 bytes
|
||||
.It Em level 1
|
||||
8 bytes
|
||||
.El
|
||||
.Pp
|
||||
The array
|
||||
.Dv syncmask
|
||||
holds a bit mask and pattern to detect the first byte of the
|
||||
data packet.
|
||||
.Dv syncmask[0]
|
||||
is the bit mask to be ANDed with a byte. If the result is equal to
|
||||
.Dv syncmask[1] ,
|
||||
the byte is likely to be the first byte of the data packet.
|
||||
Note that this method of detecting the first byte is not 100% reliable,
|
||||
thus, should be taken only as an advisory measure.
|
||||
.Pp
|
||||
.It Dv MOUSE_SETMODE Ar mousemode_t *mode
|
||||
The command changes the current operation parameters of the mouse driver
|
||||
as specified in
|
||||
.Ar mode .
|
||||
Only
|
||||
.Dv level
|
||||
may be modifiable. Setting values in the other field does not generate
|
||||
error and has no effect.
|
||||
.\" .Pp
|
||||
.\" .It Dv MOUSE_GETVARS Ar mousevar_t *vars
|
||||
.\" .It Dv MOUSE_SETVARS Ar mousevar_t *vars
|
||||
.\" These commands are not supported by the
|
||||
.\" .Nm
|
||||
.\" driver.
|
||||
.Pp
|
||||
.It Dv MOUSE_READDATA Ar mousedata_t *data
|
||||
.It Dv MOUSE_READSTATE Ar mousedata_t *state
|
||||
These commands are not supported by the
|
||||
.Nm
|
||||
driver.
|
||||
.Pp
|
||||
.It Dv MOUSE_GETSTATUS Ar mousestatus_t *status
|
||||
The command returns the current state of buttons and
|
||||
movement counts in the structure as defined in
|
||||
.Xr mouse 4 .
|
||||
.El
|
||||
.Ss Console and Consolectl Ioctls
|
||||
The user process issues console
|
||||
.Fn ioctl
|
||||
calls to the current virtual console in order to control
|
||||
the mouse pointer.
|
||||
The console
|
||||
.Fn ioctl
|
||||
also provides a method for the user process to receive a
|
||||
.Xr signal 3
|
||||
when a button is pressed.
|
||||
.Pp
|
||||
The mouse daemon
|
||||
.Xr moused 8
|
||||
uses
|
||||
.Fn ioctl
|
||||
calls to the console control device
|
||||
.Pa /dev/consolectl
|
||||
to inform the console of mouse actions including mouse movement
|
||||
and button status.
|
||||
.Pp
|
||||
Both classes
|
||||
.Fn ioctl
|
||||
commands are defined as
|
||||
.Dv CONS_MOUSECTL
|
||||
which takes the following argument.
|
||||
.Bd -literal
|
||||
struct mouse_info {
|
||||
int operation;
|
||||
union {
|
||||
struct mouse_data data;
|
||||
struct mouse_mode mode;
|
||||
struct mouse_event event;
|
||||
} u;
|
||||
};
|
||||
.Ed
|
||||
.Pp
|
||||
.Bl -tag -width operation -compact
|
||||
.It Dv operation
|
||||
This can be one of
|
||||
.Pp
|
||||
.Bl -tag -width MOUSE_MOVEABS -compact
|
||||
.It Dv MOUSE_SHOW
|
||||
Enables and displays mouse cursor.
|
||||
.It Dv MOUSE_HIDE
|
||||
Disables and hides mouse cursor.
|
||||
.It Dv MOUSE_MOVEABS
|
||||
Moves mouse cursor to position supplied in
|
||||
.Dv u.data .
|
||||
.It Dv MOUSE_MOVEREL
|
||||
Adds position supplied in
|
||||
.Dv u.data
|
||||
to current position.
|
||||
.It Dv MOUSE_GETINFO
|
||||
Returns current mouse position in the current virtual console
|
||||
and button status in
|
||||
.Dv u.data .
|
||||
.It Dv MOUSE_MODE
|
||||
This sets the
|
||||
.Xr signal 3
|
||||
to be delivered to the current process when a button is pressed.
|
||||
The signal to be delivered is set in
|
||||
.Dv u.mode .
|
||||
.El
|
||||
.Pp
|
||||
The above operations are for virtual consoles. The operations defined
|
||||
below are for the console control device and used by
|
||||
.Xr moused 8
|
||||
to pass mouse data to the console driver.
|
||||
.Pp
|
||||
.Bl -tag -width MOUSE_MOVEABS -compact
|
||||
.It Dv MOUSE_ACTION
|
||||
.It Dv MOUSE_MOTIONEVENT
|
||||
These operations take the information in
|
||||
.Dv u.data
|
||||
and act upon it. Mouse data will be sent to the
|
||||
.Nm
|
||||
driver if it is open.
|
||||
.Dv MOUSE_ACTION
|
||||
also processes button press actions and sends signal to the process if
|
||||
requested or performs cut and paste operations
|
||||
if the current console is a text interface.
|
||||
.It Dv MOUSE_BUTTONEVENT
|
||||
.Dv u.data
|
||||
specifies a button and its click count. The console driver will
|
||||
use this information for signal delivery if requested or
|
||||
for cut and paste operations if the console is in text mode.
|
||||
.El
|
||||
.Pp
|
||||
.Dv MOUSE_MOTIONEVENT
|
||||
and
|
||||
.Dv MOUSE_BUTTONEVENT
|
||||
are newer interface and are designed to be used together.
|
||||
They are intended to replace functions performed by
|
||||
.Dv MOUSE_ACTION
|
||||
alone.
|
||||
.Pp
|
||||
.It Dv u
|
||||
This union is one of
|
||||
.Pp
|
||||
.Bl -tag -width data -compact
|
||||
.It Dv data
|
||||
.Bd -literal
|
||||
struct mouse_data {
|
||||
int x;
|
||||
int y;
|
||||
int z;
|
||||
int buttons;
|
||||
};
|
||||
.Ed
|
||||
.Pp
|
||||
.Dv x ,
|
||||
.Dv y
|
||||
and
|
||||
.Dv z
|
||||
represent movement of the mouse along respective directions.
|
||||
.Dv buttons
|
||||
tells the state of buttons. It encodes up to 31 buttons in the bit 0 though
|
||||
the bit 30. If a button is held down, the corresponding bit is set.
|
||||
.Pp
|
||||
.It Dv mode
|
||||
.Bd -literal
|
||||
struct mouse_mode {
|
||||
int mode;
|
||||
int signal;
|
||||
};
|
||||
.Ed
|
||||
.Pp
|
||||
The
|
||||
.Dv signal
|
||||
field specifies the signal to be delivered to the process. It must be
|
||||
one of the values defined in
|
||||
.Ao Pa signal.h Ac .
|
||||
The
|
||||
.Dv mode
|
||||
field is currently unused.
|
||||
.Pp
|
||||
.It Dv event
|
||||
.Bd -literal
|
||||
struct mouse_event {
|
||||
int id;
|
||||
int value;
|
||||
};
|
||||
.Ed
|
||||
.Pp
|
||||
The
|
||||
.Dv id
|
||||
field specifies a button number as in
|
||||
.Dv u.data.buttons .
|
||||
Only one bit/button is set.
|
||||
The
|
||||
.Dv value
|
||||
field
|
||||
holds the click count: the number of times the user has clicked the button
|
||||
successively.
|
||||
.Pp
|
||||
.El
|
||||
.El
|
||||
.Sh FILES
|
||||
.Bl -tag -width /dev/consolectl -compact
|
||||
.It Pa /dev/consolectl
|
||||
device to control the console
|
||||
.It Pa /dev/sysmouse
|
||||
virtualized mouse driver
|
||||
.It Pa /dev/ttyv%d
|
||||
virtual consoles
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr vidcontrol 1 ,
|
||||
.Xr ioctl 2 ,
|
||||
.Xr signal 3 ,
|
||||
.Xr mouse 4 ,
|
||||
.Xr moused 8
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
manual page example first appeared in
|
||||
.Fx 2.2 .
|
||||
.Sh AUTHORS
|
||||
This
|
||||
manual page was written by
|
||||
.An John-Mark Gurney Aq gurney_j@efn.org
|
||||
and
|
||||
.An Kazutaka Yokota Aq yokota@FreeBSD.org .
|
@ -1,192 +0,0 @@
|
||||
.\" Copyright (c) 1997, 1998, 1999
|
||||
.\" Bill Paul <wpaul@ctr.columbia.edu>. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by Bill Paul.
|
||||
.\" 4. Neither the name of the author nor the names of any co-contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD
|
||||
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||
.\" THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd March 4, 1999
|
||||
.Dt TI 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm ti
|
||||
.Nd
|
||||
Alteon Networks Tigon I and Tigon II gigabit ethernet driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd "device ti0"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver provides support for PCI gigabit ethernet adapters based on
|
||||
the Alteon Networks Tigon gigabit ethernet controller chip. The Tigon
|
||||
contains an embedded R4000 CPU, gigabit MAC, dual DMA channels and
|
||||
a PCI interface unit. The Tigon II contains two R4000 CPUs and other
|
||||
refinements. Either chip can be used in either a 32-bit or 64-bit PCI
|
||||
slot. Communication with the chip is achieved via PCI shared memory
|
||||
and bus master DMA. The Tigon I and II support hardware multicast
|
||||
address filtering, VLAN tag extraction and insertion, and jumbo
|
||||
ethernet frames sizes up to 9000 bytes. Note that the Tigon I chipset
|
||||
is no longer in active production: all new adapters should come equipped
|
||||
with Tigon II chipsets.
|
||||
.Pp
|
||||
There are several PCI boards available from both Alteon and other
|
||||
vendors that use the Tigon chipset under OEM contract. The
|
||||
.Nm
|
||||
driver has been tested with the following Tigon-based adapters:
|
||||
.Bl -bullet -offset indent
|
||||
.It
|
||||
The Alteon AceNIC V gigabit ethernet adapter
|
||||
.It
|
||||
The 3Com 3c985-SX gigabit ethernet adapter
|
||||
.It
|
||||
The Netgear GA620 gigabit ethernet adapter
|
||||
.El
|
||||
.Pp
|
||||
The following should also be supported but have not yet been tested:
|
||||
.Bl -bullet -offset indent
|
||||
.It
|
||||
The Digital EtherWORKS 1000SX PCI Gigabit Adapter
|
||||
.It
|
||||
Silicon Graphics PCI gigabit ethernet adapter
|
||||
.El
|
||||
.Pp
|
||||
While the Tigon chipset supports 10, 100 and 1000Mbps speeds, support for
|
||||
10 and 100Mbps speeds is only available on boards with the proper
|
||||
transceivers. Most adapters are only designed to work at 1000Mbps,
|
||||
however the driver should support those NICs that work at lower speeds
|
||||
as well.
|
||||
.Pp
|
||||
Support for jumbo frames is provided via the interface MTU setting.
|
||||
Selecting an MTU larger than 1500 bytes with the
|
||||
.Xr ifconfig 8
|
||||
utility configures the adapter to receive and transmit jumbo frames.
|
||||
Using jumbo frames can greatly improve performance for certain tasks,
|
||||
such as file transfers and data streaming.
|
||||
.Pp
|
||||
Support for vlans is also available using the
|
||||
.Xr vlan 4
|
||||
mechanism. See the
|
||||
.Xr vlan 4
|
||||
man page for more details.
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media types:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It autoselect
|
||||
Enable autoselection of the media type and options.
|
||||
The user can manually override
|
||||
the autoselected mode by adding media options to the
|
||||
.Pa /etc/rc.conf
|
||||
file.
|
||||
.It 10baseT/UTP
|
||||
Set 10Mbps operation. The
|
||||
.Ar mediaopt
|
||||
option can also be used to select either
|
||||
.Ar full-duplex
|
||||
or
|
||||
.Ar half-duplex modes.
|
||||
.It 100baseTX
|
||||
Set 100Mbps (fast ethernet) operation. The
|
||||
.Ar mediaopt
|
||||
option can also be used to select either
|
||||
.Ar full-duplex
|
||||
or
|
||||
.Ar half-duplex
|
||||
modes.
|
||||
.It 1000baseSX
|
||||
Set 1000Mbps (gigabit ethernet) operation. Only full
|
||||
.Ar full-duplex
|
||||
mode is supported at this speed.
|
||||
.El
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media options:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It full-duplex
|
||||
Force full duplex operation
|
||||
.It half-duplex
|
||||
Force half duplex operation.
|
||||
.El
|
||||
.Pp
|
||||
For more information on configuring this device, see
|
||||
.Xr ifconfig 8 .
|
||||
.Sh DIAGNOSTICS
|
||||
.Bl -diag
|
||||
.It "ti%d: couldn't map memory"
|
||||
A fatal initialization error has occurred.
|
||||
.It "ti%d: couldn't map interrupt"
|
||||
A fatal initialization error has occurred.
|
||||
.It "ti%d: no memory for softc struct!"
|
||||
The driver failed to allocate memory for per-device instance information
|
||||
during initialization.
|
||||
.It "ti%d: failed to enable memory mapping!"
|
||||
The driver failed to initialize PCI shared memory mapping. This might
|
||||
happen if the card is not in a bus-master slot.
|
||||
.It "ti%d: no memory for jumbo buffers!"
|
||||
The driver failed to allocate memory for jumbo frames during
|
||||
initialization.
|
||||
.It "ti%d: bios thinks we're in a 64 bit slot, but we aren't"
|
||||
The BIOS has programmed the NIC as though it had been installed in
|
||||
a 64-bit PCI slot, but in fact the NIC is in a 32-bit slot. This happens
|
||||
as a result of a bug in some BIOSes. This can be worked around on the
|
||||
Tigon II, but on the Tigon I initialization will fail.
|
||||
.It "ti%d: board self-diagnostics failed!"
|
||||
The ROMFAIL bit in the CPU state register was set after system
|
||||
startup, indicating that the on-board NIC diagnostics failed.
|
||||
.It "ti%d: unknown hwrev"
|
||||
The driver detected a board with an unsupported hardware revision. The
|
||||
.Nm
|
||||
driver supports revision 4 (Tigon 1) and revision 6 (Tigon 2) chips
|
||||
and has firmware only for those devices.
|
||||
.It "ti%d: watchdog timeout"
|
||||
The device has stopped responding to the network, or there is a problem with
|
||||
the network connection (cable).
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr arp 4 ,
|
||||
.Xr netintro 4 ,
|
||||
.Xr vlan 4 ,
|
||||
.Xr ifconfig 8 ,
|
||||
.Rs
|
||||
.%T Alteon Gigabit Ethernet/PCI NIC manuals
|
||||
.%O http://www.alteon.com/support/openkits
|
||||
.Re
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
device driver first appeared in
|
||||
.Fx 3.0 .
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm
|
||||
driver was written by
|
||||
.An Bill Paul Aq wpaul@ctr.columbia.edu .
|
@ -1,127 +0,0 @@
|
||||
.\" Copyright (c) 1997, 1998
|
||||
.\" Bill Paul <wpaul@ctr.columbia.edu>. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by Bill Paul.
|
||||
.\" 4. Neither the name of the author nor the names of any co-contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD
|
||||
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||
.\" THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd May 1, 1998
|
||||
.Dt TL 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm tl
|
||||
.Nd
|
||||
Texas Instruments ThunderLAN ethernet device driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd "device tl0"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver provides support for PCI ethernet adapters based on the Texas
|
||||
Instruments ThunderLAN ethernet controller chip. This includes a large
|
||||
number of Compaq PCI-bus ethernet adapters as well as the integrated
|
||||
ethernet controllers built in to several models of Compaq Prosignia
|
||||
servers and Compaq Deskpro desktop machines. This driver also supports
|
||||
the Olicom OC-2135/2138, OC-2325 and OC-2326 10/100 TX UTP adapters
|
||||
and the Racore 8165 10/100baseTX and 8148 10baseT/100baseTX/100baseFX
|
||||
multi-personality cards.
|
||||
.Pp
|
||||
The ThunderLAN controller has a standard MII interface that supports
|
||||
up to 32 physical interface devices (PHYs). It also has a built-in
|
||||
10baseT PHY hardwired at MII address 31, which may be used in some
|
||||
10Mbps-only hardware configurations. In 100Mbps configurations, a
|
||||
National Semiconductor DP83840A or other MII-compliant PHY may be
|
||||
attached to the ThunderLAN's MII bus. If a DP83840A or equivalent
|
||||
is available, the ThunderLAN chip can operate at either 100Mbps or
|
||||
10Mbps in either half-duplex or full-duplex modes. The ThunderLAN's
|
||||
built-in PHY and the DP83840A also support autonegotiation.
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media types:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It autoselect
|
||||
Enable autoselection of the media type and options. Note that this
|
||||
option is only available on those PHYs that support autonegotiation.
|
||||
Also, the PHY will not advertise those modes that have been explcitly
|
||||
disabled using the following media options.
|
||||
.It 10baseT/UTP
|
||||
Set 10Mbps operation
|
||||
.It 100baseTX
|
||||
Set 100Mbps (fast ethernet) operation
|
||||
.It 10base5/AUI
|
||||
Enable AUI/BNC interface (useful only with the built-in PHY).
|
||||
.El
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media options:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It full-duplex
|
||||
Force full duplex operation
|
||||
.It half-duplex
|
||||
Force half duplex operation.
|
||||
.It hw-loopback
|
||||
Enable hardware loopback mode.
|
||||
.El
|
||||
.Pp
|
||||
Note that the 100baseTX media type is only available if supported
|
||||
by the PHY.
|
||||
For more information on configuring this device, see
|
||||
.Xr ifconfig 8 .
|
||||
.Sh DIAGNOSTICS
|
||||
.Bl -diag
|
||||
.It "tl%d: couldn't map memory"
|
||||
A fatal initialization error has occurred.
|
||||
.It "tl%d: couldn't map interrupt"
|
||||
A fatal initialization error has occurred.
|
||||
.It "tl%d: device timeout"
|
||||
The device has stopped responding to the network, or there is a problem with
|
||||
the network connection (cable).
|
||||
.It "tl%d: no memory for rx list"
|
||||
The driver failed to allocate an mbuf for the receiver ring.
|
||||
.It "tl%d: no memory for tx list"
|
||||
The driver failed to allocate an mbuf for the transmitter ring when
|
||||
allocating a pad buffer or collapsing an mbuf chain into a cluster.
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr arp 4 ,
|
||||
.Xr netintro 4 ,
|
||||
.Xr ifconfig 8
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
device driver first appeared in
|
||||
.Fx 2.2 .
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm
|
||||
driver was written by
|
||||
.An Bill Paul Aq wpaul@ctr.columbia.edu .
|
@ -1,70 +0,0 @@
|
||||
.\" Copyright (c) 1999
|
||||
.\" Nick Hibma <hibma@skylink.it>. All rights reserved.
|
||||
.\"
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by Bill Paul.
|
||||
.\" 4. Neither the name of the author nor the names of any co-contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY NICK HIBMA AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL NICK HIBMA OR THE VOICES IN HIS HEAD
|
||||
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||
.\" THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd February 21, 1999
|
||||
.Dt UHCI 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm uhci
|
||||
.Nd
|
||||
UHCI USB Host Controller Driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd "controller uhci0"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver provides support for UHCI-type PCI based USB controllers. This
|
||||
includes
|
||||
.Bl -tag -width xxxxx
|
||||
.It Intel 82371AB/EB (PIIX4)
|
||||
.It Intel 82371SB (PIIX3)
|
||||
.It VIA 83C572
|
||||
.El
|
||||
|
||||
or any other UHCI v1.1 compliant controller.
|
||||
.Sh SEE ALSO
|
||||
.Xr ohci 4
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
device driver first appeared in
|
||||
.Fx 3.0 .
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm
|
||||
driver was written by
|
||||
.An Lennart Augustsson Aq augustss@carlstedt.se
|
||||
for the
|
||||
.Nx
|
||||
project.
|
@ -1,168 +0,0 @@
|
||||
.\" Copyright (c) 1997, 1998
|
||||
.\" Nick Hibma <hibma@skylink.it>. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by Bill Paul.
|
||||
.\" 4. Neither the name of the author nor the names of any co-contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY NICK HIBMA AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL NICK HIBMA OR THE VOICES IN HIS HEAD
|
||||
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||
.\" THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd April 11, 1999
|
||||
.Dt UKBD 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm ukbd
|
||||
.Nd USB keyboard driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd "device ukbd0"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver provides support for keyboards that attach to the USB port.
|
||||
.Nm usb
|
||||
and one of
|
||||
.Nm uhci
|
||||
or
|
||||
.Nm ohci
|
||||
must be configured in the kernel as well.
|
||||
.Sh CONFIGURATION
|
||||
By default the keyboard subsystem does not create the appropriate devices yet.
|
||||
Make sure you configure compile the kernel with the following option in the
|
||||
kernel config file:
|
||||
.Bd -literal -offset indent
|
||||
options "KBD_INSTALL_CDEV"
|
||||
.Ed
|
||||
.Pp
|
||||
Go to /dev and make device nodes kbd*:
|
||||
.Bd -literal -offset indent
|
||||
sh MAKEDEV kbd0 kbd1
|
||||
.Ed
|
||||
.Pp
|
||||
If both an AT keyboard as well as USB keyboards are used at the same time, the
|
||||
AT keyboard will appear as kbd0 in /dev. The USB keyboards will be kbd1, kbd2,
|
||||
etc. You can see some information about the keyboard with the following command:
|
||||
.Bd -literal -offset indent
|
||||
kbdcontrol -i < /dev/kbd1
|
||||
.Ed
|
||||
.Pp
|
||||
or load a keymap with
|
||||
.Bd -literal -offset indent
|
||||
kbdcontrol -l keymaps/pt.iso < /dev/kbd1
|
||||
.Ed
|
||||
.Pp
|
||||
See
|
||||
.Nm kbcontrol
|
||||
for more possible options.
|
||||
.Pp
|
||||
You can swap console keyboards by using the command
|
||||
.Bd -literal -offset indent
|
||||
kbdcontrol -k /dev/kbd1
|
||||
.Ed
|
||||
.Pp
|
||||
From this point on onwards the first USB keyboard will be the keyboard
|
||||
to be used as the console.
|
||||
.Pp
|
||||
If you want to use a USB keyboard as your default and not use an AT keyboard at
|
||||
all, you will have to remove the
|
||||
.Nm atkbd0
|
||||
from the kernel configuration file. Because of the order of the device
|
||||
initialisation, the USB keyboard will be detected AFTER the console driver
|
||||
initialises itself and you have to explicitly tellthe console
|
||||
driver to use the existence of the USB keyboard. This can be done in
|
||||
one of the following two ways.
|
||||
.Pp
|
||||
Run the following command as a part of system initialization:
|
||||
.Bd -literal -offset indent
|
||||
kbdcontrol -k /dev/kbd0 < /dev/ttyv0 > /dev/null
|
||||
.Ed
|
||||
.Pp
|
||||
(Note that as the USB keyboard is the only keyboard, it is accessed as
|
||||
/dev/kbd0) or otherwise tell the console driver to periodically look for a
|
||||
keyboard by setting a flag in the kernel configuration file:
|
||||
.Bd -literal -offset indent
|
||||
device sc0 at isa? flags 0x100
|
||||
.Ed
|
||||
.Pp
|
||||
With the above flag, the console driver will try to detect any
|
||||
keyboard in the system if it didn't detect one while it was
|
||||
initialized at boot time.
|
||||
.Sh DRIVER CONFIGURATION
|
||||
.Bd -literal -offset indent
|
||||
options "KBD_INSTALL_CDEV"
|
||||
.Ed
|
||||
.Pp
|
||||
Make the keyboards available through a character device in /dev
|
||||
.Bd -literal -offset indent
|
||||
options "UKBD_DFLT_KEYMAP"
|
||||
makeoptions "UKBD_DFLT_KEYMAP=fr.iso"
|
||||
.Ed
|
||||
.Pp
|
||||
The above lines will put the French ISO keymap in the ukbd driver.
|
||||
You can specify any keymap in /usr/share/syscons/keymaps with this
|
||||
option.
|
||||
.Bd -literal -offset indent
|
||||
options "KBD_DISABLE_KEYMAP_LOADING"
|
||||
.Ed
|
||||
.Pp
|
||||
Don't allow the user to change the keymap. Note that this options
|
||||
also has effect on the AT keyboard driver `atkbd'.
|
||||
.Sh FILES
|
||||
.Bl -tag -width /dev/kbd0 -compact
|
||||
.It Pa /dev/kbd*
|
||||
blocking device nodes
|
||||
.Sh EXAMPLE
|
||||
.Bd -literal -offset indent
|
||||
device ukbd0
|
||||
.Ed
|
||||
.Pp
|
||||
Add the
|
||||
.Nm ukbd
|
||||
driver to the kernel.
|
||||
.Sh SEE ALSO
|
||||
.Xr kbdcontrol 1 ,
|
||||
.Xr ohci 4 ,
|
||||
.Xr syscons 4 ,
|
||||
.Xr uhci 4 ,
|
||||
.Xr usb 4 ,
|
||||
.Xr config 8
|
||||
.\".Sh HISTORY
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm ukbd
|
||||
driver was written by
|
||||
.An Lennart Augustsson Aq augustss@cs.chalmers.se
|
||||
for
|
||||
.Nx
|
||||
and was substantially rewritten for
|
||||
.Fx
|
||||
by
|
||||
.An Kazutaka YOKOTA Aq yokota@zodiac.mech.utsunomiya-u.ac.jp .
|
||||
.Pp
|
||||
This manual page was written by
|
||||
.An Nick Hibma Aq hibma@skylink.it
|
||||
with a large amount of input from
|
||||
.An Kazutaka YOKOTA Aq yokota@zodiac.mech.utsunomiya-u.ac.jp .
|
@ -1,104 +0,0 @@
|
||||
.\" Copyright (c) 1999
|
||||
.\" Nick Hibma <hibma@skylink.it>. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by Bill Paul.
|
||||
.\" 4. Neither the name of the author nor the names of any co-contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY NICK HIBMA AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL NICK HIBMA OR THE VOICES IN HIS HEAD
|
||||
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||
.\" THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd May 3, 1999
|
||||
.Dt UMASS 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm umass
|
||||
.Nd USB Mass Storage Devices Driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd "controller umass0"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver provides support for Mass Storage devices that attach to the USB
|
||||
port. Supported are
|
||||
.Bl -tag -compact -width xxxxxx
|
||||
.It Iomega Zip 100 drive
|
||||
.El
|
||||
.Nm usb
|
||||
and one of
|
||||
.Nm uhci
|
||||
or
|
||||
.Nm ohci
|
||||
must be configured in the kernel as well. Last but not least, support for
|
||||
SCSI drives,
|
||||
.Nm da
|
||||
.Sh EXAMPLE
|
||||
.Dl controller umass0
|
||||
.Dl controller scbus0
|
||||
.Dl device da0
|
||||
.Dl device pass0
|
||||
.Pp
|
||||
Add the
|
||||
.Nm umass
|
||||
driver to the kernel.
|
||||
.Pp
|
||||
.Dl camcontrol rescan 0
|
||||
.Pp
|
||||
Rescan a Zip drive that was added after boot. The command above
|
||||
assumes that the Zip drive is the first SCSI bus in the system.
|
||||
.Pp
|
||||
.Dl disklabel -w -r da0 zip100
|
||||
.Dl newfs da0c
|
||||
.Dl mount -t ufs /dev/da0c /mnt
|
||||
.Pp
|
||||
Write a disklabel to the Zip drive (see
|
||||
.Nm vpo
|
||||
for the
|
||||
.Nm disktab
|
||||
entry), creates the filesystem and mounts the new filesystem on /mnt.
|
||||
.Pp
|
||||
.Dl newfs_msdos /dev/da0
|
||||
.Pp
|
||||
Create a new FAT type filesystem.
|
||||
.Sh SEE ALSO
|
||||
.Xr ohci 4 ,
|
||||
.Xr uhci 4 ,
|
||||
.Xr usb 4 ,
|
||||
.Xr vpo 4 ,
|
||||
.Xr disktab 5 ,
|
||||
.Xr camcontrol 8 ,
|
||||
.Xr disklabel 8
|
||||
.\".Sh HISTORY
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm umass
|
||||
driver was written by
|
||||
.An MAEKAWA Masahide Aq bishop@rr.iij4u.or.jp
|
||||
and
|
||||
.An Nick Hibma Aq hibma@skylink.it .
|
||||
.Pp
|
||||
This manual page was written by
|
||||
.An Nick Hibma Aq hibma@skylink.it .
|
@ -1,123 +0,0 @@
|
||||
.\" Copyright (c) 1999
|
||||
.\" Nick Hibma <hibma@skylink.it>. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by Bill Paul.
|
||||
.\" 4. Neither the name of the author nor the names of any co-contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY NICK HIBMA AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL NICK HIBMA OR THE VOICES IN HIS HEAD
|
||||
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||
.\" THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd April 11, 1999
|
||||
.Dt UMS 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm ums
|
||||
.Nd USB mouse driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd "device ums0"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver provides support for mice that attach to the USB port. Supported are
|
||||
mice with any number of buttons and mice with a wheel.
|
||||
.Nm usb
|
||||
and one of
|
||||
.Nm uhci
|
||||
or
|
||||
.Nm ohci
|
||||
must be configured in the kernel as well.
|
||||
.Pp
|
||||
The /dev/ums device presents the mouse as a
|
||||
.Ar sysmouse
|
||||
or
|
||||
.Ar mousesystems
|
||||
type device. See
|
||||
.Nm moused
|
||||
for an explanation of these mouse types.
|
||||
.Sh FILES
|
||||
.Bl -tag -width /dev/ums0 -compact
|
||||
.It Pa /dev/ums0
|
||||
blocking device node
|
||||
.Sh EXAMPLE
|
||||
.Dl device ums0
|
||||
.Pp
|
||||
Add the
|
||||
.Nm ums
|
||||
driver to the kernel.
|
||||
.Pp
|
||||
.Dl moused -p /dev/ums0 -t auto
|
||||
.Pp
|
||||
Use the first
|
||||
.Nm USB
|
||||
mouse on the system as your console mouse.
|
||||
.Pp
|
||||
Change the "Pointer" section in
|
||||
.Nm XF86Config
|
||||
to the following
|
||||
.Pp
|
||||
.Dl Device "/dev/ums0"
|
||||
.Dl Protocol "Auto"
|
||||
.Pp
|
||||
to be able to use the USB mouse under X. When using the XiG accelerated X
|
||||
server, change the mouse device to /dev/ums0 and the mouse type to
|
||||
"MouseSystems".
|
||||
.Pp
|
||||
If you want to be able to use the mouse in both virtual consoles as well
|
||||
as in X change it to:
|
||||
.Pp
|
||||
.Dl Device "/dev/sysmouse"
|
||||
.Dl Protocol "Auto"
|
||||
.Pp
|
||||
For XFree86 3.3.1 the entry should be:
|
||||
.Pp
|
||||
.Dl Device "/dev/sysmouse"
|
||||
.Dl Protocol "MouseSystems"
|
||||
.Pp
|
||||
.Sh SEE ALSO
|
||||
.Xr ohci 4 ,
|
||||
.Xr sysmouse 4 ,
|
||||
.Xr uhci 4 ,
|
||||
.Xr usb 4 ,
|
||||
.Xr XF86Config 5 ,
|
||||
.Xr moused 8
|
||||
.\".Sh HISTORY
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm ums
|
||||
driver was written by
|
||||
.An Lennart Augustsson Aq augustss@cs.chalmers.se
|
||||
for
|
||||
.Nx
|
||||
and was adopted for
|
||||
.Fx
|
||||
by
|
||||
.An MAEKAWA Masahide Aq bishop@rr.iij4u.or.jp .
|
||||
.Pp
|
||||
This manual page was written by
|
||||
.An Nick Hibma Aq hibma@skylink.it
|
||||
with input from
|
||||
.An Kazutaka YOKOTA Aq yokota@zodiac.mech.utsunomiya-u.ac.jp .
|
@ -1,298 +0,0 @@
|
||||
.\" Copyright (c) 1997, 1998
|
||||
.\" Nick Hibma <hibma@skylink.it>. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by Bill Paul.
|
||||
.\" 4. Neither the name of the author nor the names of any co-contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY NICK HIBMA AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL NICK HIBMA OR THE VOICES IN HIS HEAD
|
||||
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||
.\" THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd February 21, 1999
|
||||
.Dt USB 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm usb
|
||||
.Nd Universal Serial Bus
|
||||
.Sh SYNOPSIS
|
||||
.Cd "controller usb0"
|
||||
.Sh DESCRIPTION
|
||||
.Fx
|
||||
provides machine-independent bus support and drivers for
|
||||
.Tn USB
|
||||
devices.
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver has three layers: the controller, the bus, and the
|
||||
device layer. The controller attaches to a physical bus
|
||||
(like
|
||||
.Xr pci 4 ).
|
||||
The
|
||||
.Tn USB
|
||||
bus attaches to the controller and the root hub attaches
|
||||
to the controller.
|
||||
Any devices attached to the bus will attach to the root hub
|
||||
or another hub attached to the USB bus.
|
||||
.Pp
|
||||
The
|
||||
.Nm uhub
|
||||
device will always be present as it is needed for the
|
||||
root hub.
|
||||
.Pp
|
||||
.Sh INTRODUCTION TO USB
|
||||
The
|
||||
.Tn USB
|
||||
is a 12 Mb/s serial bus (1.5 Mb/s for low speed devices).
|
||||
Each
|
||||
.Tn USB
|
||||
has a host controller that is the master of the bus;
|
||||
all other devices on the bus only speak when spoken to.
|
||||
.Pp
|
||||
There can be up to 127 devices (apart from the host controller)
|
||||
on a bus, each with its own address.
|
||||
The addresses are assigned
|
||||
dynamically by the host when each device is attached to the bus.
|
||||
.Pp
|
||||
Within each device there can be up to 16 endpoints.
|
||||
Each endpoint
|
||||
is individually addressed and the addresses are static.
|
||||
Each of these endpoints will communicate in one of four different modes:
|
||||
control, isochronous, bulk, or interrupt.
|
||||
A device always has at least one endpoint.
|
||||
This endpoint has address 0 and is a control
|
||||
endpoint and is used to give commands to and extract basic data,
|
||||
such as descriptors, from the device.
|
||||
Each endpoint, except the control endpoint, is unidirectional.
|
||||
.Pp
|
||||
The endpoints in a device are grouped into interfaces.
|
||||
An interface is a logical unit within a device; e.g.
|
||||
a compound device with both a keyboard and a trackball would present
|
||||
one interface for each.
|
||||
An interface can sometimes be set into different modes,
|
||||
called alternate settings, which affects how it operates.
|
||||
Different alternate settings can have different endpoints
|
||||
within it.
|
||||
.Pp
|
||||
A device may operate in different configurations.
|
||||
Depending on the
|
||||
configuration the device may present different sets of endpoints
|
||||
and interfaces.
|
||||
.Pp
|
||||
Each device located on a hub has several
|
||||
.Xr config 8
|
||||
locators:
|
||||
.Bl -tag -compact -width xxxxxx
|
||||
.It Cd port
|
||||
this is the number of the port on the closest upstream hub.
|
||||
.It Cd configuration
|
||||
this is the configuration the device must be in for this driver to attach.
|
||||
This locator does not set the configuration; it is iterated by the bus
|
||||
enumeration.
|
||||
.It Cd interface
|
||||
this is the interface number within a device that an interface driver
|
||||
attaches to.
|
||||
.El
|
||||
.Pp
|
||||
The bus enumeration of the
|
||||
.Tn USB
|
||||
bus proceeds in several steps:
|
||||
.Bl -enum
|
||||
.It
|
||||
Any device specific driver can to attach to the device.
|
||||
.It
|
||||
If none is found, any device class specific driver can attach.
|
||||
.It
|
||||
If none is found, all configurations are iterated over.
|
||||
For each configuration all the interface are iterated over and interface
|
||||
drivers can attach.
|
||||
If any interface driver attached in a certain
|
||||
configuration the iteration over configurations is stopped.
|
||||
.It
|
||||
If still no drivers have been found, the generic
|
||||
.Tn USB
|
||||
driver can attach.
|
||||
.El
|
||||
.Sh USB CONTROLLER INTERFACE
|
||||
Use the following to get access to the
|
||||
.Tn USB
|
||||
specific structurs and defines.
|
||||
.Bd -literal
|
||||
#include <sys/dev/usb.h>
|
||||
.Ed
|
||||
.Pp
|
||||
The
|
||||
.Pa /dev/usbN
|
||||
can be opened and a few operations can be performed on it.
|
||||
The
|
||||
.Xr poll 2
|
||||
system call will say that I/O is possible on the controller device when a
|
||||
.Tn USB
|
||||
device has been connected or disconnected to the bus.
|
||||
.Pp
|
||||
The following
|
||||
.Xr ioctl 2
|
||||
commands are supported on the controller device:
|
||||
.Bl -tag -width xxxxxx
|
||||
.It Dv USB_DISCOVER
|
||||
This command will cause a complete bus discovery to be initiated.
|
||||
If any devices attached or detached from the bus they will be
|
||||
processed during this command.
|
||||
This is the only way that new devices are found on the bus.
|
||||
.It Dv USB_DEVICEINFO Fa "struct usb_device_info"
|
||||
This command can be used to retrieve some information about a device
|
||||
on the bus.
|
||||
The
|
||||
.Va addr
|
||||
field should be filled before the call and the other fields will
|
||||
be filled by information about the device on that address.
|
||||
Should no such device exist an error is reported.
|
||||
.Bd -literal
|
||||
struct usb_device_info {
|
||||
uByte addr; /* device address */
|
||||
char product[USB_MAX_STRING_LEN];
|
||||
char vendor[USB_MAX_STRING_LEN];
|
||||
char revision[8];
|
||||
uByte class;
|
||||
uByte config;
|
||||
uByte lowspeed;
|
||||
int power;
|
||||
int nports;
|
||||
uByte ports[16];
|
||||
#define USB_PORT_ENABLED 0xff
|
||||
#define USB_PORT_SUSPENDED 0xfe
|
||||
#define USB_PORT_POWERED 0xfd
|
||||
#define USB_PORT_DISABLED 0xfc
|
||||
};
|
||||
.Ed
|
||||
.Pp
|
||||
The
|
||||
.Va product ,
|
||||
.Va vendor ,
|
||||
and
|
||||
.Va revision
|
||||
fields contain self-explanatory descriptions of the device.
|
||||
.Pp
|
||||
The
|
||||
.Va class
|
||||
field contains the device class.
|
||||
.Pp
|
||||
The
|
||||
.Va config
|
||||
field shows the current configuration of the device.
|
||||
.Pp
|
||||
The
|
||||
.Va lowspeed
|
||||
field
|
||||
is set if the device is a
|
||||
.Tn USB
|
||||
low speed device.
|
||||
.Pp
|
||||
The
|
||||
.Va power
|
||||
field shows the power consumption in milli-amps drawn at 5 volts,
|
||||
or zero if the device is self powered.
|
||||
.Pp
|
||||
If the device is a hub the
|
||||
.Va nports
|
||||
field is non-zero and the
|
||||
.Va ports
|
||||
field contains the addresses of the connected devices.
|
||||
If no device is connected to a port one of the
|
||||
.Va USB_PORT_*
|
||||
values indicates its status.
|
||||
.It Dv USB_DEVICESTATS Fa "struct usb_device_stats"
|
||||
This command retrieves statistics about the controller.
|
||||
.Bd -literal
|
||||
struct usb_device_stats {
|
||||
u_long requests[4];
|
||||
};
|
||||
.Ed
|
||||
.Pp
|
||||
The
|
||||
.Va requests
|
||||
field is indexed by the transfer kind, i.e.
|
||||
.Va UE_* ,
|
||||
and indicates how many transfers of each kind that has been completed
|
||||
by the controller.
|
||||
.It Dv USB_REQUEST Fa "struct usb_ctl_request"
|
||||
This command can be used to execute arbitrary requests on the control pipe.
|
||||
This is
|
||||
.Em DANGEROUS
|
||||
and should be used with great care since it
|
||||
can destroy the bus integrity.
|
||||
.El
|
||||
.Pp
|
||||
The include file
|
||||
.Aq Pa dev/usb/usb.h
|
||||
contains definitions for the types used by the various
|
||||
.Xr ioctl 2
|
||||
calls.
|
||||
The naming convention of the fields for the various
|
||||
.Tn USB
|
||||
descriptors exactly follows the naming in the
|
||||
.Tn USB
|
||||
specification.
|
||||
Byte sized fields can be accessed directly, but word (16 bit)
|
||||
sized fields must be access by the
|
||||
.Fn UGETW field
|
||||
and
|
||||
.Fn USETW field value
|
||||
macros to handle byte order and alignment properly.
|
||||
.Pp
|
||||
The include file
|
||||
.Aq Pa dev/usb/usbhid.h
|
||||
similarly contains the definitions for
|
||||
Human Interface Devices
|
||||
.Pq Tn HID .
|
||||
.Sh SEE ALSO
|
||||
The
|
||||
.Tn USB
|
||||
specifications can be found at
|
||||
.Dv http://www.usb.org/developers/docs.htm .
|
||||
.Pp
|
||||
.Xr pci 4 ,
|
||||
.Xr ohci 4 ,
|
||||
.Xr ugen 4 ,
|
||||
.Xr uhci 4 ,
|
||||
.Xr uhid 4 ,
|
||||
.Xr ukbd 4 ,
|
||||
.Xr ulpt 4 ,
|
||||
.Xr ums 4 ,
|
||||
.Xr usbd 8 ,
|
||||
.Xr usbdevs 8
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
driver first appeared in
|
||||
.Fx 3.0 .
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm
|
||||
driver was written by
|
||||
.An Lennart Augustsson Aq augustss@carlstedt.se
|
||||
for the
|
||||
.Nx
|
||||
project.
|
@ -1,170 +0,0 @@
|
||||
.\"
|
||||
.\" Copyright (c) 1999
|
||||
.\" Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer as
|
||||
.\" the first lines of this file unmodified.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||
.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||
.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd June 30, 1999
|
||||
.Dt VGA 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm vga
|
||||
.Nd
|
||||
generic video card interface
|
||||
.Sh SYNOPSIS
|
||||
.Cd "options VESA"
|
||||
.Cd "options VESA_DEBUG=N"
|
||||
.Cd "options VGA_ALT_SEQACCESS"
|
||||
.Cd "options VGA_NO_FONT_LOADING"
|
||||
.Cd "options VGA_NO_MODE_CHANGE"
|
||||
.Cd "options VGA_SLOW_IOACCESS"
|
||||
.Cd "options VGA_WIDTH90"
|
||||
.Cd "device vga0 at isa? port ? conflicts"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver is a generic video card driver which provides access to
|
||||
video cards. This driver is required for the console driver
|
||||
.Xr syscons 4 .
|
||||
The console driver will call the
|
||||
.Nm
|
||||
driver to manipulate video hardware (changing video modes, loading font, etc).
|
||||
.Pp
|
||||
The keyword
|
||||
.Em conflicts
|
||||
is required, as the video card may use I/O ports in the same range
|
||||
as other drivers.
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the standard video cards: MDA, CGA, EGA and VGA. In
|
||||
addition, the driver can utilize VESA BIOS extensions if the video card
|
||||
supports them. VESA support can either be statically included in the kernel
|
||||
or can be loaded as a separate module.
|
||||
.Pp
|
||||
In order to statically link the VESA support to the kernel, the
|
||||
.Em VESA
|
||||
option (see below) must be defined in the kernel configuration file.
|
||||
.Pp
|
||||
The
|
||||
.Nm vesa
|
||||
module can be dynamically loaded into the kernel using
|
||||
.Xr kldload 8 .
|
||||
.Sh DRIVER CONFIGURATION
|
||||
.Ss Kernel Configuration Options
|
||||
The following kernel configuration options
|
||||
.Pq see Xr config 8
|
||||
can be used to control the
|
||||
.Nm
|
||||
driver.
|
||||
These options provide compatibility with certain VGA cards.
|
||||
.Bl -tag -width MOUSE
|
||||
.It Em VGA_ALT_SEQACCESS
|
||||
You may want to try this option if the mouse pointer is not drawn correctly
|
||||
or the font does not seem to be loaded properly on the VGA card.
|
||||
However, it may cause flicker on some systems.
|
||||
.It Em VGA_SLOW_IOACCESS
|
||||
Older VGA cards may require this option for proper operation.
|
||||
It makes the driver perform byte-wide I/O to VGA registers and
|
||||
slow down a little.
|
||||
.It Em VGA_WIDTH90
|
||||
This option enables 90 column modes: 90x25, 90x30, 90x43, 90x50, 90x60.
|
||||
These modes are not always supported by the video card and the display.
|
||||
It is highly likely that LCD display cannot work with these modes.
|
||||
.El
|
||||
.Pp
|
||||
The following options add optional features to the driver.
|
||||
.Bl -tag -width MOUSE
|
||||
.It Em VESA
|
||||
Add VESA BIOS support to the driver.
|
||||
If the VGA card has the VESA BIOS extension 1.2 or later,
|
||||
this option will utilize the VESA BIOS service to switch to high
|
||||
resolution modes.
|
||||
.It Em VESA_DEBUG=N
|
||||
Set the VESA support debug level to
|
||||
.Fa N .
|
||||
The default value is zero, which suppresses all debugging output.
|
||||
.El
|
||||
.Pp
|
||||
The following options will remove some features from the
|
||||
.Nm
|
||||
driver and save kernel memory.
|
||||
.Bl -tag -width MOUSE
|
||||
.It Em VGA_NO_FONT_LOADING
|
||||
The
|
||||
.Nm
|
||||
driver can load software font to EGA and VGA cards.
|
||||
This option removes this feature.
|
||||
.It Em VGA_NO_MODE_CHANGE
|
||||
This option prevents the driver from changing video modes.
|
||||
.El
|
||||
.\".Sh FILES
|
||||
.Sh EXAMPLE
|
||||
Your kernel configuration should normally have:
|
||||
.Pp
|
||||
.Dl "device vga0 at isa? port ? conflicts"
|
||||
.Pp
|
||||
The following lines should be included in the kernel configuration file
|
||||
in order to enable the VESA BIOS Extension support.
|
||||
.Pp
|
||||
.Dl "options VESA"
|
||||
.Dl "device vga0 at isa? port ? conflicts"
|
||||
.Pp
|
||||
If you do not want VESA support included in the kernel, but
|
||||
want to use occasionally, do not add the
|
||||
.Em VESA
|
||||
option. And load the
|
||||
.Nm vesa
|
||||
module as desired:
|
||||
.Pp
|
||||
.Dl kldload vesa
|
||||
.Pp
|
||||
.\".Sh DIAGNOSTICS
|
||||
.\".Sh CAVEATS
|
||||
.\".Sh BUGS
|
||||
.Sh SEE ALSO
|
||||
.Xr syscons 4 ,
|
||||
.Xr config 8 ,
|
||||
.Xr kldload 8 ,
|
||||
.Xr kldunload 8 .
|
||||
.Sh STANDARD
|
||||
.Rs
|
||||
.%T "VESA BIOS Extension (VBE)"
|
||||
.%A Video Electronics Standards Association
|
||||
.Re
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
driver first appeared in
|
||||
.Fx 3.1 .
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm
|
||||
driver was written by
|
||||
.An Søren Schmidt Aq sos@FreeBSD.org
|
||||
and
|
||||
.An Kazutaka Yokota Aq yokota@FreeBSD.org .
|
||||
This manual page was written by
|
||||
.An Kazutaka Yokota .
|
@ -1,165 +0,0 @@
|
||||
.\" Copyright (c) 1997, 1998
|
||||
.\" Bill Paul <wpaul@ctr.columbia.edu>. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by Bill Paul.
|
||||
.\" 4. Neither the name of the author nor the names of any co-contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD
|
||||
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||
.\" THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd November 22, 1998
|
||||
.Dt VR 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm vr
|
||||
.Nd
|
||||
VIA Technologies VT3043 and VT86C100A ethernet device driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd "device vr0"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver provides support for PCI ethernet adapters and embedded
|
||||
controllers based on the VIA Technologies VT3043 Rhine I and
|
||||
VT86C100A Rhine II fast ethernet controller chips. This includes
|
||||
the D-Link DFE530-TX, the Hawking Technologies PN102TX, the
|
||||
AOpen/Acer ALN-320, and various other commodity fast ethernet
|
||||
cards.
|
||||
.Pp
|
||||
The VIA Rhine chips use bus master DMA and have a descriptor layout
|
||||
designed to resemble that of the DEC 21x4x "tulip" chips. The register
|
||||
layout is different however and the receive filter in the Rhine chips
|
||||
is much simpler and is programmed through registers rather than by
|
||||
downloading a special setup frame through the transmit DMA engine.
|
||||
Transmit and receive DMA buffers must be longword
|
||||
aligned. The Rhine chips are meant to be interfaced with external
|
||||
physical layer devices via an MII bus. They support both
|
||||
10 and 100Mbps speeds in either full or half duplex.
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media types:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It autoselect
|
||||
Enable autoselection of the media type and options.
|
||||
The user can manually override
|
||||
the autoselected mode by adding media options to the
|
||||
.Pa /etc/rc.conf
|
||||
file.
|
||||
.It 10baseT/UTP
|
||||
Set 10Mbps operation. The
|
||||
.Ar mediaopt
|
||||
option can also be used to select either
|
||||
.Ar full-duplex
|
||||
or
|
||||
.Ar half-duplex modes.
|
||||
.It 100baseTX
|
||||
Set 100Mbps (fast ethernet) operation. The
|
||||
.Ar mediaopt
|
||||
option can also be used to select either
|
||||
.Ar full-duplex
|
||||
or
|
||||
.Ar half-duplex
|
||||
modes.
|
||||
.El
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media options:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It full-duplex
|
||||
Force full duplex operation
|
||||
.It half-duplex
|
||||
Force half duplex operation.
|
||||
.El
|
||||
.Pp
|
||||
Note that the 100baseTX media type is only available if supported
|
||||
by the adapter.
|
||||
For more information on configuring this device, see
|
||||
.Xr ifconfig 8 .
|
||||
.Sh DIAGNOSTICS
|
||||
.Bl -diag
|
||||
.It "vr%d: couldn't map memory"
|
||||
A fatal initialization error has occurred.
|
||||
.It "vr%d: couldn't map interrupt"
|
||||
A fatal initialization error has occurred.
|
||||
.It "vr%d: watchdog timeout"
|
||||
The device has stopped responding to the network, or there is a problem with
|
||||
the network connection (cable).
|
||||
.It "vr%d: no memory for rx list"
|
||||
The driver failed to allocate an mbuf for the receiver ring.
|
||||
.It "vr%d: no memory for tx list"
|
||||
The driver failed to allocate an mbuf for the transmitter ring when
|
||||
allocating a pad buffer or collapsing an mbuf chain into a cluster.
|
||||
.It "vr%d: chip is in D3 power state -- setting to D0"
|
||||
This message applies only to adapters which support power
|
||||
management. Some operating systems place the controller in low power
|
||||
mode when shutting down, and some PCI BIOSes fail to bring the chip
|
||||
out of this state before configuring it. The controller loses all of
|
||||
its PCI configuration in the D3 state, so if the BIOS does not set
|
||||
it back to full power mode in time, it won't be able to configure it
|
||||
correctly. The driver tries to detect this condition and bring
|
||||
the adapter back to the D0 (full power) state, but this may not be
|
||||
enough to return the driver to a fully operational condition. If
|
||||
you see this message at boot time and the driver fails to attach
|
||||
the device as a network interface, you will have to perform second
|
||||
warm boot to have the device properly configured.
|
||||
.Pp
|
||||
Note that this condition only occurs when warm booting from another
|
||||
operating system. If you power down your system prior to booting
|
||||
.Fx ,
|
||||
the card should be configured correctly.
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr arp 4 ,
|
||||
.Xr netintro 4 ,
|
||||
.Xr ifconfig 8
|
||||
.Rs
|
||||
.%T The VIA Technologies VT86C100A data sheet
|
||||
.%O http://www.via.com.tw
|
||||
.Re
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
device driver first appeared in
|
||||
.Fx 3.0 .
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm
|
||||
driver was written by
|
||||
.An Bill Paul Aq wpaul@ctr.columbia.edu .
|
||||
.Sh BUGS
|
||||
The
|
||||
.Nm
|
||||
driver always copies transmit mbuf chains into longword-aligned
|
||||
buffers prior to transmission in order to pacify the Rhine chips.
|
||||
If buffers are not aligned correctly, the chip will round the
|
||||
supplied buffer address and begin DMAing from the wrong location.
|
||||
This buffer copying impairs transmit performance on slower systems but can't
|
||||
be avoided. On faster machines (e.g. a Pentium II), the performance
|
||||
impact is much less noticable.
|
@ -1,159 +0,0 @@
|
||||
.\" Copyright (c) 1997, 1998
|
||||
.\" Bill Paul <wpaul@ctr.columbia.edu>. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by Bill Paul.
|
||||
.\" 4. Neither the name of the author nor the names of any co-contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD
|
||||
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||
.\" THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd November 4, 1998
|
||||
.Dt WB 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm wb
|
||||
.Nd
|
||||
Winbond W89C840F fast ethernet device driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd "device wb0"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver provides support for PCI ethernet adapters and embedded
|
||||
controllers based on the Winbond W89C840F fast ethernet controller
|
||||
chip. This includes the Trendware TE100-PCIE and various other cheap
|
||||
boards. The 840F should not be confused with the 940F, which is
|
||||
an NE2000 clone and only supports 10Mbps speeds.
|
||||
.Pp
|
||||
The Winbond controller uses bus master DMA and is designed to be
|
||||
a DEC 'tulip' workalike. It differs from the standard DEC design
|
||||
in several ways: the control and status registers are spaced 4
|
||||
bytes apart instead of 8, and the receive filter is programmed through
|
||||
registers rather than by downloading a special setup frame via
|
||||
the transmit DMA engine. Using an external PHY, the Winbond chip
|
||||
supports both 10 and 100Mbps speeds in either full or half duplex.
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media types:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It autoselect
|
||||
Enable autoselection of the media type and options. This is only
|
||||
supported if the PHY chip attached to the Winbond controller
|
||||
supports NWAY autonegotiation. The user can manually override
|
||||
the autoselected mode by adding media options to the
|
||||
.Pa /etc/rc.conf
|
||||
file.
|
||||
.It 10baseT/UTP
|
||||
Set 10Mbps operation. The
|
||||
.Ar mediaopt
|
||||
option can also be used to select either
|
||||
.Ar full-duplex
|
||||
or
|
||||
.Ar half-duplex modes.
|
||||
.It 100baseTX
|
||||
Set 100Mbps (fast ethernet) operation. The
|
||||
.Ar mediaopt
|
||||
option can also be used to select either
|
||||
.Ar full-duplex
|
||||
or
|
||||
.Ar half-duplex
|
||||
modes.
|
||||
.El
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media options:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It full-duplex
|
||||
Force full duplex operation
|
||||
.It half-duplex
|
||||
Force half duplex operation.
|
||||
.El
|
||||
.Pp
|
||||
Note that the 100baseTX media type is only available if supported
|
||||
by the adapter.
|
||||
For more information on configuring this device, see
|
||||
.Xr ifconfig 8 .
|
||||
.Sh DIAGNOSTICS
|
||||
.Bl -diag
|
||||
.It "wb%d: couldn't map memory"
|
||||
A fatal initialization error has occurred.
|
||||
.It "wb%d: couldn't map interrupt"
|
||||
A fatal initialization error has occurred.
|
||||
.It "wb%d: watchdog timeout"
|
||||
The device has stopped responding to the network, or there is a problem with
|
||||
the network connection (cable).
|
||||
.It "wb%d: no memory for rx list"
|
||||
The driver failed to allocate an mbuf for the receiver ring.
|
||||
.It "wb%d: no memory for tx list"
|
||||
The driver failed to allocate an mbuf for the transmitter ring when
|
||||
allocating a pad buffer or collapsing an mbuf chain into a cluster.
|
||||
.It "wb%d: chip is in D3 power state -- setting to D0"
|
||||
This message applies only to adapters which support power
|
||||
management. Some operating systems place the controller in low power
|
||||
mode when shutting down, and some PCI BIOSes fail to bring the chip
|
||||
out of this state before configuring it. The controller loses all of
|
||||
its PCI configuration in the D3 state, so if the BIOS does not set
|
||||
it back to full power mode in time, it won't be able to configure it
|
||||
correctly. The driver tries to detect this condition and bring
|
||||
the adapter back to the D0 (full power) state, but this may not be
|
||||
enough to return the driver to a fully operational condition. If
|
||||
you see this message at boot time and the driver fails to attach
|
||||
the device as a network interface, you will have to perform second
|
||||
warm boot to have the device properly configured.
|
||||
.Pp
|
||||
Note that this condition only occurs when warm booting from another
|
||||
operating system. If you power down your system prior to booting
|
||||
.Fx ,
|
||||
the card should be configured correctly.
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr arp 4 ,
|
||||
.Xr netintro 4 ,
|
||||
.Xr ifconfig 8
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
device driver first appeared in
|
||||
.Fx 3.0 .
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm
|
||||
driver was written by
|
||||
.An Bill Paul Aq wpaul@ctr.columbia.edu .
|
||||
.Sh BUGS
|
||||
The Winbond chip seems to behave strangely in some cases when the
|
||||
link partner switches modes. If for example both sides are set to
|
||||
10Mbps half-duplex, and the other end is changed to 100Mbps
|
||||
full-duplex, the Winbond's receiver suddenly starts writing trash
|
||||
all over the RX descriptors. The
|
||||
.Nm
|
||||
driver handles this by forcing a reset of both the controller
|
||||
chip and attached PHY. This is drastic, but it appears to be the
|
||||
only way to recover properly from this condition.
|
@ -1,177 +0,0 @@
|
||||
.\" Copyright (c) 1997, 1998
|
||||
.\" Bill Paul <wpaul@ctr.columbia.edu>. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by Bill Paul.
|
||||
.\" 4. Neither the name of the author nor the names of any co-contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD
|
||||
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||
.\" THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd August 16, 1998
|
||||
.Dt XL 4 i386
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm xl
|
||||
.Nd
|
||||
3Com Etherlink XL and Fast Etherlink XL ethernet device driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd "device xl0"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver provides support for PCI ethernet adapters and embedded
|
||||
controllers based on the 3Com "boomerang" and "cyclone" bus-master
|
||||
Etherlink XL chips. This includes the 3c900-TP, 3c900-COMBO, 3c905-TX,
|
||||
3c905-T4, 3c905B-TP, 3c905B-T4 and 3c905B-TX, and embedded 3c905-TX
|
||||
and 3c905B-TX ethernet hardware in certain Dell Optiplex and Dell
|
||||
Precision desktop machines, and certain Dell Latitude laptop docking
|
||||
stations.
|
||||
.Pp
|
||||
The Etherlink XL chips support built-in 10baseT, 10base2 and 10base5
|
||||
transceivers as well as an MII bus for externally attached PHY
|
||||
transceivers. The 3c905 series typically uses a National Semiconductor
|
||||
NS 83840A 10/100 PHY for 10/100 Mbps support in full or half-duplex.
|
||||
The 3c905B adapters have built-in autonegotiation logic mapped onto
|
||||
the MII for compatibility with previous drivers. Fast Etherlink XL
|
||||
adapters such as the 3c905-TX and 3c905B-TX are capable of 10 or
|
||||
100Mbps data rates in either full or half duplex and can be manually
|
||||
configured for any supported mode or automatically negotiate the highest
|
||||
possible mode with a link partner.
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media types:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It autoselect
|
||||
Enable autoselection of the media type and options. Note that this
|
||||
option is only available with the 3c905 and 3c905B adapters with
|
||||
external PHYs or built-in autonegotiation logic. For 3c900 adapters,
|
||||
the driver will choose the mode specified in the EEPROM. The user can
|
||||
change this by adding media options to the
|
||||
.Pa /etc/rc.conf
|
||||
file.
|
||||
.It 10baseT/UTP
|
||||
Set 10Mbps operation. The
|
||||
.Ar mediaopt
|
||||
option can also be used to select either
|
||||
.Ar full-duplex
|
||||
or
|
||||
.Ar half-duplex modes.
|
||||
.It 100baseTX
|
||||
Set 100Mbps (fast ethernet) operation. The
|
||||
.Ar mediaopt
|
||||
option can abso be used to select either
|
||||
.Ar full-duplex
|
||||
or
|
||||
.Ar half-duplex modes.
|
||||
.It 10base5/AUI
|
||||
Enable AUI transceiver (available only on COMBO cards).
|
||||
.It 10base2/BNC
|
||||
Enable BNC coax transceiver (available only on COMBO cards).
|
||||
.El
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports the following media options:
|
||||
.Pp
|
||||
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||||
.It full-duplex
|
||||
Force full duplex operation
|
||||
.It half-duplex
|
||||
Force half duplex operation.
|
||||
.El
|
||||
.Pp
|
||||
Note that the 100baseTX media type is only available if supported
|
||||
by the adapter.
|
||||
For more information on configuring this device, see
|
||||
.Xr ifconfig 8 .
|
||||
.Sh DIAGNOSTICS
|
||||
.Bl -diag
|
||||
.It "xl%d: couldn't map memory"
|
||||
A fatal initialization error has occurred.
|
||||
.It "xl%d: couldn't map interrupt"
|
||||
A fatal initialization error has occurred.
|
||||
.It "xl%d: device timeout"
|
||||
The device has stopped responding to the network, or there is a problem with
|
||||
the network connection (cable).
|
||||
.It "xl%d: no memory for rx list"
|
||||
The driver failed to allocate an mbuf for the receiver ring.
|
||||
.It "xl%d: no memory for tx list"
|
||||
The driver failed to allocate an mbuf for the transmitter ring when
|
||||
allocating a pad buffer or collapsing an mbuf chain into a cluster.
|
||||
.It "xl%d: command never completed!"
|
||||
Some commands issued to the 3c90x ASIC take time to complete: the
|
||||
driver is supposed to wait until the 'command in progress' bit in
|
||||
the status register clears before continuing. In rare instances, this
|
||||
bit may not clear. To avoid getting caught in an infinite wait loop,
|
||||
the driver only polls the bit for a finite number of times before
|
||||
giving up, at which point it issues this message. This message may
|
||||
be printed during driver initialization on slower machines. If you
|
||||
see this message but the driver continues to function normally, the
|
||||
message can probably be ignored.
|
||||
.It "xl%d: chip is in D3 power state -- setting to D0"
|
||||
This message applies only to 3c905B adapters, which support power
|
||||
management. Some operating systems place the 3c905B in low power
|
||||
mode when shutting down, and some PCI BIOSes fail to bring the chip
|
||||
out of this state before configuring it. The 3c905B loses all of
|
||||
its PCI configuration in the D3 state, so if the BIOS does not set
|
||||
it back to full power mode in time, it won't be able to configure it
|
||||
correctly. The driver tries to detect this condition and bring
|
||||
the adapter back to the D0 (full power) state, but this may not be
|
||||
enough to return the driver to a fully operational condition. If
|
||||
you see this message at boot time and the driver fails to attach
|
||||
the device as a network interface, you will have to perform second
|
||||
warm boot to have the device properly configured.
|
||||
.Pp
|
||||
Note that this condition only occurs when warm booting from another
|
||||
operating system. If you power down your system prior to booting
|
||||
.Fx ,
|
||||
the card should be configured correctly.
|
||||
.It "xl%d: WARNING: no media options bits set in the media options register!"
|
||||
This warning may appear when using the driver on some Dell Latitude
|
||||
docking stations with built-in 3c905-TX adapters. For whatever the
|
||||
reason, the 'MII available' bit in the media options register on
|
||||
this particular equipment is not set, even though it should be (the
|
||||
3c905-TX always uses an external PHY transceiver). The driver will
|
||||
attempt to guess the proper media type based on the PCI device ID
|
||||
word. The driver makes a lot of noise about this condition because
|
||||
the author considers it a manufacturing defect.
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr arp 4 ,
|
||||
.Xr netintro 4 ,
|
||||
.Xr ifconfig 8
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
device driver first appeared in
|
||||
.Fx 3.0 .
|
||||
.Sh AUTHORS
|
||||
The
|
||||
.Nm
|
||||
driver was written by
|
||||
.An Bill Paul Aq wpaul@ctr.columbia.edu .
|
Loading…
x
Reference in New Issue
Block a user