isicom.h 1.6 KB

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