This is all a smoke screen to keep you off of the most important aspect of this case, and that is that *someone* inside of FTDI gave the order to write and distribute ILLEGAL MALWARE to damage [otherwise] innocent end-users products.
On their website there is relase date of this useless Windows driver-is it correct date?
Windows* 2014-09-29
2.12.00 WHQL Certified
Available as setup executable
However, it might not be date when included to autoupdates in Micro$soft?
Downloaded one of the Linux versions from
http://www.ftdichip.com/Drivers/VCP/Linux/ftdi_sio.tar.gz to see what they do in this driver during module initiation, but it looks like latest release date is: Linux
2009-05-14 version 1.5.0 .
Is it latest official version of this driver or somewhere exists newer versions, eg. included in latest kernel sources?
In this from their website moduel init looks like this:
static int __init ftdi_init (void)
{
int retval;
dbg("%s", __FUNCTION__);
if (vendor > 0 && product > 0) {
/* Add user specified VID/PID to reserved element of table. */
int i;
for (i = 0; id_table_combined[i].idVendor; i++)
;
id_table_combined[i].match_flags = USB_DEVICE_ID_MATCH_DEVICE;
id_table_combined[i].idVendor = vendor;
id_table_combined[i].idProduct = product;
}
retval = usb_serial_register(&ftdi_sio_device);
if (retval)
goto failed_sio_register;
retval = usb_register(&ftdi_driver);
if (retval)
goto failed_usb_register;
info(DRIVER_VERSION ":" DRIVER_DESC);
return 0;
failed_usb_register:
usb_serial_deregister(&ftdi_sio_device);
failed_sio_register:
return retval;
}
Is this part of the driver code which forced to stop working those competitors USB dongles even under strong Linux?
if (vendor > 0 && product > 0) {
/* Add user specified VID/PID to reserved element of table. */
int i;
for (i = 0; id_table_combined.idVendor; i++)
;
id_table_combined.match_flags = USB_DEVICE_ID_MATCH_DEVICE;
id_table_combined.idVendor = vendor;
id_table_combined.idProduct = product;
}
Anyway it looks like this Linux driver on his webpage is old and only simply overides vendor and product id's, but ONLY when BOTH module parameters are > 0 and hopefully only PC memory.
But, where are those patched versions of this
ftdi_sio.c Linux driver module which reprogram back those product Id's I guess to correct value to be able use bricked products even under Windows with good old drivers ?
Downloading latest Linux kernel 3.17.1 from
http://kernel.org for SIL CP2104 , so will also take a look what is inside
ftdi_sio.c , while it looks like on kernel.org there is no patches for this file
![Huh? ???](https://www.eevblog.com/forum/Smileys/default/huh.gif)
Just in the case if one of friends of mine bought any product bricked by FTDI to give it second life... under Linux
![Evil >:D](https://www.eevblog.com/forum/Smileys/default/evil.gif)