diff options
author | imp <imp@FreeBSD.org> | 2004-10-07 16:25:21 +0000 |
---|---|---|
committer | imp <imp@FreeBSD.org> | 2004-10-07 16:25:21 +0000 |
commit | 0d30f6aba945db1c6c52389c46ab66f602652ddd (patch) | |
tree | 1d19b4640ee57418dfd0d45a7c2f060c1d598253 | |
parent | 03e8fdc42185a26d87ad1d9fbd0e5480167f2d79 (diff) | |
download | FreeBSD-src-0d30f6aba945db1c6c52389c46ab66f602652ddd.zip FreeBSD-src-0d30f6aba945db1c6c52389c46ab66f602652ddd.tar.gz |
Ooops. Forgot the man page for pbio.4 in my port from RELENG_4.
-rw-r--r-- | share/man/man4/man4.i386/Makefile | 1 | ||||
-rw-r--r-- | share/man/man4/man4.i386/pbio.4 | 181 |
2 files changed, 182 insertions, 0 deletions
diff --git a/share/man/man4/man4.i386/Makefile b/share/man/man4/man4.i386/Makefile index 7513a8a..56402e0 100644 --- a/share/man/man4/man4.i386/Makefile +++ b/share/man/man4/man4.i386/Makefile @@ -30,6 +30,7 @@ MAN= acpi_asus.4 \ ndis.4 \ npx.4 \ pae.4 \ + pbio.4 \ pcf.4 \ perfmon.4 \ pnp.4 \ diff --git a/share/man/man4/man4.i386/pbio.4 b/share/man/man4/man4.i386/pbio.4 new file mode 100644 index 0000000..39a0b83 --- /dev/null +++ b/share/man/man4/man4.i386/pbio.4 @@ -0,0 +1,181 @@ +.\" Copyright (c) 2000-2002 +.\" Diomidis D. Spinellis, Athens, Greece +.\" 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 Diomidis D. Spinellis ``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 Diomidis D. Spinellis 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 19, 2003 +.Dt PBIO 4 i386 +.Os +.Sh NAME +.Nm pbio +.Nd 8255 parallel peripheral interface basic +.Tn I/O +driver +.Sh SYNOPSIS +.Cd "device pbio0 at isa? port 0x360" +.In machine/pbioio.h +.Sh DESCRIPTION +The +.Xr pbio 4 +driver supports direct access to the Intel 8255A programmable +peripheral interface (PPI) chip running in mode 0 (simple +.Tn I/O ) . +Such an interface provides 24 digital +.Tn I/O +lines. +The driver is designed for performing +.Tn I/O +under program control using +peripherals such as the +.Tn Advantech +.Tn PCL-724 +card, which emulates the Intel 8255A PPI in mode 0. +Other 8255A-based peripherals such as the +.Tn BMC +Messsysteme +.Tn PIO24II +card have also been reported to work. +.Pp +The PPI provides two 8-bit ports (port A and port B) and +two 4-bit ports (port C upper, port C lower). +Each port can be individually programmed for input and +(latched) output, +and appears at a different offset of the device's base +.Tn I/O +address. +.Pp +A separate register allows the configuration of ports for input +or output. +The device is so simple, that reliably probing for it when +input data arrives at its terminals is impossible; +therefore the kernel configuration has to specify the +device's base address. +The device driver provides four character devices that +correspond to the peripheral's +.Tn I/O +ports. +Opening a device for read or write, automatically configures +the corresponding hardware port for input or output. +At boot time all ports are set configured for input to avoid damaging +external circuitry. +.Pp +A set of +.Xr ioctl 2 +requests allow polled input and paced output to be +efficiently performed at the driver level without expensive +user/kernel context switching. +The driver can perform +.Tn I/O +in three different ways: +.Bl -tag -width Differential +.It Basic +The read or write operation returns immediately after reading +or writing the data to the port at bus speed. +.It Paced +Data is transferred from or to the port at intervals specified +by a separate +.Xr ioctl 2 +call. +.It Differential +(Input only.) +Only port values that differ from the previous port value are returned. +.El +.Pp +The pacing interval is specified in +.Em Hz +unit increments. +Setting a pace of +.Sy n +seconds +will result in no more than one value being read or written every +.Sy n +seconds. +Single byte read/write opeations will take at least +.Sy n +seconds to complete. +.Pp +The following +.Xr ioctl 2 +calls are supported: +.Bl -tag -width "PBIO_SETIPACE" +.It Dv PBIO_SETDIFF +accepts a pointer to an integer as the third argument, +and sets the driver for differential input if the integer is non-zero. +The input pace speed determines the periodic interval the driver will use to +examine the port for a changed value. +.It Dv PBIO_GETDIFF +accepts a pointer to an integer as the third argument, +and sets the integer to the last set value for differential input. +.It Dv PBIO_SETIPACE +accepts a pointer to an integer as the third argument, +and sets the driver's input pacing speed to the value of that integer. +.It Dv PBIO_GETIPACE +accepts a pointer to an integer as the third argument, +and sets the integer to the last set value for the input pace. +.It Dv PBIO_SETOPACE +accepts a pointer to an integer as the third argument, +and sets the driver's output pacing speed to the value of that integer. +.It Dv PBIO_GETOPACE +accepts a pointer to an integer as the third argument, +and sets the integer to the last set value for the output pace. +.El +.Sh FILES +.Bl -tag -width "/dev/pbioxxx" +.It Pa /dev/pbio0a +Port A (8 bit +.Tn I/O ) . +.It Pa /dev/pbio0b +Port B (8 bit +.Tn I/O ) . +.It Pa /dev/pbio0ch +Port C upper (4 bit +.Tn I/O ) . +.It Pa /dev/pbio0cl +Port C lower (4 bit +.Tn I/O ) . +.El +.Sh SEE ALSO +.Rs +.%A "Diomidis Spinellis" +.%T "The information furnace: Consolidated home control" +.%D "2003" +.%J "Personal and Ubiquitous Computing" +.%N 1 +.%V 7 +.%P "53-69" +.Re +.Sh HISTORY +The +.Nm +device was first used under +.Fx 4.1 . +.Sh AUTHOR +.An "Diomidis D. Spinellis" Aq dds@aueb.gr +.Sh BUGS +One of the +.Tn PCL-724 +card's inputs can optionally be wired to generate an interrupt. +This feature is not supported. |