forked from Minki/linux
6ca98bc284
Now that the SPDX tag is in all USB files, that identifies the license in a specific and legally-defined manner. So the extra GPL text wording can be removed as it is no longer needed at all. This is done on a quest to remove the 700+ different ways that files in the kernel describe the GPL license text. And there's unneeded stuff like the address (sometimes incorrect) for the FSF which is never needed. No copyright headers or other non-license-description text was removed. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Acked-by: Johan Hovold <johan@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
121 lines
4.8 KiB
C
121 lines
4.8 KiB
C
// SPDX-License-Identifier: GPL-2.0+
|
|
/*
|
|
* Definitions for Belkin USB Serial Adapter Driver
|
|
*
|
|
* Copyright (C) 2000
|
|
* William Greathouse (wgreathouse@smva.com)
|
|
*
|
|
* This program is largely derived from work by the linux-usb group
|
|
* and associated source files. Please see the usb/serial files for
|
|
* individual credits and copyrights.
|
|
*
|
|
* See Documentation/usb/usb-serial.txt for more information on using this
|
|
* driver
|
|
*
|
|
* 12-Mar-2001 gkh
|
|
* Added GoHubs GO-COM232 device id.
|
|
*
|
|
* 06-Nov-2000 gkh
|
|
* Added old Belkin and Peracom device ids, which this driver supports
|
|
*
|
|
* 12-Oct-2000 William Greathouse
|
|
* First cut at supporting Belkin USB Serial Adapter F5U103
|
|
* I did not have a copy of the original work to support this
|
|
* adapter, so pardon any stupid mistakes. All of the information
|
|
* I am using to write this driver was acquired by using a modified
|
|
* UsbSnoop on Windows2000.
|
|
*
|
|
*/
|
|
|
|
#ifndef __LINUX_USB_SERIAL_BSA_H
|
|
#define __LINUX_USB_SERIAL_BSA_H
|
|
|
|
#define BELKIN_DOCKSTATION_VID 0x050d /* Vendor Id */
|
|
#define BELKIN_DOCKSTATION_PID 0x1203 /* Product Id */
|
|
|
|
#define BELKIN_SA_VID 0x050d /* Vendor Id */
|
|
#define BELKIN_SA_PID 0x0103 /* Product Id */
|
|
|
|
#define BELKIN_OLD_VID 0x056c /* Belkin's "old" vendor id */
|
|
#define BELKIN_OLD_PID 0x8007 /* Belkin's "old" single port serial converter's id */
|
|
|
|
#define PERACOM_VID 0x0565 /* Peracom's vendor id */
|
|
#define PERACOM_PID 0x0001 /* Peracom's single port serial converter's id */
|
|
|
|
#define GOHUBS_VID 0x0921 /* GoHubs vendor id */
|
|
#define GOHUBS_PID 0x1000 /* GoHubs single port serial converter's id (identical to the Peracom device) */
|
|
#define HANDYLINK_PID 0x1200 /* HandyLink USB's id (identical to the Peracom device) */
|
|
|
|
/* Vendor Request Interface */
|
|
#define BELKIN_SA_SET_BAUDRATE_REQUEST 0 /* Set baud rate */
|
|
#define BELKIN_SA_SET_STOP_BITS_REQUEST 1 /* Set stop bits (1,2) */
|
|
#define BELKIN_SA_SET_DATA_BITS_REQUEST 2 /* Set data bits (5,6,7,8) */
|
|
#define BELKIN_SA_SET_PARITY_REQUEST 3 /* Set parity (None, Even, Odd) */
|
|
|
|
#define BELKIN_SA_SET_DTR_REQUEST 10 /* Set DTR state */
|
|
#define BELKIN_SA_SET_RTS_REQUEST 11 /* Set RTS state */
|
|
#define BELKIN_SA_SET_BREAK_REQUEST 12 /* Set BREAK state */
|
|
|
|
#define BELKIN_SA_SET_FLOW_CTRL_REQUEST 16 /* Set flow control mode */
|
|
|
|
|
|
#ifdef WHEN_I_LEARN_THIS
|
|
#define BELKIN_SA_SET_MAGIC_REQUEST 17 /* I don't know, possibly flush */
|
|
/* (always in Wininit sequence before flow control) */
|
|
#define BELKIN_SA_RESET xx /* Reset the port */
|
|
#define BELKIN_SA_GET_MODEM_STATUS xx /* Force return of modem status register */
|
|
#endif
|
|
|
|
#define BELKIN_SA_SET_REQUEST_TYPE 0x40
|
|
|
|
#define BELKIN_SA_BAUD(b) (230400/b)
|
|
|
|
#define BELKIN_SA_STOP_BITS(b) (b-1)
|
|
|
|
#define BELKIN_SA_DATA_BITS(b) (b-5)
|
|
|
|
#define BELKIN_SA_PARITY_NONE 0
|
|
#define BELKIN_SA_PARITY_EVEN 1
|
|
#define BELKIN_SA_PARITY_ODD 2
|
|
#define BELKIN_SA_PARITY_MARK 3
|
|
#define BELKIN_SA_PARITY_SPACE 4
|
|
|
|
#define BELKIN_SA_FLOW_NONE 0x0000 /* No flow control */
|
|
#define BELKIN_SA_FLOW_OCTS 0x0001 /* use CTS input to throttle output */
|
|
#define BELKIN_SA_FLOW_ODSR 0x0002 /* use DSR input to throttle output */
|
|
#define BELKIN_SA_FLOW_IDSR 0x0004 /* use DSR input to enable receive */
|
|
#define BELKIN_SA_FLOW_IDTR 0x0008 /* use DTR output for input flow control */
|
|
#define BELKIN_SA_FLOW_IRTS 0x0010 /* use RTS output for input flow control */
|
|
#define BELKIN_SA_FLOW_ORTS 0x0020 /* use RTS to indicate data available to send */
|
|
#define BELKIN_SA_FLOW_ERRSUB 0x0040 /* ???? guess ???? substitute inline errors */
|
|
#define BELKIN_SA_FLOW_OXON 0x0080 /* use XON/XOFF for output flow control */
|
|
#define BELKIN_SA_FLOW_IXON 0x0100 /* use XON/XOFF for input flow control */
|
|
|
|
/*
|
|
* It seems that the interrupt pipe is closely modelled after the
|
|
* 16550 register layout. This is probably because the adapter can
|
|
* be used in a "DOS" environment to simulate a standard hardware port.
|
|
*/
|
|
#define BELKIN_SA_LSR_INDEX 2 /* Line Status Register */
|
|
#define BELKIN_SA_LSR_RDR 0x01 /* receive data ready */
|
|
#define BELKIN_SA_LSR_OE 0x02 /* overrun error */
|
|
#define BELKIN_SA_LSR_PE 0x04 /* parity error */
|
|
#define BELKIN_SA_LSR_FE 0x08 /* framing error */
|
|
#define BELKIN_SA_LSR_BI 0x10 /* break indicator */
|
|
#define BELKIN_SA_LSR_THE 0x20 /* tx holding register empty */
|
|
#define BELKIN_SA_LSR_TE 0x40 /* transmit register empty */
|
|
#define BELKIN_SA_LSR_ERR 0x80 /* OE | PE | FE | BI */
|
|
|
|
#define BELKIN_SA_MSR_INDEX 3 /* Modem Status Register */
|
|
#define BELKIN_SA_MSR_DCTS 0x01 /* Delta CTS */
|
|
#define BELKIN_SA_MSR_DDSR 0x02 /* Delta DSR */
|
|
#define BELKIN_SA_MSR_DRI 0x04 /* Delta RI */
|
|
#define BELKIN_SA_MSR_DCD 0x08 /* Delta CD */
|
|
#define BELKIN_SA_MSR_CTS 0x10 /* Current CTS */
|
|
#define BELKIN_SA_MSR_DSR 0x20 /* Current DSR */
|
|
#define BELKIN_SA_MSR_RI 0x40 /* Current RI */
|
|
#define BELKIN_SA_MSR_CD 0x80 /* Current CD */
|
|
|
|
#endif /* __LINUX_USB_SERIAL_BSA_H */
|
|
|