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/* Simply Automated HID->COM UPB PIM (using Cypress PID 0x5500) */
  29#define VENDOR_ID_SAI                   0x17dd
  30
  31/* FRWD Dongle - a GPS sports watch */
  32#define VENDOR_ID_FRWD                  0x6737
  33#define PRODUCT_ID_CYPHIDCOM_FRWD       0x0001
  34
  35/* Powercom UPS, chip CY7C63723 */
  36#define VENDOR_ID_POWERCOM              0x0d9f
  37#define PRODUCT_ID_UPS                  0x0002
  38
  39/* Nokia CA-42 USB to serial cable */
  40#define VENDOR_ID_DAZZLE                0x07d0
  41#define PRODUCT_ID_CA42                 0x4101
  42/* End of device listing */
  43
  44/* Used for setting / requesting serial line settings */
  45#define CYPRESS_SET_CONFIG      0x01
  46#define CYPRESS_GET_CONFIG      0x02
  47
  48/* Used for throttle control */
  49#define THROTTLED               0x1
  50#define ACTUALLY_THROTTLED      0x2
  51
  52/*
  53 * chiptypes - used in case firmware differs from the generic form ... offering
  54 * different baud speeds/etc.
  55 */
  56#define CT_EARTHMATE    0x01
  57#define CT_CYPHIDCOM    0x02
  58#define CT_CA42V2       0x03
  59#define CT_GENERIC      0x0F
  60/* End of chiptype definitions */
  61
  62/*
  63 * RS-232 serial data communication protocol definitions.
  64 *
  65 * These are sent / read at byte 0 of the input/output hid reports.
  66 * You can find these values defined in the CY4601 USB to Serial design notes.
  67 */
  68
  69#define CONTROL_DTR     0x20    /* data terminal ready */
  70#define CONTROL_RTS     0x10    /* request to send */
  71#define CONTROL_RESET   0x08    /* sent with output report */
  72
  73#define UART_MSR_MASK   0xf0
  74#define UART_RI         0x80    /* ring indicator */
  75#define UART_CD         0x40    /* carrier detect */
  76#define UART_DSR        0x20    /* data set ready */
  77#define UART_CTS        0x10    /* clear to send */
  78#define CYP_ERROR       0x08    /* received from input report */
  79
  80/* End of RS-232 protocol definitions */
  81
  82#endif /* CYPRESS_M8_H */
  83