The annotated tag, v1.0rc1 has been created
at c911b025e41ae703c78816343b1f86771c62af63 (tag)
tagging 96d277c6e1efd008b38465e5dd74de946865d8e3 (commit)
replaces v0.17
tagged by Thomas Jarosch
on Fri Dec 28 12:46:25 2012 +0100
- Log -----------------------------------------------------------------
First release candidate of libftdi 1.0
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)
iEYEABECAAYFAlDdhpgACgkQcH+RpCTwBvWj2gCgt00LOiroxjkpFFfhjRB0KVYO
JL0AnAyk4nyvhoxeHD+/R/08bFmP1+W8
=uhN3
-----END PGP SIGNATURE-----
Alexander Lehmann (1):
Honor CPPFLAGS in python wrapper to improve build process on Mac OS X
Anders Larsen (10):
ftdi_eeprom: remove redundant debug output
ftdi_eeprom: Fix segmentation fault after --flash_eeprom
Completed the support for the FT4232H chip
Bump the library version number to 2.0.0
ftdi_eeprom: Added config value "eeprom_type"
Document the FT245R EEPROM weirdness
ftdi_eeprom: reset the device after flashing the eeprom
ftdi_eeprom: Added config value "eeprom_type"
Document the FT245R EEPROM weirdness
ftdi_eeprom: reset the device after flashing the eeprom
Andreas Helmcke (1):
Add missing malloc in ftdi_eeprom
Chris Zeh (1):
Fix ftdi_read_pins in python bindings
Dan White (3):
Enable separate doxygen XML output
Extract doxygen from ftdi.c to python docstrings
Tweak doxy2swig.py output to include Returns header
Daniel Kirkham (1):
EEPROM max_power build/decode inconsistency
Emmanuel Blot (2):
Fix up string formatting for long long integers (64 bits)
Fix up build on Mac OS X:
Evgeny Sinelnikov (2):
Fix libftdi.hpp with include of system ftdi.h
Fix cmake build with not remove doc directory for build in source
Flynn Marquardt (1):
Python wrapper: Fix argument type of ftdi_read_chipid
Gerd von Egidy (1):
building parts of libftdi via cmake is now optional.
Hermann Kraus (1):
Support for FT232R eeprom features
Jared Boone (1):
Patch for building examples on MacOS X Lion
Jie Zhang (4):
Initial import of using libusb-1.0.
Declare ftdi_read_data_submit and ftdi_transfer_data_done in ftdi.h.
Limit read buffer chunksize to 16384 on Linux.
Fix a typo in comment in my last change.
Lucian Langa (1):
udev rules: Support all FTDI chip types
Maciej Grela (1):
Fix libftdi.pc file generation when building with -DDOCUMENTATION=OFF
Martin Zenzes (spacelab1-u) (1):
gitignore: temporary swp-files created by vim
Michel Zou (12):
Fix installaton of python wrapper
Enhance python wrapper
Drop 64bit lib suffix on debian systems
Python wrapper update
Fix build on Mac OS X
Python wrapper update
Avoid to link python libs on debian
python bindings: python3 support
Fix doxygen doc generation if C++ wrapper is not built
Improve cpack packaging
Fix python lib linking on MacOS X
Updated python wrapper: Fixes for python3 + documentation
Mike Frysinger (8):
use AC_CONFIG_FILES to avoid outputting files over and over
ignore more generated files
python: fix typo in top_builddir
avoid PATH_MAX/string copies usage
AX_BOOST_BASE: fix host boost search when cross-compiling
fix build failure in libusb_context change
libftdi: add a --without-examples configure flag
libftdi: add a --without-docs flag
Peter Schneider (3):
cpp-wrapper: when using get-string-and-reopen method without having set
up the usb-device the currently opened usb-device is retreived from the
usb-device-handle used in the ftdi context. this fixes the open methods of the
cpp wrapper that do not get an usb-device by parameter.
fixed NULL-pointer dereference in the ftdi_error_return(code, str) macro
that occures when it is called because of a ftdi == NULL check
fixed NULL-pointer dereference in the ftdi_error_return(code, str) macro
that occures when it is called because of a ftdi == NULL check
Thomas Jarosch (128):
Correct version in README file
Document libftdi release process
Protect against segfault if device is closed or ftdi context is invalid
Fix ftdi_set_interface: It gets called before ftdi_usb_open().
Fix swig argument constraints. Thanks to Craig Hollabaugh for the hint.
More generic error message for the FTDI kernel driver
Enhance FTDI driver message once more
Always enable async mode using libusb 1.x
Update AUTHORS and fix code indent
C++ wrapper: Fix infinite recursion in set_bitmode()
Fix initialization order (found by -Wall)
Correct (signedness) issues detected by -Wall
Update/verify EEPROM map for BM type chips
Document isochronous transfer mode of FT2232C
Cosmetic changes
Fix wrong comment about standarized USB config descriptor attributes
Better variable name for eeprom_size_mask
Correct small typo
We are out of battery power (remove wrong comment)
Adapt user area size calculation to official FTDI formula
Clarify eeprom type values are hex
eeprom of BM type chips: Fix trashing of first manufacturer string byte
Document the magic 0x02 0x03 0x01 value after the serial string
Don't output PnP options for BM type chips
Update eeprom map as we work in word sizes
Include PnP descriptor in size check
Cmake skeleton for ftdi_eeprom build support
Reformat new eeprom code to match libftdi style:
Reformat example code to match libftdi style:
Import latest, unchanged ftdi_eeprom source
Add ftdi_eeprom target (currently disabled). Get version info from
CMakeLists.txt
ftdi_eeprom compiles now. Still needs a lot of work
Update AUTHORS file
Fix email address
Remove duplicate init code
Remove duplicate init code
Update project file to kdevelop 4
Fix uninitialized variable warning about user_area_size
Address one more compile warning / add FIXME comment for Uwe
Fix doxygen documentation
Fix user area size calculation
Fix memleak on ftdi_write_data_submit() error
We already declared var 'i', no need to redo it
PC-lint settings: Add path to libusb 1.0 header file
Update copyright information and add ftdi_eeprom TODO list
Prepare switch to opaque eeprom buffer
Fix typo in documentation
Use eeprom_set_value()/eeprom_get_value() where possible
Introduce size limit in ftdi_get_eeprom_buf()
Fix raw eeprom buffer handling
Import example config file from ftdi_eeprom tree
Correct ftdi_poll_modem_status() result code
Correct ftdi_poll_modem_status() result code
Merge branch 'eeprom-new'
Fix small typo
Forward port flexible module unload behavior
Move libusb_init() call to prevent crash
Fix more occurences of serial_read -> serial_test
Fix include directories: Prefer local (probably newer) ftdi.h instead of
the already installed one
Add (optional) unit test infrastructure
Add unit test for existing baudrate calculcation code
Cosmetic changes to the unit test
Fix off-by-one buffer size error (detected by PC-lint)
Update baudrate unit test to show divisor/fractional bits/clock
(suggested by Uwe)
Update unit test to the new baudrate code
Unify baudrate unit test for chips behaving the same
Cosmetic changes and add Uwe to authors
Fixture base class destructor should be virtual
Update PC-Lint settings file
Document what needs to be done for an official 1.0 release - based upon
email from Xiaofan Chen
Adjust unit test to match baudrate calculation for AM type chips
Merge branch 'new-baudrate-code'
Silence gcc warnings about possible uninitialized variables
Added API to get libftdi library version.
Missing version header template file
Remove autoconf support. Project switched to cmake
Add 'make dist' target
Update release process documentation
Remove unused templates directory
Increase library version to 0.99
Merge branch 'autoconf-removal'
Merge remote-tracking branch 'origin/get-library-version'
Some more steps done towards 1.0
Quiet normal doxygen output so we only see the useful messages
Upgrade doxygen file with 'doxygen -u'
SWIG wrapper: Mark ftdi_version_info.version_str and .snapshot_str read
only
Remove old ftdi_enable_bitbang() function. It was marked as deprecated
for two years
Add example code demonstrating how to use the python wrapper
Solved another TODO entry
Interface can not be changed on an already open device
Remove errorneous ; after if
Increase ftdi_eeprom->cbus_function array again
Update udev rule syntax for newer kernels
Remove duplicated udev rule.
Example code: Fix compile warnings about unused variables
C++ wrapper: Reset internal USB device pointer on Context::close()
Add 'Anders Larsen' to AUTHORS
Add Jared Boone to AUTHORS
Add Xiaofan Chen to AUTHORS. This was long overdue
pkgconfig file: Depend on libusb-1.0
Rename libftdi-config to libftdi1-config
Rename libftdi.spec.in to libftdi1.spec.in. Adapt package requirements to
libusb1
Actually configure libftdi1.spec
We decided to skip this API change for now
Rename and adapt pkgconfig files for libftdi1
Rename library from libftdi to libftdi1
Try to adapt debian build rules
Don't rename python wrapper for now
cmake already places the header in /usr/include/libftdi1/ftdi.h, just
needed to adapt the .spec file
Another TODO entry gone
Rename python wrapper to ftdi1. Adapt examples with minimal code changes
Remove old async mode ignore lines
Python stuff is solved now
Merge branch 'renames-for-release'
Fix wrong array access in set_ft232h_cbus()
Remove ftdi_async_complete() left over from libftdi 0.x
C++ wrapper: Fix use-after-free issue in List::find_all()
First shot at fixing the .spec file
Install ftdi_eeprom
rpm .spec file: Package the python wrapper
Fix rpm dependency
Grab changelog from libftdi 0.20
Increase copyright year (final release will be in 2013)
Update README and TODO
Update AUTHORS
Update ChangeLog
Quick start guide how to build libftdi
Mark release candidate status
Uffe Jakobsen (1):
Fix build on FreeBSD (cmake file typo)
Uwe Bonnes (171):
We need to find libusb-1, so adapt the CMake support files
libftdi(-1): Add cmake option to enable ASYNC_MODE
Use max_packet_size
CMAKE: Fix package creation on 32-bit machines
Unconditionally call libusb_detach_kernel_driver() Try to be more
helpfull when things fail because of missing permission
libusb_init() needs libusb_exit() to avoid leak
libbusb_get_device_list() needs libusb_free_device_list() to avoid leaks
Provide a streaming read, base on code from Micah Dowty
Export ftdi_readstream()
Correct version of ftdi_readstream agains GIT Head
Store and use the libusb_context
stream_test.c cleanup
Add -Wall to compiler flags
Let the eeprom functions work on the ftdi_context, not the ftdi_eeprom
structure
Use ftdi_error_return for EEPROM error returns
Correct ftdi_eeprom_free()
We need to handle at max 256 Bytes on an attached 93xx66 EEPROM
Remove ftdi_read_eeprom_getsize() function. Integrate in into the
ftdi_read_eeprom() function. On ftdi_eeprom_write() another approach is needed
Remove ftdi_eeprom_getsize also from the CPP Wrapper
For EEPROM decoding, use the evaluated EEPROM size. FT223R is special
case, as the EEPROM holds more information than is used for the checksum
Remove dead code.
Don't erase the EEPROM size
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
EEPROM[02] is VID, so high_current must be defined somewhere else
EEPROM [6] and [7] seems more used like a release variable. Name
accordingly
Chip Type dependend code must be evaluated type dependant
On request, dump arguments during EEPROM decoding
Add missing clause
When reading EEPROM strings, clip active, as rollover doesn't work for
the FT2232R
Unconditionally set/reset eeprom values
Fix a wrong argument
Fill out control structure for EEPROM decoding
Remove forgotten print formatter
WWPROM: Invert datalines only works on FT232R
EEPROM: CBUS functions only work on TYPE_R devices
On FT2232D, eeprom->change_usb_version was not set with changed version
EEPROM High current bit is byte 0 Bit 4 for a and Byte 1 bit 4 for b
EEPROM: Fix typos around high_cuttent_drive and make code comipile again.
Will care for initializing and encoding later
EEPROM: Evaluate the channel specific settings
Channel Mode is encoded in bits 0..2, VCP is bit 3 Noisy decode
Fix channel mode specific bits, noisy output
Decode the x232H specific port functions
Evaluate eeprom Byte 0 Bit 7: Suspend on DBUS7 low
More verbosity for remote wake up, pull low and suspend on dbus7
Revisit eeprom_initdefualts Symbolic constant for USE_SERIAL_NUM
Define the CBUS Multiplexer as an ENUM
EEPROM Size check must cope with different types
All x232 type have (at least) two USB channels
Comprare ftdi->type and do not set it in EEPROM Structure initialization
FT2232C has version 0x0500 in EEPROM as default
max_power in mA is EEPROM[0x09]*2
Decode connected chip
When erasing EEPROM, detect chip type (none,internal,93xc46|56|66)
ftdi_eeprom_build needs to know EEPROM chip type
max_power EEPROM default is 100 mA
Temporary remove CBUS settings
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
EEPROM bit for high current IO seems at different bits for TYPE_R and
TYPE_2232C
TYPE_E EEPROM Byte 1 bit 4 is expected to be IN Endpoint size Request
user feedback if unexpected values seen
Get the test on TYPE_R for unexpected In-Endpoint sizes right
A set bit means load D2XX driver. Revers logic and names
Next try to get the VCP/D2XX logic right. TYPE_R in inverted
Fix logic flow after
eeprom->channel_a_type must be initialized
Set eeprom->release when building the eeprom content from the chip type
Add releases for TYPE_2232H and TYPE_4232H
when building the eeprom image, use the actual determined eeprom size
Fix writing the strings
Build EEPROM type specific bytes and bites in a switch construct
Add a lost comment
CBUS Mus has 0xd as highest number
Release values in EEPROM structure are not user changable. Remove it from
the ftdi_eeprom structure
Fix and verbose decode of TYPE_R CBUS functions and pin inversion
Add description of EEPROM Structure as decoded by now. Please comment!
Example for the EEPROM API
Correct the CBUS decode string arrays
Initialize use_defaults
Use allocated ftdi structure
Provide internal eeprom structure buffer with internal byte buffer Purge
external eeprom structure buffer and eeprom read/write byte buffer from API
Handle manufacturer/product/serial strings internal Set these string as
arguments to ftdi_eeprom_build Remove exported function ftdi_eeprom_free
Document ftdi_eeprom_initdefaults Add return value to
ftdi_eeprom_initdefaults
Use the PNP flag as seen with FTD2XX
max_power eeprom value is in 2 mA Steps
use_serial is used in all devices beside AM types. So move out of the
switch(ftdi->type) construct
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
Add option to write eeprom
Fix decoding of FT(2|4)232H channel A type
Decoded max_power is in mA and 90 mA for TYPE_R and 100mA else
FT2232H: Handle suspend_pull_downs when encoding
EEPROM: Null out buffer after allocation
EEPROM: Add missing closing brace
examples/eeprom.c: Remove unused variable
Warn user about missing FT4232H-specific EEPROM settings
Write to EEPROM direct when trying to detect EEPROM size
Simplify and correct user area calculation
Document the write option in usage()
Another approach to get the examples/streamtest.c print formatting right
Thanks to Jim Paris
Another approach to get the examples/streamtest.c print formatting right
Thanks to Jim Paris
Rename Bit pattern SUSPEND_DBUS7 to SUSPEND_DBUS7_BIT
Decode/encode use_usb_version on BM and 2232C
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
Use API and not direct structure ftdi->eeprom access in eeprom example
Fix mantainer in CMakeLists.txt
Delete some remaining debug printout
Safer initialisation of ftdi_readstream
Delete some remaining debug printout
Safer initialisation of ftdi_readstream
Check ftdi pointer before accessing it
Call ftdi_usb_close_internal and not usb_close when descriptor doesn't
match
Check ftdi pointer before accessing it
Call ftdi_usb_close_internal and not usb_close when descriptor doesn't
match
libftdi1: Fixe Fixme in CBUS decoding
Remove some code duplication
Abort if no EEPROM is found
Remove other duplicate-code
Add missing check for NULL product string
Clean up in error pathes
Clean up on error
Free the device list in ftdi_usb_find_all
Beginning of FT232H support. Many EEPROM values still need to be
deciphered!
Add FT1284 driver mode and new VCP bit position
Add FT232H drive/strength/slew/schmitt trigger
FT232H: Handle the EEPROM Bit for Enter Powerdsave on ACBUS7
FT232h: Handle the FT1284 Mode bits
Handle the FT232H CBUS Bits, Keep Values list numbered
Change how the hardware mode is programmed to inhibit setting invalid bit
combinations
Hardware mode definitions for EEPROM programming must follow new
definition Some more FT232H related defines
Fix calculation of the Mode Bitfield
Fix all leak in the examples shown with no device connected
Only ftdi_init may call libusb_init, or we leak an USB Context
1.0/examples/stream_test: Fix memory leakage pathes
1.0/src/ftdi_stream.c: Check for fitting device
Don't return before cleanup
Increment the refcount on devices we return from ftdi_usb_find_all()
Allow to search for all FTDI standard VID/PID
ftdi_usb_find_all: Only search for default devices if both VID AND PID
are 0
examples/find-all: Use the new "find-all" option
Add missing ftdi_get|set_eeprom_value entries
Add ftdi_set_eeprom_buf() as proposed in ftdi_eeprom
examples/eeprom: With no VID/PID/desc/serial, print eeprom content
ftdi_eeprom: Use exported APIs only
ftdi_eeprom: Change handling the EEPROM size
Move opening the device before tampering with the values, move reading
the device just after opening
Baud rate generation is the same as with FT2232H/FT232H
Only try ftdi_usb_open_dev if devices found
FT232H has even more config bytes and less user_area
Give usage hints for handling empty EEPROM
Rename serial_read to serial_test, as now write is also possible
Search for any devices with one of the default VID/PID, if no VID/PID if
given
Next try to get the encoding/decoding for the different FT2232/FT232H
chip modes right
Try to inhibit programming EEPROM with data for a different device and
zero EEPROM memory image early
ftdi_eeprom: If we don't understand the argument, tell the user and abort
ftdi_eeprom: Change sequenc of initialization to get the chip size right
ftdi_eeprom: the chip type is given by the connected device, we may not
change it
EEPROM: treat USE_SERIAL as bool, not a flag
Use default vendor/product strings for EEPROM when user doesn't supply
some
examples/serial_test.c: Don't crash if no pattern on write is given
examples/serial_test.c: Use FTDI vendor ID as default
examples/serial_test.c: Explicit set the line parameters
examples/serial_test.c: Use smaller buffers for lower baudrates to abort
faster on ^C
Rewrite the baudrate calculation, tested for 232R and 232H
Explain the index/value format baudrate setting
test/baudrate.cpp: Use orthogonal names for the test-targets
2232C is a BM type chips for baudrate calculations
test/baudrate.cpp: Change the expected results to the present results. AM
still has some errors in the cornercase.
Round the returned baudrate in ftdi_to_clkbits and adjust the changed
values in test/baurate.cpp
test/baudrate.cpp: Add testcases for the rounding border cases
The BM_type_chip option no longer exists
ftdi_eeprom/main.c: Malloc the eeprom Buffer with the size exported by
the API
ftdi_eeprom/main.c: Clean up the FTDI structure on exit
Use a private header for the private EEPROM structures
Use ftdi_new and not ftdi_init in the examples
Vladimir Yakovlev (4):
Proper initialisation of interface A.
Proper initialisation of interface A.
Default USB PID differs for different devices. 0x6001 is valid only for
FT245BM.
Not writing to file, in flash_raw mode
Wilfried Holzke (1):
Add ftdi_eeprom_free() to free allocated memory in eeprom
Xiaofan Chen (2):
Fix boost include directory in unit test
Fix _sleep warning on MinGW
Yi-Shin Li (1):
bug fix for async write and read
Youness Alaoui (1):
Fix header, API change ftdi_write_data_async has been replaced by
ftdi_write_data_submit
-----------------------------------------------------------------------
hooks/post-receive
--
A library to talk to FTDI chips
--
libftdi-git - see http://www.intra2net.com/en/developer/libftdi for details.
To unsubscribe send a mail to libftdi-git+unsubscribe@xxxxxxxxxxxxxxxxxxxxxxx
|