cypress_m8.h 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. #ifndef CYPRESS_M8_H
  2. #define CYPRESS_M8_H
  3. /*
  4. * definitions and function prototypes used for the cypress USB to Serial
  5. * controller
  6. */
  7. /*
  8. * For sending our feature buffer - controlling serial communication states.
  9. * Linux HID has no support for serial devices so we do this through the driver
  10. */
  11. #define HID_REQ_GET_REPORT 0x01
  12. #define HID_REQ_SET_REPORT 0x09
  13. /* List other cypress USB to Serial devices here, and add them to the id_table */
  14. /* DeLorme Earthmate USB - a GPS device */
  15. #define VENDOR_ID_DELORME 0x1163
  16. #define PRODUCT_ID_EARTHMATEUSB 0x0100
  17. #define PRODUCT_ID_EARTHMATEUSB_LT20 0x0200
  18. /* Cypress HID->COM RS232 Adapter */
  19. #define VENDOR_ID_CYPRESS 0x04b4
  20. #define PRODUCT_ID_CYPHIDCOM 0x5500
  21. /* FRWD Dongle - a GPS sports watch */
  22. #define VENDOR_ID_FRWD 0x6737
  23. #define PRODUCT_ID_CYPHIDCOM_FRWD 0x0001
  24. /* Powercom UPS, chip CY7C63723 */
  25. #define VENDOR_ID_POWERCOM 0x0d9f
  26. #define PRODUCT_ID_UPS 0x0002
  27. /* Nokia CA-42 USB to serial cable */
  28. #define VENDOR_ID_DAZZLE 0x07d0
  29. #define PRODUCT_ID_CA42 0x4101
  30. /* End of device listing */
  31. /* Used for setting / requesting serial line settings */
  32. #define CYPRESS_SET_CONFIG 0x01
  33. #define CYPRESS_GET_CONFIG 0x02
  34. /* Used for throttle control */
  35. #define THROTTLED 0x1
  36. #define ACTUALLY_THROTTLED 0x2
  37. /*
  38. * chiptypes - used in case firmware differs from the generic form ... offering
  39. * different baud speeds/etc.
  40. */
  41. #define CT_EARTHMATE 0x01
  42. #define CT_CYPHIDCOM 0x02
  43. #define CT_CA42V2 0x03
  44. #define CT_GENERIC 0x0F
  45. /* End of chiptype definitions */
  46. /*
  47. * RS-232 serial data communication protocol definitions.
  48. *
  49. * These are sent / read at byte 0 of the input/output hid reports.
  50. * You can find these values defined in the CY4601 USB to Serial design notes.
  51. */
  52. #define CONTROL_DTR 0x20 /* data terminal ready */
  53. #define CONTROL_RTS 0x10 /* request to send */
  54. #define CONTROL_RESET 0x08 /* sent with output report */
  55. #define UART_MSR_MASK 0xf0
  56. #define UART_RI 0x80 /* ring indicator */
  57. #define UART_CD 0x40 /* carrier detect */
  58. #define UART_DSR 0x20 /* data set ready */
  59. #define UART_CTS 0x10 /* clear to send */
  60. #define CYP_ERROR 0x08 /* received from input report */
  61. /* End of RS-232 protocol definitions */
  62. #endif /* CYPRESS_M8_H */