isicom.h 1.5 KB

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