4de2612967d06c4fdbf524a62556a1e8118a006fxs/*
4de2612967d06c4fdbf524a62556a1e8118a006fxs * CDDL HEADER START
4de2612967d06c4fdbf524a62556a1e8118a006fxs *
4de2612967d06c4fdbf524a62556a1e8118a006fxs * The contents of this file are subject to the terms of the
cbab2b2687744cbfdc12fae90f8088127a0b266clg * Common Development and Distribution License (the "License").
cbab2b2687744cbfdc12fae90f8088127a0b266clg * You may not use this file except in compliance with the License.
4de2612967d06c4fdbf524a62556a1e8118a006fxs *
4de2612967d06c4fdbf524a62556a1e8118a006fxs * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
4de2612967d06c4fdbf524a62556a1e8118a006fxs * or http://www.opensolaris.org/os/licensing.
4de2612967d06c4fdbf524a62556a1e8118a006fxs * See the License for the specific language governing permissions
4de2612967d06c4fdbf524a62556a1e8118a006fxs * and limitations under the License.
4de2612967d06c4fdbf524a62556a1e8118a006fxs *
4de2612967d06c4fdbf524a62556a1e8118a006fxs * When distributing Covered Code, include this CDDL HEADER in each
4de2612967d06c4fdbf524a62556a1e8118a006fxs * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
4de2612967d06c4fdbf524a62556a1e8118a006fxs * If applicable, add the following below this CDDL HEADER, with the
4de2612967d06c4fdbf524a62556a1e8118a006fxs * fields enclosed by brackets "[]" replaced with your own identifying
4de2612967d06c4fdbf524a62556a1e8118a006fxs * information: Portions Copyright [yyyy] [name of copyright owner]
4de2612967d06c4fdbf524a62556a1e8118a006fxs *
4de2612967d06c4fdbf524a62556a1e8118a006fxs * CDDL HEADER END
4de2612967d06c4fdbf524a62556a1e8118a006fxs */
4de2612967d06c4fdbf524a62556a1e8118a006fxs/*
d29f5a711240f866521445b1656d114da090335ezhigang lu - Sun Microsystems - Beijing China * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
4de2612967d06c4fdbf524a62556a1e8118a006fxs * Use is subject to license terms.
4de2612967d06c4fdbf524a62556a1e8118a006fxs */
4de2612967d06c4fdbf524a62556a1e8118a006fxs
4de2612967d06c4fdbf524a62556a1e8118a006fxs#ifndef _SYS_USB_USBSER_PL2303_VENDOR_H
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define _SYS_USB_USBSER_PL2303_VENDOR_H
4de2612967d06c4fdbf524a62556a1e8118a006fxs
4de2612967d06c4fdbf524a62556a1e8118a006fxs
4de2612967d06c4fdbf524a62556a1e8118a006fxs/*
4de2612967d06c4fdbf524a62556a1e8118a006fxs * Prolific PL2303 vendor-specific variables
4de2612967d06c4fdbf524a62556a1e8118a006fxs */
4de2612967d06c4fdbf524a62556a1e8118a006fxs
4de2612967d06c4fdbf524a62556a1e8118a006fxs#ifdef __cplusplus
4de2612967d06c4fdbf524a62556a1e8118a006fxsextern "C" {
4de2612967d06c4fdbf524a62556a1e8118a006fxs#endif
4de2612967d06c4fdbf524a62556a1e8118a006fxs
4de2612967d06c4fdbf524a62556a1e8118a006fxs
4de2612967d06c4fdbf524a62556a1e8118a006fxs/*
cbab2b2687744cbfdc12fae90f8088127a0b266clg * Prolific PL2303 Revision Numbers
4de2612967d06c4fdbf524a62556a1e8118a006fxs */
4de2612967d06c4fdbf524a62556a1e8118a006fxs
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define PROLIFIC_REV_H 0x0202
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define PROLIFIC_REV_X 0x0300
cbab2b2687744cbfdc12fae90f8088127a0b266clg#define PROLIFIC_REV_HX_CHIP_D 0x0400
b0fe7b8fa79924061f3bdf7f240ea116c2c0b704lg#define PROLIFIC_REV_1 0x0001
4de2612967d06c4fdbf524a62556a1e8118a006fxs
4de2612967d06c4fdbf524a62556a1e8118a006fxs/*
4de2612967d06c4fdbf524a62556a1e8118a006fxs * Vendor-specific Requests
4de2612967d06c4fdbf524a62556a1e8118a006fxs */
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define PL2303_SET_LINE_CODING_REQUEST_TYPE 0x21
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define PL2303_SET_LINE_CODING_REQUEST 0x20
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define PL2303_SET_LINE_CODING_LENGTH 0x07
4de2612967d06c4fdbf524a62556a1e8118a006fxs
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define PL2303_GET_LINE_CODING_REQUEST_TYPE 0xa1
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define PL2303_GET_LINE_CODING_REQUEST 0x21
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define PL2303_GET_LINE_CODING_LENGTH 0x07
4de2612967d06c4fdbf524a62556a1e8118a006fxs
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define PL2303_SET_CONTROL_REQUEST_TYPE 0x21
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define PL2303_SET_CONTROL_REQUEST 0x22
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define PL2303_SET_CONTROL_LENGTH 0x00
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define PL2303_CONTROL_DTR 0x01
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define PL2303_CONTROL_RTS 0x02
4de2612967d06c4fdbf524a62556a1e8118a006fxs
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define PL2303_BREAK_REQUEST_TYPE 0x21
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define PL2303_BREAK_REQUEST 0x23
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define PL2303_BREAK_LENGTH 0X00
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define PL2303_BREAK_ON 0xffff
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define PL2303_BREAK_OFF 0x0000
4de2612967d06c4fdbf524a62556a1e8118a006fxs
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define PL2303_VENDOR_WRITE_REQUEST_TYPE 0x40
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define PL2303_VENDOR_WRITE_REQUEST 0x01
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define PL2303_VENDOR_WRITE_LENGTH 0x00
4de2612967d06c4fdbf524a62556a1e8118a006fxs
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define PL2303_VENDOR_READ_REQUEST_TYPE 0xc0
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define PL2303_VENDOR_READ_REQUEST 0x01
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define PL2303_VENDOR_READ_LENGTH 0x01
4de2612967d06c4fdbf524a62556a1e8118a006fxs
4de2612967d06c4fdbf524a62556a1e8118a006fxs/*
4de2612967d06c4fdbf524a62556a1e8118a006fxs * Cmds of setting XON/XOFF symbol
4de2612967d06c4fdbf524a62556a1e8118a006fxs */
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define SET_XONXOFF 0x05
4de2612967d06c4fdbf524a62556a1e8118a006fxs
4de2612967d06c4fdbf524a62556a1e8118a006fxs/*
4de2612967d06c4fdbf524a62556a1e8118a006fxs * Device Configuration Registers (DCR0, DCR1, DCR2)
4de2612967d06c4fdbf524a62556a1e8118a006fxs */
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define SET_DCR0 0x00
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define GET_DCR0 0x80
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define DCR0_INIT 0x01
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define DCR0_INIT_H 0x41
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define DCR0_INIT_X 0x61
4de2612967d06c4fdbf524a62556a1e8118a006fxs
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define SET_DCR1 0x01
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define GET_DCR1 0x81
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define DCR1_INIT_H 0x80
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define DCR1_INIT_X 0x00
4de2612967d06c4fdbf524a62556a1e8118a006fxs
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define SET_DCR2 0x02
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define GET_DCR2 0x82
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define DCR2_INIT_H 0x24
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define DCR2_INIT_X 0x44
4de2612967d06c4fdbf524a62556a1e8118a006fxs
4de2612967d06c4fdbf524a62556a1e8118a006fxs/*
4de2612967d06c4fdbf524a62556a1e8118a006fxs * On-chip Date Buffers:
4de2612967d06c4fdbf524a62556a1e8118a006fxs */
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define RESET_DOWNSTREAM_DATA_PIPE 0x08
4de2612967d06c4fdbf524a62556a1e8118a006fxs#define RESET_UPSTREAM_DATA_PIPE 0x09
4de2612967d06c4fdbf524a62556a1e8118a006fxs
4de2612967d06c4fdbf524a62556a1e8118a006fxs
4de2612967d06c4fdbf524a62556a1e8118a006fxs#ifdef __cplusplus
4de2612967d06c4fdbf524a62556a1e8118a006fxs}
4de2612967d06c4fdbf524a62556a1e8118a006fxs#endif
4de2612967d06c4fdbf524a62556a1e8118a006fxs
4de2612967d06c4fdbf524a62556a1e8118a006fxs#endif /* _SYS_USB_USBSER_PL2303_VENDOR_H */