ftdi_eeprom_initdefaults const arguments
[libftdi] / ChangeLog
1 New in 1.5 - 2020-07-07
2 -----------------------
3 * Implement tc[io]flush methods & deprecate broken purge_buffers methods
4
5   Please check your code for ftdi_usb_purge_rx_buffer(),
6   ftdi_usb_purge_tx_buffer() and ftdi_usb_purge_buffers()
7   and migrate to the new ftdi_tc[io]flush() methods.
8
9   Old code will continue to function, but you'll get
10   a deprecation warning during compilation.
11
12 * Add program to test buffer flush (purge) functionality
13 * Add kernel driver auto attach/detach.
14   See new AUTO_DETACH_REATACH_SIO_MODULE option
15 * Add ftdi_setflowctrl_xonxoff()
16 * ftdi_eeprom / eeprom handling:
17   * Unify handling of all boolean eeprom flags
18   * Add device release number support
19   * Add channel_a_driver support for type xxR chips
20   * Add support for group0 drive levels on x232H chips
21   * Fix handling of high_current_drive parameter
22   * Fix inverted handling of VCP driver field for TYPE_R chips
23   * New --verbose option for eeprom decode operation
24 * Add example code for async mode
25 * Add SPDX license identifiers to the core library & ftdi_eeprom
26 * Various python SWIG wrapper improvements
27 * Various cmake file improvements
28 * Fix small bugs in error code paths
29
30 New in 1.4 - 2017-08-07
31 -----------------------
32 * New ftdi_usb_open_bus_addr() open function
33 * Use BM/R series baud rate computation for FT230X
34 * ftdi_get_error_string() now returns const char*
35 * C++ API: Ability to open devices with empty descriptor strings
36 * C++ API: Fix enumerations for buffer purge and modem controls
37 * small build fixes and improvements in the python examples
38 * ftdi_eeprom / eeprom handling:
39   * New API function: ftdi_eeprom_get_strings()
40   * Fix USE_SERIAL handling for 230X type chips
41   * Make ftdi_read_eeprom_location() endianness independent
42   * Fix flashing of FT245R
43
44 New in 1.3 - 2016-05-20
45 -----------------------
46 * Added ftdi_usb_get_strings2() to prevent automatic device close (Fahrzin Hemmati)
47 * Added ftdi_transfer_data_cancel() for cancellation of a submitted transfer,
48   avoided resubmittion of a canceled transfer in the callbacks,
49   replaced calls to libusb_handle_events with
50   libusb_handle_events_timeout_completed (Eugene Hutorny)
51 * ftdi_eeprom / eeprom handling:
52   * Add support for arbitrary user data (Salvador Eduardo Tropea)
53   * Add --build-eeprom support (Salvador Eduardo Tropea)
54   * Fix use_usb_version config file option (Thilo Schulz)
55   * Ability to include other config files in EEPROM config file (Thilo Schulz)
56   * Add external oscillator enable bit (Raphael Assenat)
57   * Support channel configuration (Stephan Linz)
58   * Added --device option to ftdi_eeprom to specify FTDI device (Robin Haberkorn)
59   * Fixed EEPROM user-area space checks for FT232R and FT245R chips (Robin Haberkorn)
60 * Various improvements to CBUS handling, including the EEPROM (Robin Haberkorn)
61 * swig wrapper: Fix handling of binary strings in ftdi_write_data()
62   for python 3 (xantares09)
63 * cbus python example code (Rodney Sinclair)
64 * ftdi_stream: fix timeout setting (Ларионов Даниил)
65 * Fixed typo in CBUS defines: CBUSG_DRIVE1 -> CBUSH_DRIVE1
66
67 New in 1.2 - 2014-11-21
68 -----------------------
69 * Support for FT230X devices (Uwe Bonnes)
70 * ftdi_usb_get_strings(): Don't try to open an already open device (Denis Sirotkin)
71 * Support for finding devices bricked by the Windows driver (Forest Crossman)
72 * cmake build system: New LibFTDI1ConfigVersion.cmake file (xantares09)
73 * Fix a typo in the MPSSE command CLK_BYTES_OR_LOW (Benjamin Vanheuverzwijn)
74 * Minor fixes for MSVC++ (Andrei Errapart)
75 * Various small code improvements (Florian Preinstorfer, Jochen Sprickerhof, xantares09)
76
77 New in 1.1 - 2014-02-05
78 -----------------------
79 * Fix FT232H eeprom suspend pulldown setting (Davide Michelizza)
80 * Fix FT232H eeprom user area size (Davide Michelizza)
81 * Improved mingw build (Paul Fertser and Michel Zou)
82 * C++ wrapper: Get/set functions for USB timeouts (Jochen Sprickerhof)
83 * Partial support for FT230X (Nathael Pajani)
84 * New API function: ftdi_eeprom_set_strings() (Nathael Pajani)
85 * Prevent possible segfault in ftdi_eeprom_decode() (Nathael Pajani)
86 * Save device release number in eeprom (Jarkko Sonninen)
87 * Fix "self powered" eeprom flag (Jarkko Sonninen)
88 * Improved python wrapper (Michel Zou)
89 * Many buildsystem improvements (Michel Zou and Mike Frysinger)
90 * See the git history for more changes and fixes
91
92 New in 1.0 - 2013-01-29
93 -----------------------
94 * Ported to libusb 1.x (initial work by Jie Zhang)
95 * Many eeprom handling improvements (Uwe Bonnes, Anders Larsen)
96 * Renamed pkconfig, library .so etc. files to "libftdi1" (Intra2net)
97 * ftdi_eeprom is part of libftdi now (Intra2net)
98
99 * New baudrate calculation code + unit tests (Uwe Bonnes and Intra2net)
100 * Improved python bindings including python3 support (Michel Zou)
101 * Switched completely to cmake build system (Intra2net)
102 * cmake: Easy libftdi discovery via find_package() (Michel Zou)
103 * eeprom handling now done via get()/set() functions (Uwe Bonnes)
104 * C++ wrapper: Fixed use-after-free in List::find_all() (Intra2net)
105 * Documentation updates (Xiaofan Chen)
106 * See the git history for more changes and fixes
107
108 New in 0.20 - 2012-03-19
109 ------------------------
110 * Support for FT232H (Uwe Bonnes)
111 * Fixed install location of header files (Uwe Bonnes and Intra2net)
112 * Backported serial_test tool from libftdi 1.x (Uwe Bonnes)
113
114 New in 0.19 - 2011-05-23
115 ------------------------
116 * Make kernel driver detach configurable (Thomas Klose)
117 * Correct ftdi_poll_modem_status() result code (Tom Saunders)
118 * cmake build system improvements (Evgeny Sinelnikov)
119 * Fix uninitialized memory access in async mode (Intra2net)
120 * Support for FT232R eeprom features (Hermann Kraus)
121 * Fix size returned by ftdi_read_data (Hermann Kraus)
122 * C++ wrapper: Fix infinite recursion in set_bitmode (Intra2net)
123 * Improvements to the python wrapper (Flynn Marquardt and Chris Zeh)
124
125 New in 0.18 - 2010-06-25
126 ------------------------
127 * Add ftdi_eeprom_free() to free allocated memory in eeprom (Wilfried Holzke)
128 * More generic error message for the FTDI kernel driver (Intra2net)
129 * Honor CPPFLAGS in python wrapper build (Alexander Lehmann)
130 * cmake: Fix package creation on 32-bit machines (Uwe Bonnes)
131 * Fix swig argument constraints (Intra2net)
132 * Don't segfault if device is closed or ftdi context is invalid (Intra2net)
133 * Ability to disable build of examples / documentation (Mike Frysinger and Intra2net)
134 * Fix typo in python wrapper build (Mike Frysinger)
135 * Autoconf build system improvements (Mike Frysinger)
136
137 New in 0.17 - 2009-12-19
138 ------------------------
139 * C++ wrapper: Reduced code duplication and small other changes (Intra2net)
140 * Deprecated old ftdi_enable_bitbang() function (Intra2net)
141 * New ftdi_usb_open_desc_index() function (Intra2net)
142 * Added baud rate test example code (Intra2net)
143 * New serial input example code (Jim Paris)
144 * Fix modem status byte filtering for USB high speed chips (Intra2net and Jim Paris)
145 * Add bitmode for synchronous fifo in FT2232H (Uwe Bonnes)
146 * Fix usb_set_configuration() call on Windows 64 (NIL)
147 * Fix usb index in ftdi_convert_baudrate() for FT2232H/FT4232H chips (Thimo Eichstaedt)
148 * Set initial baudrate on correct interface instead of always the first one (Thimo Eichstaedt)
149 * Call usb_set_configuration() on Windows only (Uwe Bonnes)
150 * 64 bit and other buildsystem fixes (Uwe Bonnes)
151 * Don't build --with-async-mode w/ libusb-compat-0.1 (Clifford Wolf)
152 * Functions for read/write of a single eeprom location (Oleg Seiljus)
153 * Protect against double close of usb device (Nathan Fraser)
154 * Fix out-of-tree-build in python wrapper (Aurelien Jarno)
155 * Autoconf and doxygen cleanup (Jim Paris)
156
157 New in 0.16 - 2009-05-08
158 ------------------------
159 * C++ wrapper: Reopen the device after calling get_strings() in Context::open() (Marek Vavruša and Intra2net)
160 * C++ wrapper: Fixed an inheritance problem (Marek Vavruša and Intra2net)
161 * C++ wrapper: Relicensed under GPLv2 + linking exception (Marek Vavruša and Intra2net)
162 * Support for FT2232H and FT4232H (David Challis, Alex Harford and Intra2net)
163 * Support for mingw cross compile (Uwe Bonnes)
164 * Python bindings and minor autoconf cleanup (Tarek Heiland)
165 * Code cleanup in various places (Intra2net)
166 * Fixed ftdi_read_chipid in some cases (Matthias Richter)
167 * eeprom decode function and small cleanups (Marius Kintel)
168 * cmake system improvements (Marius Kintel and Intra2net)
169 * Fix compilation in -ansi -pedantic mode (Matthias Janke)
170
171 New in 0.15 - 2008-12-19
172 ------------------------
173 * Full C++ wrapper. Needs boost (Marek Vavruša and Intra2net)
174 * cmake rules (Marek Vavruša)
175
176 New in 0.14 - 2008-09-09
177 ------------------------
178 * Fixed flow control code for second FT2232 interface (Marek Vavruša)
179 * Ability to set flow control via one USB call (Marek Vavruša)
180 * 64 bit build support in the RPM spec file (Uwe Bonnes)
181 * Small fix to the RPM spec file (Uwe Bonnes)
182 * Ability to set RS232 break type (Intra2net)
183 * Grouped flow control and modem status code together (Intra2net)
184
185 New in 0.13 - 2008-06-13
186 ------------------------
187 * Build .spec file via configure.in (Intra2net)
188 * Fixed "libusb-config --cflags" call (Mike Frysinger and Intra2net)
189 * Always set usb configuration (Mike Frysinger and Intra2net)
190 * Improved libusb-win32 support (Mike Frysinger)
191
192 New in 0.12 - 2008-04-16
193 ------------------------
194 * Fix build of documentation for "out of tree" builds
195 * Fix USB config descriptor in the eeprom (Juergen Beisert)
196 * Ability to purge RX/TX buffers separately (Arnim Läuger)
197 * Setting of event and error character (Arnim Läuger)
198 * Poll modem status function (Arnim Läuger and Intra2net)
199 * Updated documentation and created AUTHORS file
200
201 New in 0.11 - 2008-03-01
202 ------------------------
203 * Vala bindings helper functions (ftdi_new, ftdi_free, ftdi_list_free2) (Even Nermerson)
204 * Support for different EEPROM sizes (Andrew John Rogers, andrew@rogerstech.co.uk)
205 * Async write support. Linux only and no error handling.
206   You have to enable it via --with-async-mode.
207 * Detection of R-type chips
208 * FTDIChip-ID read support (Peter Holik)
209
210 New in 0.10 - 2007-05-08
211 ------------------------
212 * Examples for libftdi_usb_find_all and CBUS mode
213 * Fixed ftdi_list_free
214 * Small cosmetic changes
215
216 New in 0.9 - 2007-02-09
217 -----------------------
218 * Fixed build without doxygen
219 * Correct .so file library version
220
221 New in 0.8 - 2007-02-08
222 -----------------------
223 * Complete doxygen documentation and examples
224 * Extended FT2232C bitbang mode example code (Max)
225 * ftdi_usb_get_strings function to get device ID strings (Matthijs ten Berge)
226 * Fix ftdi_read_pins on PowerPC systems (Thomas Fischl)
227 * Automatically detach ftdi_sio kernel driver (Uwe Bonnes and Intra2net)
228 * Configurable flow control (Lorenz Moesenlechner and Matthias Kranz)
229
230 New in 0.7 - 2005-10-11
231 -----------------------
232 * Baudrate calculation fix for FT2232C (Steven Turner/FTDI)
233 * Find all devices by vendor/product id (Tim Ansell and Intra2net)
234 * Documentation updates (Tim Ansell)
235
236 New in 0.6 - 2005-04-24
237 -----------------------
238 * Set library version on .so file again
239 * Configurable serial line parameters (Alain Abbas)
240 * Improved filtering of status bytes (Evgeny Sinelnikov)
241 * Extended FT2232C support (Uwe Bonnes)
242 * Small improvement to the baudrate calculation code (Emil)
243 * Error handling cleanup (Rogier Wolff and Intra2net)
244
245 New in 0.5 - 2004-09-24
246 -----------------------
247 * New autoconf suite
248 * pkgconfig support
249 * Status byte filtering now works for "big" readbuffer sizes (Thanks Evgeny!)
250 * Open device by description and/or serial (Evgeny Sinelnikov)
251 * Improved error handling (Evgeny Sinelnikov)
252
253 New in 0.4 - 2004-06-15
254 -----------------------
255 * Fixed filtering of status bytes (Readbuffer size is now 64 bytes)
256 * FT2232C support (Steven Turner/FTDI)
257 * New baudrate calculation code (Ian Abbott)
258 * Automatic detection of chip type
259 * Important: ftdi_write_data now returns the bytes written
260 * Fixed defaults values in ftdi_eeprom_initdefaults (Jean-Daniel Merkli)
261 * Reset internal readbuffer offsets for reset()/purge_buffers()
262 * Small typo fixes (Mark Haemmerling)
263
264 New in 0.3 - 2004-03-25
265 -----------------------
266 * Improved read function which takes arbitrary input buffer sizes
267   Attention: Call ftdi_deinit() on exit to free used memory
268 * Vastly increased read/write performance (configurable chunksize, default is 4096)
269 * Set/get latency timer function working (Thanks Steven Turner/FTDI)
270 * Increased library version because the changes require recompilation
271
272 New in 0.2 - 2004-01-03
273 -----------------------
274 * EEPROM build fix by Daniel Kirkham (Melbourne, Australia)
275 * Implemented basic ftdi_read_data() function
276 * EEPROM write fixes
277
278 New in 0.1 - 2003-06-10
279 -----------------------
280 * First public release