OSDN Git Service

(split) LDP: Update original to LDP v3.65
[linuxjm/LDP_man-pages.git] / original / man2 / outb.2
index df6449f..9fb771f 100644 (file)
@@ -1,9 +1,8 @@
-.\" Hey Emacs! This file is -*- nroff -*- source.
-.\"
 .\" Copyright (c) 1995 Paul Gortmaker
 .\" (gpg109@rsphy1.anu.edu.au)
 .\" Wed Nov 29 10:58:54 EST 1995
 .\"
+.\" %%%LICENSE_START(GPLv2+_DOC_FULL)
 .\" This is free documentation; you can redistribute it and/or
 .\" modify it under the terms of the GNU General Public License as
 .\" published by the Free Software Foundation; either version 2 of
 .\" GNU General Public License for more details.
 .\"
 .\" You should have received a copy of the GNU General Public
-.\" License along with this manual; if not, write to the Free
-.\" Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111,
-.\" USA.
-.\"
+.\" License along with this manual; if not, see
+.\" <http://www.gnu.org/licenses/>.
+.\" %%%LICENSE_END
 .\"
-.TH OUTB 2 1995-11-29 "Linux" "Linux Programmer's Manual"
+.TH OUTB 2 2012-12-31 "Linux" "Linux Programmer's Manual"
 .SH NAME
 outb, outw, outl, outsb, outsw, outsl,
 inb, inw, inl, insb, insw, insl,
 outb_p, outw_p, outl_p, inb_p, inw_p, inl_p \- port I/O
+.SH SYNOPSIS
+.nf
+.B #include <sys/io.h>
+
+.BI "unsigned char inb(unsigned short int " port );
+.BI "unsigned char inb_p(unsigned short int " port );
+.BI "unsigned short int inw(unsigned short int " port );
+.BI "unsigned short int inw_p(unsigned short int " port );
+.BI "unsigned int inl(unsigned short int " port );
+.BI "unsigned int inl_p(unsigned short int " port );
+
+.BI "void outb(unsigned char " value ", unsigned short int " port );
+.BI "void outb_p(unsigned char " value ", unsigned short int " port );
+.BI "void outw(unsigned short int " value ", unsigned short int " port );
+.BI "void outw_p(unsigned short int " value ", unsigned short int " port );
+.BI "void outl(unsigned int " value ", unsigned short int " port );
+.BI "void outl_p(unsigned int " value ", unsigned short int " port );
+
+.BI "void insb(unsigned short int " port ", void *" addr ,
+.BI "           unsigned long int " count );
+.BI "void insw(unsigned short int " port ", void *" addr ,
+.BI "           unsigned long int " count );
+.BI "void insl(unsigned short int " port ", void *" addr ,
+.BI "           unsigned long int " count );
+.BI "void outsb(unsigned short int " port ", const void *" addr ,
+.BI "           unsigned long int " count );
+.BI "void outsw(unsigned short int " port ", const void *" addr ,
+.BI "           unsigned long int " count );
+.BI "void outsl(unsigned short int " port ", const void *" addr ,
+.BI "           unsigned long int " count );
+.fi
 .SH DESCRIPTION
 This family of functions is used to do low-level port input and output.
 The out* functions do port output, the in* functions do port input;
@@ -42,7 +71,7 @@ but can be used from user space.
 .\" in addition to that given in
 .\" .BR outb (9).
 
-You compile with \fB\-O\fP or \fB\-O2\fP or similar.
+You must compile with \fB\-O\fP or \fB\-O2\fP or similar.
 The functions
 are defined as inline macros, and will not be substituted in without
 optimization enabled, causing unresolved references at link time.
@@ -55,7 +84,7 @@ to tell the kernel to allow the user space application to access the
 I/O ports in question.
 Failure to do this will cause the application
 to receive a segmentation fault.
-.SH "CONFORMING TO"
+.SH CONFORMING TO
 .BR outb ()
 and friends are hardware-specific.
 The
@@ -64,6 +93,14 @@ argument is passed first and the
 .I port
 argument is passed second,
 which is the opposite order from most DOS implementations.
-.SH "SEE ALSO"
+.SH SEE ALSO
 .BR ioperm (2),
 .BR iopl (2)
+.SH COLOPHON
+This page is part of release 3.65 of the Linux
+.I man-pages
+project.
+A description of the project,
+and information about reporting bugs,
+can be found at
+\%http://www.kernel.org/doc/man\-pages/.