libftdi
11 years agoAdd ftdi_eeprom target (currently disabled). Get version info from CMakeLists.txt
Thomas Jarosch [Sat, 23 Oct 2010 17:26:12 +0000]
Add ftdi_eeprom target (currently disabled). Get version info from CMakeLists.txt

11 years agoImport latest, unchanged ftdi_eeprom source
Thomas Jarosch [Fri, 15 Oct 2010 09:06:05 +0000]
Import latest, unchanged ftdi_eeprom source

Code needs adaption to new eeprom API and we have to check
if it can be replaced/merged with Uwe's new eeprom tool.

-> Not activated in the build process (yet)

11 years agoReformat example code to match libftdi style:
Thomas Jarosch [Mon, 4 Oct 2010 15:49:14 +0000]
Reformat example code to match libftdi style:

/usr/bin/astyle --indent=spaces=4 --indent-switches --brackets=break \
                --convert-tabs --one-line=keep-statements --one-line=keep-blocks \
                $*

11 years agoReformat new eeprom code to match libftdi style:
Thomas Jarosch [Mon, 4 Oct 2010 15:45:23 +0000]
Reformat new eeprom code to match libftdi style:

/usr/bin/astyle --indent=spaces=4 --indent-switches --brackets=break \
                --convert-tabs --one-line=keep-statements --one-line=keep-blocks \
                $*

11 years agoUse API and not direct structure ftdi->eeprom access in eeprom example
Uwe Bonnes [Sat, 2 Oct 2010 15:24:50 +0000]
Use API and not direct structure ftdi->eeprom access in eeprom example

11 years agoEnumerate all handled EEPROM values Provide ftdi_get|set_eeprom_value to access these...
Uwe Bonnes [Sat, 2 Oct 2010 15:24:00 +0000]
Enumerate all handled EEPROM values Provide ftdi_get|set_eeprom_value to access these properties Supply a copy of the EEPROM buffer to the user with ftdi_get_eeprom_buf e.g. for dumping

11 years agoDecode/encode use_usb_version on BM and 2232C
Uwe Bonnes [Sat, 2 Oct 2010 14:33:53 +0000]
Decode/encode use_usb_version on BM and 2232C

11 years agoRename Bit pattern SUSPEND_DBUS7 to SUSPEND_DBUS7_BIT
Uwe Bonnes [Sat, 2 Oct 2010 15:05:38 +0000]
Rename Bit pattern SUSPEND_DBUS7 to SUSPEND_DBUS7_BIT

11 years agoCmake skeleton for ftdi_eeprom build support
Thomas Jarosch [Mon, 27 Sep 2010 16:10:55 +0000]
Cmake skeleton for ftdi_eeprom build support

11 years agoAnother approach to get the examples/streamtest.c print formatting right Thanks to...
Uwe Bonnes [Sun, 26 Sep 2010 16:24:21 +0000]
Another approach to get the examples/streamtest.c print formatting right Thanks to Jim Paris

11 years agoDocument the write option in usage()
Uwe Bonnes [Sat, 25 Sep 2010 14:55:13 +0000]
Document the write option in usage()

11 years agoInclude PnP descriptor in size check
Thomas Jarosch [Fri, 24 Sep 2010 19:32:45 +0000]
Include PnP descriptor in size check

11 years agoUpdate eeprom map as we work in word sizes
Thomas Jarosch [Fri, 24 Sep 2010 18:19:39 +0000]
Update eeprom map as we work in word sizes

11 years agoSimplify and correct user area calculation
Uwe Bonnes [Fri, 24 Sep 2010 15:12:34 +0000]
Simplify and correct user area calculation

11 years agoDon't output PnP options for BM type chips
Thomas Jarosch [Fri, 24 Sep 2010 14:40:57 +0000]
Don't output PnP options for BM type chips

11 years agoDocument the magic 0x02 0x03 0x01 value after the serial string
Thomas Jarosch [Fri, 24 Sep 2010 14:22:48 +0000]
Document the magic 0x02 0x03 0x01 value after the serial string

11 years agoeeprom of BM type chips: Fix trashing of first manufacturer string byte
Thomas Jarosch [Fri, 24 Sep 2010 13:43:21 +0000]
eeprom of BM type chips: Fix trashing of first manufacturer string byte

11 years agoClarify eeprom type values are hex
Thomas Jarosch [Fri, 24 Sep 2010 13:10:32 +0000]
Clarify eeprom type values are hex

