# HG changeset patch # User Mychaela Falconia # Date 1487557553 0 # Node ID da4d4af80fdd07218825e950ab385abcddb578ee # Parent 40807eb35ffe07b6d1fa3b3ee71a12d3a65f2bda fc-tmsh: ttw response handling implemented diff -r 40807eb35ffe -r da4d4af80fdd rvinterf/tmsh/etmbasic.c --- a/rvinterf/tmsh/etmbasic.c Mon Feb 20 02:04:27 2017 +0000 +++ b/rvinterf/tmsh/etmbasic.c Mon Feb 20 02:25:53 2017 +0000 @@ -137,7 +137,9 @@ l1tm_response_index_val("txpr"); return; case TX_TEMPLATE_WRITE: - print_etm_pkt_raw("TX_TEMPLATE_WRITE response"); + if (rvi_msg_len < 5) + goto runt; + l1tm_ttw_response(); return; case TX_TEMPLATE_READ: print_etm_pkt_raw("TX_TEMPLATE_READ response"); diff -r 40807eb35ffe -r da4d4af80fdd rvinterf/tmsh/l1resp.c --- a/rvinterf/tmsh/l1resp.c Mon Feb 20 02:04:27 2017 +0000 +++ b/rvinterf/tmsh/l1resp.c Mon Feb 20 02:25:53 2017 +0000 @@ -307,3 +307,24 @@ async_msg_output(buf); } } + +void +l1tm_ttw_response() +{ + char buf[80]; + + if (rvi_msg[3]) { + if (rvi_msg_len == 5) { + sprintf(buf, "ttw error %u (0x%02X)", + rvi_msg[3], rvi_msg[3]); + async_msg_output(buf); + } else + print_etm_pkt_raw("ttw long error response"); + return; + } + if (rvi_msg_len < 5 || rvi_msg_len > 6) { + print_etm_pkt_raw("ttw response wrong length"); + return; + } + async_msg_output("ttw OK"); +}