• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * rocket.h --- the exported interface of the rocket driver to its configuration program.
4  *
5  * Written by Theodore Ts'o, Copyright 1997.
6  * Copyright 1997 Comtrol Corporation.
7  *
8  */
9 
10 /*  Model Information Struct */
11 typedef struct {
12 	unsigned long model;
13 	char modelString[80];
14 	unsigned long numPorts;
15 	int loadrm2;
16 	int startingPortNumber;
17 } rocketModel_t;
18 
19 struct rocket_config {
20 	int line;
21 	int flags;
22 	int closing_wait;
23 	int close_delay;
24 	int port;
25 	int reserved[32];
26 };
27 
28 struct rocket_ports {
29 	int tty_major;
30 	int callout_major;
31 	rocketModel_t rocketModel[8];
32 };
33 
34 struct rocket_version {
35 	char rocket_version[32];
36 	char rocket_date[32];
37 	char reserved[64];
38 };
39 
40 /*
41  * Rocketport flags
42  */
43 /*#define ROCKET_CALLOUT_NOHUP    0x00000001 */
44 #define ROCKET_FORCE_CD		0x00000002
45 #define ROCKET_HUP_NOTIFY	0x00000004
46 #define ROCKET_SPLIT_TERMIOS	0x00000008
47 #define ROCKET_SPD_MASK		0x00000070
48 #define ROCKET_SPD_HI		0x00000010	/* Use 57600 instead of 38400 bps */
49 #define ROCKET_SPD_VHI		0x00000020	/* Use 115200 instead of 38400 bps */
50 #define ROCKET_SPD_SHI		0x00000030	/* Use 230400 instead of 38400 bps */
51 #define ROCKET_SPD_WARP	        0x00000040	/* Use 460800 instead of 38400 bps */
52 #define ROCKET_SAK		0x00000080
53 #define ROCKET_SESSION_LOCKOUT	0x00000100
54 #define ROCKET_PGRP_LOCKOUT	0x00000200
55 #define ROCKET_RTS_TOGGLE	0x00000400
56 #define ROCKET_MODE_MASK        0x00003000
57 #define ROCKET_MODE_RS232       0x00000000
58 #define ROCKET_MODE_RS485       0x00001000
59 #define ROCKET_MODE_RS422       0x00002000
60 #define ROCKET_FLAGS		0x00003FFF
61 
62 #define ROCKET_USR_MASK 0x0071	/* Legal flags that non-privileged
63 				 * users can set or reset */
64 
65 /*
66  * For closing_wait and closing_wait2
67  */
68 #define ROCKET_CLOSING_WAIT_NONE	ASYNC_CLOSING_WAIT_NONE
69 #define ROCKET_CLOSING_WAIT_INF		ASYNC_CLOSING_WAIT_INF
70 
71 /*
72  * Rocketport ioctls -- "RP"
73  */
74 #define RCKP_GET_CONFIG		0x00525002
75 #define RCKP_SET_CONFIG		0x00525003
76 #define RCKP_GET_PORTS		0x00525004
77 #define RCKP_RESET_RM2		0x00525005
78 #define RCKP_GET_VERSION	0x00525006
79 
80 /*  Rocketport Models */
81 #define MODEL_RP32INTF        0x0001	/* RP 32 port w/external I/F   */
82 #define MODEL_RP8INTF         0x0002	/* RP 8 port w/external I/F    */
83 #define MODEL_RP16INTF        0x0003	/* RP 16 port w/external I/F   */
84 #define MODEL_RP8OCTA         0x0005	/* RP 8 port w/octa cable      */
85 #define MODEL_RP4QUAD         0x0004	/* RP 4 port w/quad cable      */
86 #define MODEL_RP8J            0x0006	/* RP 8 port w/RJ11 connectors */
87 #define MODEL_RP4J            0x0007	/* RP 4 port w/RJ45 connectors */
88 #define MODEL_RP8SNI          0x0008	/* RP 8 port w/ DB78 SNI connector */
89 #define MODEL_RP16SNI         0x0009	/* RP 16 port w/ DB78 SNI connector */
90 #define MODEL_RPP4            0x000A	/* RP Plus 4 port              */
91 #define MODEL_RPP8            0x000B	/* RP Plus 8 port              */
92 #define MODEL_RP2_232         0x000E	/* RP Plus 2 port RS232        */
93 #define MODEL_RP2_422         0x000F	/* RP Plus 2 port RS232        */
94 
95 /*  Rocketmodem II Models */
96 #define MODEL_RP6M            0x000C	/* RM 6 port                   */
97 #define MODEL_RP4M            0x000D	/* RM 4 port                   */
98 
99 /* Universal PCI boards */
100 #define MODEL_UPCI_RP32INTF   0x0801	/* RP UPCI 32 port w/external I/F     */
101 #define MODEL_UPCI_RP8INTF    0x0802	/* RP UPCI 8 port w/external I/F      */
102 #define MODEL_UPCI_RP16INTF   0x0803	/* RP UPCI 16 port w/external I/F     */
103 #define MODEL_UPCI_RP8OCTA    0x0805	/* RP UPCI 8 port w/octa cable        */
104 #define MODEL_UPCI_RM3_8PORT  0x080C	/* RP UPCI Rocketmodem III 8 port     */
105 #define MODEL_UPCI_RM3_4PORT  0x080C	/* RP UPCI Rocketmodem III 4 port     */
106 
107 /*  Compact PCI 16 port  */
108 #define MODEL_CPCI_RP16INTF   0x0903	/* RP Compact PCI 16 port w/external I/F */
109 
110 /* All ISA boards */
111 #define MODEL_ISA             0x1000
112