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