diff --git a/features/frameworks/greentea-client/source/test_env.cpp b/features/frameworks/greentea-client/source/test_env.cpp index 01a89af26b..bf994fbfb9 100644 --- a/features/frameworks/greentea-client/source/test_env.cpp +++ b/features/frameworks/greentea-client/source/test_env.cpp @@ -20,6 +20,7 @@ #include #include "mbed.h" #include "greentea-client/test_env.h" +#include "greentea-client/greentea_serial.h" /** @@ -57,15 +58,6 @@ static void greentea_notify_hosttest(const char *); static void greentea_notify_completion(const int); static void greentea_notify_version(); -/** - * Rawserial object used to provide direct, raw serial communications - * between the target and the host. - */ -RawSerial& greentea_serial() { - static RawSerial serial(USBTX, USBRX); - return serial; -} - /** \brief Handshake with host and send setup data (timeout and host test name) * \details This function will send preamble to master. * After host test name is received master will invoke host test script @@ -195,8 +187,8 @@ void greentea_notify_coverage_end() { */ inline void greentea_write_preamble() { - greentea_serial().putc('{'); - greentea_serial().putc('{'); + greentea_serial->putc('{'); + greentea_serial->putc('{'); } /** @@ -213,9 +205,9 @@ inline void greentea_write_preamble() */ inline void greentea_write_postamble() { - greentea_serial().putc('}'); - greentea_serial().putc('}'); - greentea_serial().putc('\n'); + greentea_serial->putc('}'); + greentea_serial->putc('}'); + greentea_serial->putc('\n'); } /** @@ -231,7 +223,7 @@ inline void greentea_write_postamble() inline void greentea_write_string(const char *str) { while (*str != '\0') { - greentea_serial().putc(*str); + greentea_serial->putc(*str); str ++; } } @@ -257,7 +249,7 @@ inline void greentea_write_int(const int val) unsigned int i = 0; sprintf(intval, "%d", val); while (intval[i] != '\0') { - greentea_serial().putc(intval[i]); + greentea_serial->putc(intval[i]); i++; } } @@ -277,7 +269,7 @@ void greentea_send_kv(const char *key, const char *val) { if (key && val) { greentea_write_preamble(); greentea_write_string(key); - greentea_serial().putc(';'); + greentea_serial->putc(';'); greentea_write_string(val); greentea_write_postamble(); } @@ -300,7 +292,7 @@ void greentea_send_kv(const char *key, const int val) { if (key) { greentea_write_preamble(); greentea_write_string(key); - greentea_serial().putc(';'); + greentea_serial->putc(';'); greentea_write_int(val); greentea_write_postamble(); } @@ -324,9 +316,9 @@ void greentea_send_kv(const char *key, const char *val, const int result) { if (key) { greentea_write_preamble(); greentea_write_string(key); - greentea_serial().putc(';'); + greentea_serial->putc(';'); greentea_write_string(val); - greentea_serial().putc(';'); + greentea_serial->putc(';'); greentea_write_int(result); greentea_write_postamble(); @@ -357,11 +349,11 @@ void greentea_send_kv(const char *key, const char *val, const int passes, const if (key) { greentea_write_preamble(); greentea_write_string(key); - greentea_serial().putc(';'); + greentea_serial->putc(';'); greentea_write_string(val); - greentea_serial().putc(';'); + greentea_serial->putc(';'); greentea_write_int(passes); - greentea_serial().putc(';'); + greentea_serial->putc(';'); greentea_write_int(failures); greentea_write_postamble(); } @@ -390,9 +382,9 @@ void greentea_send_kv(const char *key, const int passes, const int failures) { if (key) { greentea_write_preamble(); greentea_write_string(key); - greentea_serial().putc(';'); + greentea_serial->putc(';'); greentea_write_int(passes); - greentea_serial().putc(';'); + greentea_serial->putc(';'); greentea_write_int(failures); greentea_write_postamble(); }