11 years agoAdapt user area size calculation to official FTDI formula
Thomas Jarosch [Fri, 24 Sep 2010 13:02:56 +0000]
Adapt user area size calculation to official FTDI formula

11 years agoWe are out of battery power (remove wrong comment)
Thomas Jarosch [Fri, 24 Sep 2010 12:46:58 +0000]
We are out of battery power (remove wrong comment)

11 years agoCorrect small typo
Thomas Jarosch [Fri, 24 Sep 2010 12:22:21 +0000]
Correct small typo

11 years agoBetter variable name for eeprom_size_mask
Thomas Jarosch [Fri, 24 Sep 2010 10:13:19 +0000]
Better variable name for eeprom_size_mask

11 years agoFix wrong comment about standarized USB config descriptor attributes
Thomas Jarosch [Fri, 24 Sep 2010 09:55:57 +0000]
Fix wrong comment about standarized USB config descriptor attributes

11 years agoCosmetic changes
Thomas Jarosch [Fri, 24 Sep 2010 07:48:09 +0000]
Cosmetic changes

11 years agoDocument isochronous transfer mode of FT2232C
Thomas Jarosch [Fri, 24 Sep 2010 07:40:00 +0000]
Document isochronous transfer mode of FT2232C

11 years agoUpdate/verify EEPROM map for BM type chips
Thomas Jarosch [Fri, 24 Sep 2010 07:02:43 +0000]
Update/verify EEPROM map for BM type chips

11 years agoWrite to EEPROM direct when trying to detect EEPROM size
Uwe Bonnes [Fri, 17 Sep 2010 13:15:14 +0000]
Write to EEPROM direct when trying to detect EEPROM size

11 years agoWarn user about missing FT4232H-specific EEPROM settings
Uwe Bonnes [Thu, 16 Sep 2010 09:55:20 +0000]
Warn user about missing FT4232H-specific EEPROM settings

11 years agoexamples/eeprom.c: Remove unused variable
Uwe Bonnes [Thu, 16 Sep 2010 09:49:05 +0000]
examples/eeprom.c: Remove unused variable

11 years agoEEPROM: Add missing closing brace
Uwe Bonnes [Wed, 15 Sep 2010 15:33:39 +0000]
EEPROM: Add missing closing brace

11 years agoEEPROM: Null out buffer after allocation
Uwe Bonnes [Wed, 15 Sep 2010 15:32:48 +0000]
EEPROM: Null out buffer after allocation

11 years agoFT2232H: Handle suspend_pull_downs when encoding
Uwe Bonnes [Wed, 15 Sep 2010 15:31:01 +0000]
FT2232H: Handle suspend_pull_downs when encoding

11 years agoDecoded max_power is in mA and 90 mA for TYPE_R and 100mA else
Uwe Bonnes [Wed, 15 Sep 2010 14:19:53 +0000]
Decoded max_power is in mA and 90 mA for TYPE_R and 100mA else

11 years agoFix decoding of FT(2|4)232H channel A type
Uwe Bonnes [Wed, 15 Sep 2010 11:20:31 +0000]
Fix decoding of FT(2|4)232H channel A type

11 years agoAdd option to write eeprom
Uwe Bonnes [Tue, 14 Sep 2010 15:11:47 +0000]
Add option to write eeprom

11 years agoftdi_write_eeprom_location access to checksum protected area will produce checksum...
Uwe Bonnes [Tue, 14 Sep 2010 15:05:38 +0000]
ftdi_write_eeprom_location access to checksum protected area will produce checksum errors, so check - access is about byte 0xff - eeprom chip is of type 93c66, so high area exists - ftdi device can handle 93c66

