diff --git a/src/ftdiJtagBitbang.cpp b/src/ftdiJtagBitbang.cpp index 1b70124..58f9031 100644 --- a/src/ftdiJtagBitbang.cpp +++ b/src/ftdiJtagBitbang.cpp @@ -66,7 +66,8 @@ FtdiJtagBitBang::FtdiJtagBitBang(const FTDIpp_MPSSE::mpsse_bit_config &cable, setClkFreq(clkHZ); - init(1, _tck_pin | _tms_pin | _tdi_pin, BITMODE_BITBANG); + if (init(1, _tck_pin | _tms_pin | _tdi_pin, BITMODE_BITBANG) != 0) + throw std::runtime_error("low level FTDI init failed"); setBitmode(BITMODE_BITBANG); } diff --git a/src/ftdiJtagMPSSE.cpp b/src/ftdiJtagMPSSE.cpp index e9a9c9c..61d7a0d 100644 --- a/src/ftdiJtagMPSSE.cpp +++ b/src/ftdiJtagMPSSE.cpp @@ -10,6 +10,7 @@ #include #include #include +#include #include #include "ftdiJtagMPSSE.hpp" @@ -75,7 +76,8 @@ void FtdiJtagMPSSE::init_internal(const FTDIpp_MPSSE::mpsse_bit_config &cable) display("%x\n", cable.bit_high_val); display("%x\n", cable.bit_high_dir); - init(5, 0xfb, BITMODE_MPSSE); + if (init(5, 0xfb, BITMODE_MPSSE) != 0) + throw std::runtime_error("low level FTDI init failed"); config_edge(); }