Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | #ifndef CYPRESS_M8_H |
| 2 | #define CYPRESS_M8_H |
| 3 | |
Greg Kroah-Hartman | 995834e | 2010-05-17 10:33:41 -0700 | [diff] [blame] | 4 | /* |
| 5 | * definitions and function prototypes used for the cypress USB to Serial |
| 6 | * controller |
| 7 | */ |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 8 | |
Greg Kroah-Hartman | 995834e | 2010-05-17 10:33:41 -0700 | [diff] [blame] | 9 | /* |
| 10 | * For sending our feature buffer - controlling serial communication states. |
| 11 | * Linux HID has no support for serial devices so we do this through the driver |
| 12 | */ |
| 13 | #define HID_REQ_GET_REPORT 0x01 |
| 14 | #define HID_REQ_SET_REPORT 0x09 |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 15 | |
| 16 | /* List other cypress USB to Serial devices here, and add them to the id_table */ |
| 17 | |
| 18 | /* DeLorme Earthmate USB - a GPS device */ |
Greg Kroah-Hartman | 995834e | 2010-05-17 10:33:41 -0700 | [diff] [blame] | 19 | #define VENDOR_ID_DELORME 0x1163 |
| 20 | #define PRODUCT_ID_EARTHMATEUSB 0x0100 |
| 21 | #define PRODUCT_ID_EARTHMATEUSB_LT20 0x0200 |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 22 | |
| 23 | /* Cypress HID->COM RS232 Adapter */ |
Greg Kroah-Hartman | 995834e | 2010-05-17 10:33:41 -0700 | [diff] [blame] | 24 | #define VENDOR_ID_CYPRESS 0x04b4 |
| 25 | #define PRODUCT_ID_CYPHIDCOM 0x5500 |
Lonnie Mendez | a5c44e2 | 2006-03-01 10:45:24 -0600 | [diff] [blame] | 26 | |
Robert Butora | 6529591 | 2013-05-31 18:09:51 +0300 | [diff] [blame] | 27 | /* FRWD Dongle - a GPS sports watch */ |
| 28 | #define VENDOR_ID_FRWD 0x6737 |
| 29 | #define PRODUCT_ID_CYPHIDCOM_FRWD 0x0001 |
| 30 | |
Dmitry Shapin | 6f6f06e | 2008-03-04 15:25:10 -0800 | [diff] [blame] | 31 | /* Powercom UPS, chip CY7C63723 */ |
Greg Kroah-Hartman | 995834e | 2010-05-17 10:33:41 -0700 | [diff] [blame] | 32 | #define VENDOR_ID_POWERCOM 0x0d9f |
| 33 | #define PRODUCT_ID_UPS 0x0002 |
Dmitry Shapin | 6f6f06e | 2008-03-04 15:25:10 -0800 | [diff] [blame] | 34 | |
Lonnie Mendez | a5c44e2 | 2006-03-01 10:45:24 -0600 | [diff] [blame] | 35 | /* Nokia CA-42 USB to serial cable */ |
| 36 | #define VENDOR_ID_DAZZLE 0x07d0 |
| 37 | #define PRODUCT_ID_CA42 0x4101 |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 38 | /* End of device listing */ |
| 39 | |
| 40 | /* Used for setting / requesting serial line settings */ |
Greg Kroah-Hartman | 995834e | 2010-05-17 10:33:41 -0700 | [diff] [blame] | 41 | #define CYPRESS_SET_CONFIG 0x01 |
| 42 | #define CYPRESS_GET_CONFIG 0x02 |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 43 | |
| 44 | /* Used for throttle control */ |
Greg Kroah-Hartman | 995834e | 2010-05-17 10:33:41 -0700 | [diff] [blame] | 45 | #define THROTTLED 0x1 |
| 46 | #define ACTUALLY_THROTTLED 0x2 |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 47 | |
Greg Kroah-Hartman | 995834e | 2010-05-17 10:33:41 -0700 | [diff] [blame] | 48 | /* |
| 49 | * chiptypes - used in case firmware differs from the generic form ... offering |
| 50 | * different baud speeds/etc. |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 51 | */ |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 52 | #define CT_EARTHMATE 0x01 |
| 53 | #define CT_CYPHIDCOM 0x02 |
Lonnie Mendez | a5c44e2 | 2006-03-01 10:45:24 -0600 | [diff] [blame] | 54 | #define CT_CA42V2 0x03 |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 55 | #define CT_GENERIC 0x0F |
| 56 | /* End of chiptype definitions */ |
| 57 | |
| 58 | /* RS-232 serial data communication protocol definitions */ |
| 59 | /* these are sent / read at byte 0 of the input/output hid reports */ |
| 60 | /* You can find these values defined in the CY4601 USB to Serial design notes */ |
| 61 | |
Greg Kroah-Hartman | 995834e | 2010-05-17 10:33:41 -0700 | [diff] [blame] | 62 | #define CONTROL_DTR 0x20 /* data terminal ready - flow control - host to device */ |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 63 | #define UART_DSR 0x20 /* data set ready - flow control - device to host */ |
Greg Kroah-Hartman | 995834e | 2010-05-17 10:33:41 -0700 | [diff] [blame] | 64 | #define CONTROL_RTS 0x10 /* request to send - flow control - host to device */ |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 65 | #define UART_CTS 0x10 /* clear to send - flow control - device to host */ |
Johan Hovold | 52793ef | 2014-01-02 22:49:24 +0100 | [diff] [blame] | 66 | #define UART_RI 0x80 /* ring indicator - modem - device to host */ |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 67 | #define UART_CD 0x40 /* carrier detect - modem - device to host */ |
Greg Kroah-Hartman | 995834e | 2010-05-17 10:33:41 -0700 | [diff] [blame] | 68 | #define CYP_ERROR 0x08 /* received from input report - device to host */ |
Anand Gadiyar | fd589a8 | 2009-07-16 17:13:03 +0200 | [diff] [blame] | 69 | /* Note - the below has nothing to do with the "feature report" reset */ |
Greg Kroah-Hartman | 995834e | 2010-05-17 10:33:41 -0700 | [diff] [blame] | 70 | #define CONTROL_RESET 0x08 /* sent with output report - host to device */ |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 71 | |
| 72 | /* End of RS-232 protocol definitions */ |
| 73 | |
| 74 | #endif /* CYPRESS_M8_H */ |