We are investigating an issue about using libftdi-1.0 on SuSE 11.0 or
11.1. When read transfer is done from FT2232L, I got packet like this:
buf[0] = 0x31 buf[1] = 0x60 buf[2] = 0x31 buf[3] = 0x60 buf[4] =
0x31 buf[5] = 0x60 buf[6] = 0x20 buf[7] = 0x10 buf[8] = 0xD0
You can see there are three pairs of status bytes in the packet. While
on Debian, I got three packets like this:
buf[0] = 0x31 buf[1] = 0x60
buf[0] = 0x31 buf[1] = 0x60
buf[0] = 0x31 buf[1] = 0x60 buf[2] = 0x20 buf[3] = 0x10 buf[4] = 0xF0
FT2232H has a similar issue on SuSE:
buf[0] = 0x32 buf[1] = 0x60 buf[2] = 0x32 buf[3] = 0x60 buf[4] =
0x20 buf[5] = 0x10 buf[6] = 0xD0
while on Debian:
buf[0] = 0x32 buf[1] = 0x60
buf[0] = 0x32 buf[1] = 0x60 buf[2] = 0x20 buf[3] = 0x10 buf[4] = 0xF0
Does anyone know why the packet has 3 pairs of status bytes in one packet?
To see this error, you may need the attached patch for libftdi-1.0.
Regards,
Jie
--
libftdi - see http://www.intra2net.com/en/developer/libftdi for details.
To unsubscribe send a mail to [email protected]
Index: src/ftdi.c
===================================================================
--- src/ftdi.c (revision 3932)
+++ src/ftdi.c (working copy)
@@ -1171,6 +1171,9 @@ static void ftdi_read_data_cb(struct lib
actual_length = transfer->actual_length;
+ for (i = 0; i < actual_length; i++)
+ printf ("buf[%d] = 0x%X ", i, ftdi->readbuffer[ftdi->readbuffer_offset + i]);
+ printf ("\n");
if (actual_length > 2)
{
// skip FTDI status bytes.