linux/drivers/tty/rocket.h
<<
>>
Prefs
   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 */
  11typedef struct {
  12        unsigned long model;
  13        char modelString[80];
  14        unsigned long numPorts;
  15        int loadrm2;
  16        int startingPortNumber;
  17} rocketModel_t;
  18
  19struct 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
  28struct rocket_ports {
  29        int tty_major;
  30        int callout_major;
  31        rocketModel_t rocketModel[8];
  32};
  33
  34struct 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_STRUCT         0x00525001
  75#define RCKP_GET_CONFIG         0x00525002
  76#define RCKP_SET_CONFIG         0x00525003
  77#define RCKP_GET_PORTS          0x00525004
  78#define RCKP_RESET_RM2          0x00525005
  79#define RCKP_GET_VERSION        0x00525006
  80
  81/*  Rocketport Models */
  82#define MODEL_RP32INTF        0x0001    /* RP 32 port w/external I/F   */
  83#define MODEL_RP8INTF         0x0002    /* RP 8 port w/external I/F    */
  84#define MODEL_RP16INTF        0x0003    /* RP 16 port w/external I/F   */
  85#define MODEL_RP8OCTA         0x0005    /* RP 8 port w/octa cable      */
  86#define MODEL_RP4QUAD         0x0004    /* RP 4 port w/quad cable      */
  87#define MODEL_RP8J            0x0006    /* RP 8 port w/RJ11 connectors */
  88#define MODEL_RP4J            0x0007    /* RP 4 port w/RJ45 connectors */
  89#define MODEL_RP8SNI          0x0008    /* RP 8 port w/ DB78 SNI connector */
  90#define MODEL_RP16SNI         0x0009    /* RP 16 port w/ DB78 SNI connector */
  91#define MODEL_RPP4            0x000A    /* RP Plus 4 port              */
  92#define MODEL_RPP8            0x000B    /* RP Plus 8 port              */
  93#define MODEL_RP2_232         0x000E    /* RP Plus 2 port RS232        */
  94#define MODEL_RP2_422         0x000F    /* RP Plus 2 port RS232        */
  95
  96/*  Rocketmodem II Models */
  97#define MODEL_RP6M            0x000C    /* RM 6 port                   */
  98#define MODEL_RP4M            0x000D    /* RM 4 port                   */
  99
 100/* Universal PCI boards */
 101#define MODEL_UPCI_RP32INTF   0x0801    /* RP UPCI 32 port w/external I/F     */
 102#define MODEL_UPCI_RP8INTF    0x0802    /* RP UPCI 8 port w/external I/F      */
 103#define MODEL_UPCI_RP16INTF   0x0803    /* RP UPCI 16 port w/external I/F     */
 104#define MODEL_UPCI_RP8OCTA    0x0805    /* RP UPCI 8 port w/octa cable        */ 
 105#define MODEL_UPCI_RM3_8PORT  0x080C    /* RP UPCI Rocketmodem III 8 port     */
 106#define MODEL_UPCI_RM3_4PORT  0x080C    /* RP UPCI Rocketmodem III 4 port     */
 107
 108/*  Compact PCI 16 port  */
 109#define MODEL_CPCI_RP16INTF   0x0903    /* RP Compact PCI 16 port w/external I/F */
 110
 111/* All ISA boards */
 112#define MODEL_ISA             0x1000
 113