X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=firmware%2Fapps%2Fjtag%2Fjtag.c;h=97db51bb408d78218da050a03835ea7e1a513b2c;hb=f10e55ab25dfe0b4114a1700920a1433708e8fcd;hp=20c43601947a6c68e1af09e4dd5b6085603a1fc5;hpb=d7ad826230d336ad7b7bd20e47dccc26d7ad456f;p=goodfet diff --git a/firmware/apps/jtag/jtag.c b/firmware/apps/jtag/jtag.c index 20c4360..97db51b 100644 --- a/firmware/apps/jtag/jtag.c +++ b/firmware/apps/jtag/jtag.c @@ -36,20 +36,17 @@ unsigned char jtagtrans8(unsigned char byte){ if(bit==7) SETTMS;//TMS high on last bit to exit. - CLRTCK; - SETTCK; - /* read MISO on trailing edge */ + TCKTOCK; + /* read MISO on trailing edge */ byte |= READMISO; } RESTORETCLK; // exit state - CLRTCK; - SETTCK; + TCKTOCK; // update state CLRTMS; - CLRTCK; - SETTCK; + TCKTOCK; return byte; } @@ -79,8 +76,7 @@ unsigned long jtagtransn(unsigned long word, if(bit==bitcount-1) SETTMS;//TMS high on last bit to exit. - CLRTCK; - SETTCK; + TCKTOCK; /* read MISO on trailing edge */ word |= READMISO; } @@ -92,12 +88,10 @@ unsigned long jtagtransn(unsigned long word, RESTORETCLK; // exit state - CLRTCK; - SETTCK; + TCKTOCK; // update state CLRTMS; - CLRTCK; - SETTCK; + TCKTOCK; return word; } @@ -114,15 +108,12 @@ unsigned int drwidth=20; unsigned long jtag_dr_shift20(unsigned long in){ // idle SETTMS; - CLRTCK; - SETTCK; + TCKTOCK; // select DR CLRTMS; - CLRTCK; - SETTCK; + TCKTOCK; // capture IR - CLRTCK; - SETTCK; + TCKTOCK; // shift DR, then idle return(jtagtransn(in,20)); @@ -133,15 +124,12 @@ unsigned long jtag_dr_shift20(unsigned long in){ unsigned int jtag_dr_shift16(unsigned int in){ // idle SETTMS; - CLRTCK; - SETTCK; + TCKTOCK; // select DR CLRTMS; - CLRTCK; - SETTCK; + TCKTOCK; // capture IR - CLRTCK; - SETTCK; + TCKTOCK; // shift DR, then idle return(jtagtransn(in,16)); @@ -152,18 +140,14 @@ unsigned int jtag_dr_shift16(unsigned int in){ unsigned char jtag_ir_shift8(unsigned char in){ // idle SETTMS; - CLRTCK; - SETTCK; + TCKTOCK; // select DR - CLRTCK; - SETTCK; + TCKTOCK; // select IR CLRTMS; - CLRTCK; - SETTCK; + TCKTOCK; // capture IR - CLRTCK; - SETTCK; + TCKTOCK; // shift IR, then idle. return(jtagtrans8(in));