|
Packit |
d36e9b |
.\" Title: ieee1284_get_irq_fd
|
|
Packit |
d36e9b |
.\" Author: Tim Waugh <twaugh@redhat.com>
|
|
Packit |
d36e9b |
.\" Generator: DocBook XSL Stylesheets v1.72.0 <http://docbook.sf.net/>
|
|
Packit |
d36e9b |
.\" Date: 09/18/2007
|
|
Packit |
d36e9b |
.\" Manual: Functions
|
|
Packit |
d36e9b |
.\" Source:
|
|
Packit |
d36e9b |
.\"
|
|
Packit |
d36e9b |
.TH "IEEE1284_GET_IRQ_FD" "3" "09/18/2007" "" "Functions"
|
|
Packit |
d36e9b |
.\" disable hyphenation
|
|
Packit |
d36e9b |
.nh
|
|
Packit |
d36e9b |
.\" disable justification (adjust text to left margin only)
|
|
Packit |
d36e9b |
.ad l
|
|
Packit |
d36e9b |
.SH "NAME"
|
|
Packit |
d36e9b |
ieee1284_get_irq_fd, ieee1284_clear_irq \- interrupt notification
|
|
Packit |
d36e9b |
.SH "SYNOPSIS"
|
|
Packit |
d36e9b |
.sp
|
|
Packit |
d36e9b |
.ft B
|
|
Packit |
d36e9b |
.nf
|
|
Packit |
d36e9b |
#include <ieee1284.h>
|
|
Packit |
d36e9b |
.fi
|
|
Packit |
d36e9b |
.ft
|
|
Packit |
d36e9b |
.HP 24
|
|
Packit |
d36e9b |
.BI "int ieee1284_get_irq_fd(struct\ parport\ *" "port" ");"
|
|
Packit |
d36e9b |
.HP 23
|
|
Packit |
d36e9b |
.BI "int ieee1284_clear_irq(struct\ parport\ *" "port" ",\ unsigned\ int\ *" "count" ");"
|
|
Packit |
d36e9b |
.SH "DESCRIPTION"
|
|
Packit |
d36e9b |
.PP
|
|
Packit |
d36e9b |
If the
|
|
Packit |
d36e9b |
\fIport\fR
|
|
Packit |
d36e9b |
has a configured interrupt line and the port type supports interrupt notification, it is possible to obtain a file descriptor that may be used for
|
|
Packit |
d36e9b |
\fBselect\fR(2)
|
|
Packit |
d36e9b |
or
|
|
Packit |
d36e9b |
\fBpoll\fR(2). Any event (readable, writable or exception) means that an interrupt has been triggered. No operations other than
|
|
Packit |
d36e9b |
\fBselect\fR
|
|
Packit |
d36e9b |
or
|
|
Packit |
d36e9b |
\fBpoll\fR
|
|
Packit |
d36e9b |
may be performed on the file descriptor.
|
|
Packit |
d36e9b |
.PP
|
|
Packit |
d36e9b |
The port must be open in order to call
|
|
Packit |
d36e9b |
\fBieee1284_get_irq_fd\fR, and must be claimed when using
|
|
Packit |
d36e9b |
\fBselect\fR
|
|
Packit |
d36e9b |
or
|
|
Packit |
d36e9b |
\fBpoll\fR.
|
|
Packit |
d36e9b |
.PP
|
|
Packit |
d36e9b |
The caller must not close the file descriptor, and may not use it at all when the port is not claimed.
|
|
Packit |
d36e9b |
.PP
|
|
Packit |
d36e9b |
When an interrupt has been detected, the caller must call
|
|
Packit |
d36e9b |
\fBieee1284_clear_irq\fR
|
|
Packit |
d36e9b |
to clear the interrupt condition, at which point the number of interrupts raised can be obtained by supplying a non\-\fBNULL\fR
|
|
Packit |
d36e9b |
\fIcount\fR.
|
|
Packit |
d36e9b |
.SH "RETURN VALUE"
|
|
Packit |
d36e9b |
.PP
|
|
Packit |
d36e9b |
For
|
|
Packit |
d36e9b |
\fBieee1284_get_irq_fd\fR: If the return value is negative then it is an error code listed below. Otherwise it is a valid file descriptor.
|
|
Packit |
d36e9b |
.PP
|
|
Packit |
d36e9b |
\fBE1284_NOTAVAIL\fR
|
|
Packit |
d36e9b |
.RS 4
|
|
Packit |
d36e9b |
No such file descriptor is available.
|
|
Packit |
d36e9b |
.RE
|
|
Packit |
d36e9b |
.PP
|
|
Packit |
d36e9b |
\fBE1284_INVALIDPORT\fR
|
|
Packit |
d36e9b |
.RS 4
|
|
Packit |
d36e9b |
The
|
|
Packit |
d36e9b |
\fIport\fR
|
|
Packit |
d36e9b |
parameter is invalid (for instance, perhaps the
|
|
Packit |
d36e9b |
\fIport\fR
|
|
Packit |
d36e9b |
is not open).
|
|
Packit |
d36e9b |
.RE
|
|
Packit |
d36e9b |
.PP
|
|
Packit |
d36e9b |
For
|
|
Packit |
d36e9b |
\fBieee1284_clear_irq\fR:
|
|
Packit |
d36e9b |
.PP
|
|
Packit |
d36e9b |
\fBE1284_OK\fR
|
|
Packit |
d36e9b |
.RS 4
|
|
Packit |
d36e9b |
The interrupt has been cleared. If
|
|
Packit |
d36e9b |
\fIcount\fR
|
|
Packit |
d36e9b |
was not
|
|
Packit |
d36e9b |
\fBNULL\fR
|
|
Packit |
d36e9b |
the count of interrupts has been atomically stored to
|
|
Packit |
d36e9b |
\fIcount\fR
|
|
Packit |
d36e9b |
and reset.
|
|
Packit |
d36e9b |
.RE
|
|
Packit |
d36e9b |
.PP
|
|
Packit |
d36e9b |
\fBE1284_NOTAVAIL\fR
|
|
Packit |
d36e9b |
.RS 4
|
|
Packit |
d36e9b |
The
|
|
Packit |
d36e9b |
\fIcount\fR
|
|
Packit |
d36e9b |
parameter was not
|
|
Packit |
d36e9b |
\fBNULL\fR
|
|
Packit |
d36e9b |
but interrupt counting is not supported on this type of port. The interrupt has been cleared.
|
|
Packit |
d36e9b |
.RE
|
|
Packit |
d36e9b |
.PP
|
|
Packit |
d36e9b |
\fBE1284_SYS\fR
|
|
Packit |
d36e9b |
.RS 4
|
|
Packit |
d36e9b |
There was a problem clearing the interrupt.
|
|
Packit |
d36e9b |
.RE
|
|
Packit |
d36e9b |
.PP
|
|
Packit |
d36e9b |
\fBE1284_INVALIDPORT\fR
|
|
Packit |
d36e9b |
.RS 4
|
|
Packit |
d36e9b |
The
|
|
Packit |
d36e9b |
\fIport\fR
|
|
Packit |
d36e9b |
parameter is invalid (for instance, perhaps the
|
|
Packit |
d36e9b |
\fIport\fR
|
|
Packit |
d36e9b |
is not claimed).
|
|
Packit |
d36e9b |
.RE
|
|
Packit |
d36e9b |
.SH "AUTHOR"
|
|
Packit |
d36e9b |
.PP
|
|
Packit |
d36e9b |
\fBTim Waugh\fR <\&twaugh@redhat.com\&>
|
|
Packit |
d36e9b |
.sp -1n
|
|
Packit |
d36e9b |
.IP "" 4
|
|
Packit |
d36e9b |
Author.
|
|
Packit |
d36e9b |
.SH "COPYRIGHT"
|
|
Packit |
d36e9b |
Copyright \(co 2001\-2003 Tim Waugh
|
|
Packit |
d36e9b |
.br
|
|
Packit |
d36e9b |
|