1// Copyright 2018 The Fuchsia Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#pragma once 6 7#define FTDI_TYPE_R (0x0600) 8#define FTDI_TYPE_BM (0x0400) 9#define FTDI_TYPE_AM (0x0200) 10#define FTDI_TYPE_2232C (0x0500) 11#define FTDI_TYPE_2232H (0x0700) 12#define FTDI_TYPE_4232H (0x0800) 13#define FTDI_TYPE_232H (0x0900) 14 15// Clock divisors 16#define FTDI_TYPE_R_DIVISOR (16) 17 18#define FTDI_VID 0x0403 19#define FTDI_232R_PID 0x6001 20#define FTDI_2232_PID 0x6010 21 22#define FTDI_H_CLK 120000000 23#define FTDI_C_CLK 48000000 24 25#define FTDI_SIO_RESET 0 /* Reset the port */ 26#define FTDI_SIO_MODEM_CTRL 1 /* Set the modem control register */ 27#define FTDI_SIO_SET_FLOW_CTRL 2 /* Set flow control register */ 28#define FTDI_SIO_SET_BAUDRATE 3 /* Set baud rate */ 29#define FTDI_SIO_SET_DATA 4 /* Set the data characteristics of the port */ 30 31/* Requests */ 32#define FTDI_SIO_RESET_REQUEST FTDI_SIO_RESET 33#define FTDI_SIO_SET_BAUDRATE_REQUEST FTDI_SIO_SET_BAUD_RATE 34#define FTDI_SIO_SET_DATA_REQUEST FTDI_SIO_SET_DATA 35#define FTDI_SIO_SET_FLOW_CTRL_REQUEST FTDI_SIO_SET_FLOW_CTRL 36#define FTDI_SIO_SET_MODEM_CTRL_REQUEST FTDI_SIO_MODEM_CTRL 37#define FTDI_SIO_POLL_MODEM_STATUS_REQUEST 0x05 38#define FTDI_SIO_SET_EVENT_CHAR_REQUEST 0x06 39#define FTDI_SIO_SET_ERROR_CHAR_REQUEST 0x07 40#define FTDI_SIO_SET_LATENCY_TIMER_REQUEST 0x09 41#define FTDI_SIO_GET_LATENCY_TIMER_REQUEST 0x0A 42#define FTDI_SIO_SET_BITMODE_REQUEST 0x0B 43#define FTDI_SIO_READ_PINS_REQUEST 0x0C 44#define FTDI_SIO_READ_EEPROM_REQUEST 0x90 45#define FTDI_SIO_WRITE_EEPROM_REQUEST 0x91 46#define FTDI_SIO_ERASE_EEPROM_REQUEST 0x92 47 48 49