ftdipp_mpsse.cpp: setClkFreq: flush buffers before changing clock frequency
This commit is contained in:
parent
2c6dac2d9c
commit
936fe64c4a
|
|
@ -377,6 +377,17 @@ int FTDIpp_MPSSE::setClkFreq(uint32_t clkHZ)
|
|||
float real_freq = 0;
|
||||
uint16_t presc;
|
||||
|
||||
#if (FTDI_VERSION < 105)
|
||||
ftdi_usb_purge_buffers(_ftdi);
|
||||
#else
|
||||
if ((ret = ftdi_tcioflush(_ftdi)) < 0) {
|
||||
printError("selfClkFreq: fail to flush buffers: " +
|
||||
string(ftdi_get_error_string(_ftdi)));
|
||||
return ret;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
_clkHZ = clkHZ;
|
||||
|
||||
/* FT2232C has no divide by 5 instruction
|
||||
|
|
@ -446,17 +457,6 @@ int FTDIpp_MPSSE::setClkFreq(uint32_t clkHZ)
|
|||
return ret;
|
||||
}
|
||||
|
||||
#if (FTDI_VERSION < 105)
|
||||
ftdi_usb_purge_buffers(_ftdi);
|
||||
#else
|
||||
if ((ret = ftdi_tcioflush(_ftdi)) < 0) {
|
||||
printError("selfClkFreq: fail to flush buffers: " +
|
||||
string(ftdi_get_error_string(_ftdi)));
|
||||
return ret;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
_clkHZ = real_freq;
|
||||
|
||||
return real_freq;
|
||||
|
|
|
|||
Loading…
Reference in New Issue