libftdi1: ftdi_i.h Source File

libftdi1 1.4

ftdi_i.h
Go to the documentation of this file.
1 /***************************************************************************
2 ftdi_i.h - description
3 -------------------
4 begin : Don Sep 9 2011
5 copyright : (C) 2003-2017 by Intra2net AG and the libftdi developers
6 email : opensource@intra2net.com
7 ***************************************************************************/
8
9 /***************************************************************************
10 * *
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU Lesser General Public License *
13 * version 2.1 as published by the Free Software Foundation; *
14 * *
15 ***************************************************************************
16
17 Non public definitions here
18
19 */
20
21 /* Even on 93xx66 at max 256 bytes are used (AN_121)*/
22 #define FTDI_MAX_EEPROM_SIZE 256
23
25 #define MAX_POWER_MILLIAMP_PER_UNIT 2
26
30 struct ftdi_eeprom
31 {
33 int vendor_id;
35 int product_id;
36
39 int initialized_for_connected_device;
40
42 int self_powered;
44 int remote_wakeup;
45
46 int is_not_pnp;
47
48 /* Suspend on DBUS7 Low */
49 int suspend_dbus7;
50
52 int in_is_isochronous;
54 int out_is_isochronous;
56 int suspend_pull_downs;
57
59 int use_serial;
61 int usb_version;
63 int use_usb_version;
65 int max_power;
66
68 char *manufacturer;
70 char *product;
72 char *serial;
73
74 /* 2232D/H specific */
75 /* Hardware type, 0 = RS232 Uart, 1 = 245 FIFO, 2 = CPU FIFO,
76 4 = OPTO Isolate */
77 int channel_a_type;
78 int channel_b_type;
79 /* Driver Type, 1 = VCP */
80 int channel_a_driver;
81 int channel_b_driver;
82 int channel_c_driver;
83 int channel_d_driver;
84 /* 4232H specific */
85 int channel_a_rs485enable;
86 int channel_b_rs485enable;
87 int channel_c_rs485enable;
88 int channel_d_rs485enable;
89
90 /* Special function of FT232R/FT232H devices (and possibly others as well) */
92 int cbus_function[10];
94 int high_current;
96 int high_current_a;
98 int high_current_b;
100 int invert;
102 int external_oscillator;
103
104 /*2232H/4432H Group specific values */
105 /* Group0 is AL on 2322H and A on 4232H
106 Group1 is AH on 2232H and B on 4232H
107 Group2 is BL on 2322H and C on 4232H
108 Group3 is BH on 2232H and C on 4232H*/
109 int group0_drive;
110 int group0_schmitt;
111 int group0_slew;
112 int group1_drive;
113 int group1_schmitt;
114 int group1_slew;
115 int group2_drive;
116 int group2_schmitt;
117 int group2_slew;
118 int group3_drive;
119 int group3_schmitt;
120 int group3_slew;
121
122 int powersave;
123
124 int clock_polarity;
125 int data_order;
126 int flow_control;
127
129 int user_data_addr;
130 int user_data_size;
131 const char *user_data;
132
135 int size;
136 /* EEPROM Type 0x46 for 93xx46, 0x56 for 93xx56 and 0x66 for 93xx66*/
137 int chip;
138 unsigned char buf[FTDI_MAX_EEPROM_SIZE];
139
141 int release_number;
142 };
143
ftdi_eeprom::powersave
int powersave
Definition: ftdi_i.h:122
ftdi_eeprom::out_is_isochronous
int out_is_isochronous
Definition: ftdi_i.h:54
ftdi_eeprom::usb_version
int usb_version
Definition: ftdi_i.h:61
ftdi_eeprom::external_oscillator
int external_oscillator
Definition: ftdi_i.h:102
ftdi_eeprom::clock_polarity
int clock_polarity
Definition: ftdi_i.h:124
ftdi_eeprom::remote_wakeup
int remote_wakeup
Definition: ftdi_i.h:44
ftdi_eeprom::channel_b_driver
int channel_b_driver
Definition: ftdi_i.h:81
ftdi_eeprom::group3_drive
int group3_drive
Definition: ftdi_i.h:118
ftdi_eeprom::channel_c_driver
int channel_c_driver
Definition: ftdi_i.h:82
ftdi_eeprom::group3_schmitt
int group3_schmitt
Definition: ftdi_i.h:119
ftdi_eeprom::max_power
int max_power
Definition: ftdi_i.h:65
ftdi_eeprom::group1_schmitt
int group1_schmitt
Definition: ftdi_i.h:113
ftdi_eeprom::user_data_size
int user_data_size
Definition: ftdi_i.h:130
ftdi_eeprom::serial
char * serial
Definition: ftdi_i.h:72
ftdi_eeprom::channel_b_rs485enable
int channel_b_rs485enable
Definition: ftdi_i.h:86
ftdi_eeprom::cbus_function
int cbus_function[10]
Definition: ftdi_i.h:92
ftdi_eeprom::size
int size
Definition: ftdi_i.h:135
ftdi_eeprom::group0_slew
int group0_slew
Definition: ftdi_i.h:111
ftdi_eeprom::vendor_id
int vendor_id
Definition: ftdi_i.h:33
ftdi_eeprom::in_is_isochronous
int in_is_isochronous
Definition: ftdi_i.h:52
ftdi_eeprom::chip
int chip
Definition: ftdi_i.h:137
ftdi_eeprom::initialized_for_connected_device
int initialized_for_connected_device
Definition: ftdi_i.h:39
ftdi_eeprom::high_current_b
int high_current_b
Definition: ftdi_i.h:98
ftdi_eeprom::channel_c_rs485enable
int channel_c_rs485enable
Definition: ftdi_i.h:87
ftdi_eeprom::group0_schmitt
int group0_schmitt
Definition: ftdi_i.h:110
ftdi_eeprom::flow_control
int flow_control
Definition: ftdi_i.h:126
ftdi_eeprom::user_data
const char * user_data
Definition: ftdi_i.h:131
ftdi_eeprom::buf
unsigned char buf[FTDI_MAX_EEPROM_SIZE]
Definition: ftdi_i.h:138
ftdi_eeprom::suspend_dbus7
int suspend_dbus7
Definition: ftdi_i.h:49
ftdi_eeprom::user_data_addr
int user_data_addr
Definition: ftdi_i.h:129
FTDI_MAX_EEPROM_SIZE
#define FTDI_MAX_EEPROM_SIZE
Definition: ftdi_i.h:22
ftdi_eeprom::group1_drive
int group1_drive
Definition: ftdi_i.h:112
ftdi_eeprom::channel_d_driver
int channel_d_driver
Definition: ftdi_i.h:83
ftdi_eeprom::high_current_a
int high_current_a
Definition: ftdi_i.h:96
ftdi_eeprom::manufacturer
char * manufacturer
Definition: ftdi_i.h:68
ftdi_eeprom::channel_b_type
int channel_b_type
Definition: ftdi_i.h:78
ftdi_eeprom::group0_drive
int group0_drive
Definition: ftdi_i.h:109
ftdi_eeprom::group2_slew
int group2_slew
Definition: ftdi_i.h:117
ftdi_eeprom::suspend_pull_downs
int suspend_pull_downs
Definition: ftdi_i.h:56
ftdi_eeprom::product_id
int product_id
Definition: ftdi_i.h:35
ftdi_eeprom::product
char * product
Definition: ftdi_i.h:70
ftdi_eeprom::invert
int invert
Definition: ftdi_i.h:100
ftdi_eeprom::channel_d_rs485enable
int channel_d_rs485enable
Definition: ftdi_i.h:88
ftdi_eeprom::channel_a_type
int channel_a_type
Definition: ftdi_i.h:77
ftdi_eeprom::use_serial
int use_serial
Definition: ftdi_i.h:59
ftdi_eeprom::group2_schmitt
int group2_schmitt
Definition: ftdi_i.h:116
ftdi_eeprom::data_order
int data_order
Definition: ftdi_i.h:125
ftdi_eeprom::channel_a_rs485enable
int channel_a_rs485enable
Definition: ftdi_i.h:85
ftdi_eeprom::self_powered
int self_powered
Definition: ftdi_i.h:42
ftdi_eeprom
FTDI eeprom structure.
Definition: ftdi_i.h:30
ftdi_eeprom::high_current
int high_current
Definition: ftdi_i.h:94
ftdi_eeprom::channel_a_driver
int channel_a_driver
Definition: ftdi_i.h:80
ftdi_eeprom::release_number
int release_number
Definition: ftdi_i.h:141
ftdi_eeprom::group3_slew
int group3_slew
Definition: ftdi_i.h:120
ftdi_eeprom::group1_slew
int group1_slew
Definition: ftdi_i.h:114
ftdi_eeprom::group2_drive
int group2_drive
Definition: ftdi_i.h:115
ftdi_eeprom::is_not_pnp
int is_not_pnp
Definition: ftdi_i.h:46
ftdi_eeprom::use_usb_version
int use_usb_version
Definition: ftdi_i.h:63