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;
|
float real_freq = 0;
|
||||||
uint16_t presc;
|
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;
|
_clkHZ = clkHZ;
|
||||||
|
|
||||||
/* FT2232C has no divide by 5 instruction
|
/* FT2232C has no divide by 5 instruction
|
||||||
|
|
@ -446,17 +457,6 @@ int FTDIpp_MPSSE::setClkFreq(uint32_t clkHZ)
|
||||||
return ret;
|
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;
|
_clkHZ = real_freq;
|
||||||
|
|
||||||
return real_freq;
|
return real_freq;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue