1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0 */ 2*4882a593Smuzhiyun #ifndef _LINUX_ISICOM_H 3*4882a593Smuzhiyun #define _LINUX_ISICOM_H 4*4882a593Smuzhiyun 5*4882a593Smuzhiyun #define YES 1 6*4882a593Smuzhiyun #define NO 0 7*4882a593Smuzhiyun 8*4882a593Smuzhiyun /* 9*4882a593Smuzhiyun * ISICOM Driver definitions ... 10*4882a593Smuzhiyun * 11*4882a593Smuzhiyun */ 12*4882a593Smuzhiyun 13*4882a593Smuzhiyun #define ISICOM_NAME "ISICom" 14*4882a593Smuzhiyun 15*4882a593Smuzhiyun /* 16*4882a593Smuzhiyun * PCI definitions 17*4882a593Smuzhiyun */ 18*4882a593Smuzhiyun 19*4882a593Smuzhiyun #define DEVID_COUNT 9 20*4882a593Smuzhiyun #define VENDOR_ID 0x10b5 21*4882a593Smuzhiyun 22*4882a593Smuzhiyun /* 23*4882a593Smuzhiyun * These are now officially allocated numbers 24*4882a593Smuzhiyun */ 25*4882a593Smuzhiyun 26*4882a593Smuzhiyun #define ISICOM_NMAJOR 112 /* normal */ 27*4882a593Smuzhiyun #define ISICOM_CMAJOR 113 /* callout */ 28*4882a593Smuzhiyun #define ISICOM_MAGIC (('M' << 8) | 'T') 29*4882a593Smuzhiyun 30*4882a593Smuzhiyun #define WAKEUP_CHARS 256 /* hard coded for now */ 31*4882a593Smuzhiyun #define TX_SIZE 254 32*4882a593Smuzhiyun 33*4882a593Smuzhiyun #define BOARD_COUNT 4 34*4882a593Smuzhiyun #define PORT_COUNT (BOARD_COUNT*16) 35*4882a593Smuzhiyun 36*4882a593Smuzhiyun /* character sizes */ 37*4882a593Smuzhiyun 38*4882a593Smuzhiyun #define ISICOM_CS5 0x0000 39*4882a593Smuzhiyun #define ISICOM_CS6 0x0001 40*4882a593Smuzhiyun #define ISICOM_CS7 0x0002 41*4882a593Smuzhiyun #define ISICOM_CS8 0x0003 42*4882a593Smuzhiyun 43*4882a593Smuzhiyun /* stop bits */ 44*4882a593Smuzhiyun 45*4882a593Smuzhiyun #define ISICOM_1SB 0x0000 46*4882a593Smuzhiyun #define ISICOM_2SB 0x0004 47*4882a593Smuzhiyun 48*4882a593Smuzhiyun /* parity */ 49*4882a593Smuzhiyun 50*4882a593Smuzhiyun #define ISICOM_NOPAR 0x0000 51*4882a593Smuzhiyun #define ISICOM_ODPAR 0x0008 52*4882a593Smuzhiyun #define ISICOM_EVPAR 0x0018 53*4882a593Smuzhiyun 54*4882a593Smuzhiyun /* flow control */ 55*4882a593Smuzhiyun 56*4882a593Smuzhiyun #define ISICOM_CTSRTS 0x03 57*4882a593Smuzhiyun #define ISICOM_INITIATE_XONXOFF 0x04 58*4882a593Smuzhiyun #define ISICOM_RESPOND_XONXOFF 0x08 59*4882a593Smuzhiyun 60*4882a593Smuzhiyun #define BOARD(line) (((line) >> 4) & 0x3) 61*4882a593Smuzhiyun 62*4882a593Smuzhiyun /* isi kill queue bitmap */ 63*4882a593Smuzhiyun 64*4882a593Smuzhiyun #define ISICOM_KILLTX 0x01 65*4882a593Smuzhiyun #define ISICOM_KILLRX 0x02 66*4882a593Smuzhiyun 67*4882a593Smuzhiyun /* isi_board status bitmap */ 68*4882a593Smuzhiyun 69*4882a593Smuzhiyun #define FIRMWARE_LOADED 0x0001 70*4882a593Smuzhiyun #define BOARD_ACTIVE 0x0002 71*4882a593Smuzhiyun #define BOARD_INIT 0x0004 72*4882a593Smuzhiyun 73*4882a593Smuzhiyun /* isi_port status bitmap */ 74*4882a593Smuzhiyun 75*4882a593Smuzhiyun #define ISI_CTS 0x1000 76*4882a593Smuzhiyun #define ISI_DSR 0x2000 77*4882a593Smuzhiyun #define ISI_RI 0x4000 78*4882a593Smuzhiyun #define ISI_DCD 0x8000 79*4882a593Smuzhiyun #define ISI_DTR 0x0100 80*4882a593Smuzhiyun #define ISI_RTS 0x0200 81*4882a593Smuzhiyun 82*4882a593Smuzhiyun 83*4882a593Smuzhiyun #define ISI_TXOK 0x0001 84*4882a593Smuzhiyun 85*4882a593Smuzhiyun #endif /* ISICOM_H */ 86