11 years agouse_serial is used in all devices beside AM types. So move out of the switch(ftdi...
Uwe Bonnes [Tue, 14 Sep 2010 14:07:56 +0000]
use_serial is used in all devices beside AM types. So move out of the switch(ftdi->type) construct

11 years agomax_power eeprom value is in 2 mA Steps
Uwe Bonnes [Tue, 14 Sep 2010 13:50:54 +0000]
max_power eeprom value is in 2 mA Steps

11 years agoUse the PNP flag as seen with FTD2XX
Uwe Bonnes [Tue, 14 Sep 2010 13:49:55 +0000]
Use the PNP flag as seen with FTD2XX

11 years agoDocument ftdi_eeprom_initdefaults Add return value to ftdi_eeprom_initdefaults
Uwe Bonnes [Tue, 14 Sep 2010 13:21:16 +0000]
Document ftdi_eeprom_initdefaults Add return value to ftdi_eeprom_initdefaults

11 years agoHandle manufacturer/product/serial strings internal Set these string as arguments...
Uwe Bonnes [Tue, 14 Sep 2010 13:11:47 +0000]
Handle manufacturer/product/serial strings internal Set these string as arguments to ftdi_eeprom_build Remove exported function ftdi_eeprom_free

11 years agoProvide internal eeprom structure buffer with internal byte buffer Purge external...
Uwe Bonnes [Tue, 14 Sep 2010 12:46:02 +0000]
Provide internal eeprom structure buffer with internal byte buffer Purge external eeprom structure buffer and eeprom read/write byte buffer from API

11 years agoUse allocated ftdi structure
Uwe Bonnes [Mon, 13 Sep 2010 14:57:32 +0000]
Use allocated ftdi structure

11 years agoInitialize use_defaults
Uwe Bonnes [Fri, 10 Sep 2010 21:20:48 +0000]
Initialize use_defaults

11 years agoCorrect the CBUS decode string arrays
Uwe Bonnes [Fri, 10 Sep 2010 21:20:05 +0000]
Correct the CBUS decode string arrays

11 years agoExample for the EEPROM API
Uwe Bonnes [Fri, 10 Sep 2010 20:54:39 +0000]
Example for the EEPROM API

11 years agoAdd description of EEPROM Structure as decoded by now. Please comment!
Uwe Bonnes [Fri, 10 Sep 2010 20:41:35 +0000]
Add description of EEPROM Structure as decoded by now. Please comment!

11 years agoFix and verbose decode of TYPE_R CBUS functions and pin inversion
Uwe Bonnes [Fri, 10 Sep 2010 20:40:29 +0000]
Fix and verbose decode of TYPE_R CBUS functions and pin inversion

11 years agoRelease values in EEPROM structure are not user changable. Remove it from the ftdi_ee...
Uwe Bonnes [Fri, 10 Sep 2010 19:59:40 +0000]
Release values in EEPROM structure are not user changable. Remove it from the ftdi_eeprom structure

11 years agoCBUS Mus has 0xd as highest number
Uwe Bonnes [Fri, 10 Sep 2010 19:56:07 +0000]
CBUS Mus has 0xd as highest number

11 years agoAdd a lost comment
Uwe Bonnes [Fri, 10 Sep 2010 19:55:36 +0000]
Add a lost comment

11 years agoBuild EEPROM type specific bytes and bites in a switch construct
Uwe Bonnes [Fri, 10 Sep 2010 19:53:20 +0000]
Build EEPROM type specific bytes and bites in a switch construct

11 years agoFix writing the strings
Uwe Bonnes [Fri, 10 Sep 2010 19:47:55 +0000]
Fix writing the strings

11 years agowhen building the eeprom image, use the actual determined eeprom size
Uwe Bonnes [Fri, 10 Sep 2010 19:40:28 +0000]
when building the eeprom image, use the actual determined eeprom size

11 years agoSet eeprom->release when building the eeprom content from the chip type Add releases...
Uwe Bonnes [Fri, 10 Sep 2010 19:38:28 +0000]
Set eeprom->release when building the eeprom content from the chip type Add releases for TYPE_2232H and TYPE_4232H

11 years agoeeprom->channel_a_type must be initialized
Uwe Bonnes [Fri, 10 Sep 2010 19:36:11 +0000]
eeprom->channel_a_type must be initialized

11 years agoFix logic flow after
Uwe Bonnes [Fri, 10 Sep 2010 19:35:44 +0000]
Fix logic flow after

11 years agoNext try to get the VCP/D2XX logic right. TYPE_R in inverted
Uwe Bonnes [Fri, 10 Sep 2010 17:35:58 +0000]
Next try to get the VCP/D2XX logic right. TYPE_R in inverted

11 years agoA set bit means load D2XX driver. Revers logic and names
Uwe Bonnes [Fri, 10 Sep 2010 13:34:04 +0000]
A set bit means load D2XX driver. Revers logic and names

11 years agoGet the test on TYPE_R for unexpected In-Endpoint sizes right
Uwe Bonnes [Fri, 10 Sep 2010 13:27:25 +0000]
Get the test on TYPE_R for unexpected In-Endpoint sizes right

11 years agoTYPE_E EEPROM Byte 1 bit 4 is expected to be IN Endpoint size Request user feedback...
Uwe Bonnes [Fri, 10 Sep 2010 13:25:31 +0000]
TYPE_E EEPROM Byte 1 bit 4 is expected to be IN Endpoint size Request user feedback if unexpected values seen

11 years agoEEPROM bit for high current IO seems at different bits for TYPE_R and TYPE_2232C
Uwe Bonnes [Fri, 10 Sep 2010 13:18:28 +0000]
EEPROM bit for high current IO seems at different bits for TYPE_R and TYPE_2232C

11 years agoThe USB Version seems to be always set in EEPROM EEPROM byte[0x0a] bit 4 (change_usb_...
Uwe Bonnes [Fri, 10 Sep 2010 12:47:48 +0000]
The USB Version seems to be always set in EEPROM EEPROM byte[0x0a] bit 4 (change_usb_version) was never seen set. Remove it and request user report if ever seen set

11 years agoTemporary remove CBUS settings
Uwe Bonnes [Fri, 10 Sep 2010 12:06:28 +0000]
Temporary remove CBUS settings

11 years agomax_power EEPROM default is 100 mA
Uwe Bonnes [Fri, 10 Sep 2010 11:31:17 +0000]
max_power EEPROM default is 100 mA

11 years agoftdi_eeprom_build needs to know EEPROM chip type
Uwe Bonnes [Fri, 10 Sep 2010 11:24:57 +0000]
ftdi_eeprom_build needs to know EEPROM chip type

11 years agoWhen erasing EEPROM, detect chip type (none,internal,93xc46|56|66)
Uwe Bonnes [Fri, 10 Sep 2010 11:20:37 +0000]
When erasing EEPROM, detect chip type (none,internal,93xc46|56|66)

11 years agoDecode connected chip
Uwe Bonnes [Fri, 10 Sep 2010 10:41:00 +0000]
Decode connected chip

11 years agomax_power in mA is EEPROM[0x09]*2
Uwe Bonnes [Fri, 10 Sep 2010 09:32:47 +0000]
max_power in mA is EEPROM[0x09]*2

11 years agoFT2232C has version 0x0500 in EEPROM as default
Uwe Bonnes [Fri, 10 Sep 2010 09:21:54 +0000]
FT2232C has version 0x0500 in EEPROM as default

11 years agoComprare ftdi->type and do not set it in EEPROM Structure initialization
Uwe Bonnes [Fri, 10 Sep 2010 09:20:08 +0000]
Comprare ftdi->type and do not set it in EEPROM Structure initialization

11 years agoAll x232 type have (at least) two USB channels
Uwe Bonnes [Fri, 10 Sep 2010 09:17:46 +0000]
All x232 type have (at least) two USB channels

11 years agoEEPROM Size check must cope with different types
Uwe Bonnes [Fri, 10 Sep 2010 09:16:52 +0000]
EEPROM Size check must cope with different types

11 years agoDefine the CBUS Multiplexer as an ENUM
Uwe Bonnes [Fri, 10 Sep 2010 09:09:38 +0000]
Define the CBUS Multiplexer as an ENUM

11 years agoRevisit eeprom_initdefualts Symbolic constant for USE_SERIAL_NUM
Uwe Bonnes [Thu, 9 Sep 2010 22:55:00 +0000]
Revisit eeprom_initdefualts Symbolic constant for USE_SERIAL_NUM

11 years agoMore verbosity for remote wake up, pull low and suspend on dbus7
Uwe Bonnes [Thu, 9 Sep 2010 22:25:06 +0000]
More verbosity for remote wake up, pull low and suspend on dbus7

11 years agoEvaluate eeprom Byte 0 Bit 7: Suspend on DBUS7 low
Uwe Bonnes [Thu, 9 Sep 2010 22:24:00 +0000]
Evaluate eeprom Byte 0 Bit 7: Suspend on DBUS7 low

11 years agoDecode the x232H specific port functions
Uwe Bonnes [Thu, 9 Sep 2010 21:33:11 +0000]
Decode the x232H specific port functions

11 years agoFix channel mode specific bits, noisy output
Uwe Bonnes [Thu, 9 Sep 2010 21:10:42 +0000]
Fix channel mode specific bits, noisy output

11 years agoChannel Mode is encoded in bits 0..2, VCP is bit 3 Noisy decode
Uwe Bonnes [Thu, 9 Sep 2010 21:03:46 +0000]
Channel Mode is encoded in bits 0..2, VCP is bit 3 Noisy decode

11 years agoEEPROM: Evaluate the channel specific settings
Uwe Bonnes [Thu, 9 Sep 2010 20:41:51 +0000]
EEPROM: Evaluate the channel specific settings

11 years agoEEPROM: Fix typos around high_cuttent_drive and make code comipile again. Will care...
Uwe Bonnes [Thu, 9 Sep 2010 20:32:39 +0000]
EEPROM: Fix typos around high_cuttent_drive and make code comipile again. Will care for initializing and encoding later

11 years agoEEPROM High current bit is byte 0 Bit 4 for a and Byte 1 bit 4 for b
Uwe Bonnes [Thu, 9 Sep 2010 20:29:16 +0000]
EEPROM High current bit is byte 0 Bit 4 for a and Byte 1 bit 4 for b

11 years agoOn FT2232D, eeprom->change_usb_version was not set with changed version
Uwe Bonnes [Thu, 9 Sep 2010 20:15:21 +0000]
On FT2232D, eeprom->change_usb_version was not set with changed version

11 years agoEEPROM: CBUS functions only work on TYPE_R devices
Uwe Bonnes [Thu, 9 Sep 2010 20:10:47 +0000]
EEPROM: CBUS functions only work on TYPE_R devices

11 years agoWWPROM: Invert datalines only works on FT232R
Uwe Bonnes [Thu, 9 Sep 2010 20:07:50 +0000]
WWPROM: Invert datalines only works on FT232R

11 years agoRemove forgotten print formatter
Uwe Bonnes [Wed, 8 Sep 2010 17:43:30 +0000]
Remove forgotten print formatter

11 years agoFill out control structure for EEPROM decoding
Uwe Bonnes [Wed, 8 Sep 2010 17:41:40 +0000]
Fill out control structure for EEPROM decoding

11 years agoFix a wrong argument
Uwe Bonnes [Wed, 8 Sep 2010 17:13:21 +0000]
Fix a wrong argument

11 years agoUnconditionally set/reset eeprom values
Uwe Bonnes [Wed, 8 Sep 2010 17:12:50 +0000]
Unconditionally set/reset eeprom values

11 years agoWhen reading EEPROM strings, clip active, as rollover doesn't work for the FT2232R
Uwe Bonnes [Wed, 8 Sep 2010 17:07:48 +0000]
When reading EEPROM strings, clip active, as rollover doesn't work for the FT2232R

11 years agoAdd missing clause
Uwe Bonnes [Wed, 8 Sep 2010 17:07:15 +0000]
Add missing clause

11 years agoOn request, dump arguments during EEPROM decoding
Uwe Bonnes [Wed, 8 Sep 2010 17:01:39 +0000]
On request, dump arguments during EEPROM decoding

11 years agoChip Type dependend code must be evaluated type dependant
Uwe Bonnes [Wed, 8 Sep 2010 16:16:59 +0000]
Chip Type dependend code must be evaluated type dependant

11 years agoEEPROM [6] and [7] seems more used like a release variable. Name accordingly
Uwe Bonnes [Wed, 8 Sep 2010 16:08:17 +0000]
EEPROM [6] and [7] seems more used like a release variable. Name accordingly

11 years agoEEPROM[02] is VID, so high_current must be defined somewhere else
Uwe Bonnes [Wed, 8 Sep 2010 15:57:18 +0000]
EEPROM[02] is VID, so high_current must be defined somewhere else

11 years agoOn 93xx46, the Manufacturer/Product/Vendor Pointer gets clipped anyways, so don't...
Uwe Bonnes [Wed, 8 Sep 2010 15:55:00 +0000]
On 93xx46, the Manufacturer/Product/Vendor Pointer gets clipped anyways, so don't clip to get things right on 93xx56 and 93x66 Only write strings if allocation succeeded

11 years agoDon't erase the EEPROM size
Uwe Bonnes [Wed, 8 Sep 2010 14:11:19 +0000]
Don't erase the EEPROM size

11 years agoRemove dead code.
Uwe Bonnes [Wed, 8 Sep 2010 14:10:41 +0000]
Remove dead code.

11 years agoFor EEPROM decoding, use the evaluated EEPROM size. FT223R is special case, as the...
Uwe Bonnes [Wed, 8 Sep 2010 14:02:48 +0000]
For EEPROM decoding, use the evaluated EEPROM size. FT223R is special case, as the EEPROM holds more information than is used for the checksum