1IEEE1284_OPEN(3)                   Functions                  IEEE1284_OPEN(3)
2
3
4

NAME

6       ieee1284_open - open a port
7

SYNOPSIS

9       #include <ieee1284.h>
10
11       int ieee1284_open(struct parport *port, int flags, int *capabilities);
12

DESCRIPTION

14       In order to begin using a port it must be opened. Any initial set-up of
15       the port is done at this stage. When an open port is no longer needed
16       it should be closed with ieee1284_close(3).
17
18       The possible flags are:
19
20       F1284_EXCL
21           This device cannot share the port with any other device. If this is
22           the case it must be declared at this stage, so that other drivers
23           trying to access the port know not to bother; otherwise they will
24           wait until this driver releases the port, i.e. never.
25
26           The iopl/dev-port access methods don't support this yet, but the
27           ppdev ones do.
28
29       If capabilities is not NULL it must point to storage for an int, which
30       will be treated as a set of flags, one per bit, which the library sets
31       or clears as appropriate. If a capability is present it will be used
32       when asked for. They are:
33
34       CAP1284_RAW
35           Pin-level access is available. If this capability is present then
36           the following functions are effective: ieee1284_write_data,
37           ieee1284_read_status, ieee1284_wait_status, ieee1284_write_control,
38           ieee1284_read_control, ieee1284_frob_control.
39
40       CAP1284_NIBBLE
41           There is an implementation of nibble mode for this port.
42
43       CAP1284_BYTE
44           There is an implementation of byte mode for this port.
45
46       CAP1284_COMPAT
47           There is an implementation of compatibility mode for this port.
48
49       CAP1284_ECP
50           There is a hardware implementation of ECP mode for this port.
51
52       CAP1284_ECPRLE
53           There is an RLE-aware implementation of ECP mode for this port (the
54           F1284_RLE flag is recognised by the ECP transfer functions).
55
56       CAP1284_ECPSWE
57           There is a software implementation of ECP mode for this port.
58
59       CAP1284_BECP
60           There is an implementation of bounded ECP mode for this port.
61
62       CAP1284_EPP
63           There is a hardware implementation of EPP mode for this port.
64
65       CAP1284_EPPSWE
66           There is a software implementation of EPP mode for this port.
67
68       CAP1284_IRQ
69           An interrupt line is configured for this port and interrupt
70           notifications can be received using ieee1284_get_irq_fd(3).
71
72       CAP1284_DMA
73           A DMA channel is configured for this port.
74

RETURN VALUE

76       E1284_OK
77           The port is now opened.
78
79       E1284_INIT
80           There was a problem during port initialization. This could be
81           because another driver has opened the port exclusively, or some
82           other reason.
83
84       E1284_NOMEM
85           There is not enough memory.
86
87       E1284_NOTAVAIL
88           One or more of the supplied flags is not supported by this type of
89           port.
90
91       E1284_INVALIDPORT
92           The port parameter is invalid (for instance, the port may already
93           be open).
94
95       E1284_SYS
96           There was a problem at the operating system level. The global
97           variable errno has been set appropriately.
98

SEE ALSO

100       ieee1284_close(3)
101

AUTHOR

103       Tim Waugh <twaugh@redhat.com>
104           Author.
105
107       Copyright © 2001-2003 Tim Waugh
108
109
110
111[FIXME: source]                   08/18/2021                  IEEE1284_OPEN(3)
Impressum