ftdijtag: add shiftIR variant with value passed by value instead of ref. Used when the command is up to 8bits with no read

This commit is contained in:
Gwenhael Goavec-Merou 2019-10-04 08:25:37 +02:00
parent 53ad8dfda8
commit 8b021bdd3a
2 changed files with 10 additions and 0 deletions

View File

@ -302,6 +302,15 @@ int FtdiJtag::shiftDR(unsigned char *tdi, unsigned char *tdo, int drlen, int end
return 0;
}
int FtdiJtag::shiftIR(unsigned char tdi, int irlen, int end_state)
{
if (irlen > 8) {
cerr << "Error: this method this direct char don't support more than 1 byte" << endl;
return -1;
}
return shiftIR(&tdi, NULL, irlen, end_state);
}
int FtdiJtag::shiftIR(unsigned char *tdi, unsigned char *tdo, int irlen, int end_state)
{
display("%s: avant shiftIR\n", __func__);

View File

@ -15,6 +15,7 @@ class FtdiJtag : public FTDIpp_MPSSE {
int detectChain(std::vector<int> &devices, int max_dev);
int shiftIR(unsigned char *tdi, unsigned char *tdo, int irlen, int end_state = RUN_TEST_IDLE);
int shiftIR(unsigned char tdi, int irlen, int end_state = RUN_TEST_IDLE);
int shiftDR(unsigned char *tdi, unsigned char *tdo, int drlen, int end_state = RUN_TEST_IDLE);
int read_write(unsigned char *tdi, unsigned char *tdo, int len, char last);