[CPORTLIB/FREELDR]
[reactos.git] / reactos / include / reactos / libs / cportlib / cportlib.h
1 /*
2 * PROJECT: ReactOS ComPort Library
3 * LICENSE: BSD - See COPYING.ARM in the top level directory
4 * FILE: include/reactos/lib/cportlib/cportlib.h
5 * PURPOSE: Header for the ComPort Library
6 * PROGRAMMERS: ReactOS Portable Systems Group
7 */
8
9 /* INCLUDES *******************************************************************/
10
11 #include <ntdef.h>
12
13 //
14 // Return error codes.
15 //
16 #define CP_GET_SUCCESS 0
17 #define CP_GET_NODATA 1
18 #define CP_GET_ERROR 2
19
20 //
21 // COM port flags.
22 //
23 #define CPPORT_FLAG_MODEM_CONTROL 0x02
24
25 typedef struct _CPPORT
26 {
27 PUCHAR Address;
28 ULONG BaudRate;
29 USHORT Flags;
30 } CPPORT, *PCPPORT;
31
32 VOID
33 NTAPI
34 CpEnableFifo(
35 IN PUCHAR Address,
36 IN BOOLEAN Enable
37 );
38
39 VOID
40 NTAPI
41 CpSetBaud(
42 IN PCPPORT Port,
43 IN ULONG BaudRate
44 );
45
46 NTSTATUS
47 NTAPI
48 CpInitialize(
49 IN PCPPORT Port,
50 IN PUCHAR Address,
51 IN ULONG BaudRate
52 );
53
54 BOOLEAN
55 NTAPI
56 CpDoesPortExist(
57 IN PUCHAR Address
58 );
59
60 UCHAR
61 NTAPI
62 CpReadLsr(
63 IN PCPPORT Port,
64 IN UCHAR ExpectedValue
65 );
66
67 USHORT
68 NTAPI
69 CpGetByte(
70 IN PCPPORT Port,
71 OUT PUCHAR Byte,
72 IN BOOLEAN Wait
73 );
74
75 VOID
76 NTAPI
77 CpPutByte(
78 IN PCPPORT Port,
79 IN UCHAR Byte
80 );
81
82 /* EOF */