X-Git-Url: http://developer.intra2net.com/git/?a=blobdiff_plain;f=src%2Fftdi.h;h=281c261abf645d0adebf4dbb996f7930a6f653d1;hb=02e4a740e847307c069bf0f58b24c72d6f239183;hp=03bb167d5949e4ccd09002cff29d1aa348a0134c;hpb=85394e6249329e13fd8530a5aeb72355c5340d62;p=libftdi diff --git a/src/ftdi.h b/src/ftdi.h index 03bb167..281c261 100644 --- a/src/ftdi.h +++ b/src/ftdi.h @@ -185,6 +185,9 @@ struct ftdi_eeprom /** release */ int release; + /* Suspend on DBUS7 Low */ + int suspend_dbus7; + /** input in isochronous transfer mode */ int in_is_isochronous; /** output in isochronous transfer mode */ @@ -208,6 +211,15 @@ struct ftdi_eeprom /** serial number */ char *serial; + /* 2232D/H(/FT4432H?) specific */ + /* Hardware type, 0 = RS232 Uart, 1 = 245 FIFO, 2 = CPU FIFO, + 4 = OPTO Isolate */ + int channel_a_type; + int channel_b_type; + /* Driver Type, 1 = VCP */ + int channel_a_driver; + int channel_b_driver; + /* Special function of FT232R devices (and possibly others as well) */ /** CBUS pin function. See CBUS_xxx defines. */ int cbus_function[5]; @@ -218,6 +230,25 @@ struct ftdi_eeprom /** Select inversion of data lines (bitmask). */ int invert; + /*2232H/4432H Group specific values */ + /* Group0 is AL on 2322H and A on 4232H + Group1 is AH on 2232H and B on 4232H + Group2 is BL on 2322H and C on 4232H + Group3 is BH on 2232H and C on 4232H*/ + int group0_drive; + int group0_schmitt; + int group0_slew; + int group1_drive; + int group1_schmitt; + int group1_slew; + int group2_drive; + int group2_schmitt; + int group2_slew; + int group3_drive; + int group3_schmitt; + int group3_slew; + + /** eeprom size in bytes. This doesn't get stored in the eeprom but is the only way to pass it to ftdi_eeprom_build. */ int size; @@ -338,6 +369,24 @@ struct ftdi_device_list /** Invert RI# */ #define INVERT_RI 0x80 +/** Interface Mode. */ +#define CHANNEL_IS_UART 0x0 +#define CHANNEL_IS_245 0x1 +#define CHANNEL_IS_CPU 0x2 +#define CHANNEL_IS_OPTO 0x4 + +#define DRIVE_4MA 0 +#define DRIVE_8MA 1 +#define DRIVE_12MA 2 +#define DRIVE_16MA 3 +#define SLOW_SLEW 4 +#define IS_SCHMITT 8 + +/** Driver Type. */ +#define DRIVER_VCP 0x08 + +#define SUSPEND_DBUS7 0x80 + /** High current drive. */ #define HIGH_CURRENT_DRIVE 0x10