Call ftdi_set_interface right after ftdi_init and before ftdi_usb_open
Else libftdi complains that it is impossible to set interface on an already
open device since 1c5fa36b67bc30742eee94ed3e3648fcd4640f24
(which will probably end up in libftdi 0.21).
Corresponding to flashrom svn r1573.
Signed-off-by: Ilya A. Volynets-Evenbakh <ilya@total-knowledge.com>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
diff --git a/ft2232_spi.c b/ft2232_spi.c
index a5d3828..d599a8a 100644
--- a/ft2232_spi.c
+++ b/ft2232_spi.c
@@ -277,6 +277,10 @@
return -3;
}
+ if (ftdi_set_interface(ftdic, ft2232_interface) < 0) {
+ msg_perr("Unable to select interface: %s\n", ftdic->error_str);
+ }
+
f = ftdi_usb_open(ftdic, ft2232_vid, ft2232_type);
if (f < 0 && f != -5) {
@@ -291,11 +295,6 @@
clock_5x = 0;
}
- if (ftdi_set_interface(ftdic, ft2232_interface) < 0) {
- msg_perr("Unable to select interface: %s\n",
- ftdic->error_str);
- }
-
if (ftdi_usb_reset(ftdic) < 0) {
msg_perr("Unable to reset FTDI device\n");
}