diff options
-rw-r--r-- | rmi4update/rmi4update.cpp | 26 | ||||
-rw-r--r-- | rmidevice/rmidevice.cpp | 8 | ||||
-rw-r--r-- | rmidevice/rmidevice.h | 2 |
3 files changed, 19 insertions, 17 deletions
diff --git a/rmi4update/rmi4update.cpp b/rmi4update/rmi4update.cpp index f2818ad..33f03a9 100644 --- a/rmi4update/rmi4update.cpp +++ b/rmi4update/rmi4update.cpp @@ -61,7 +61,7 @@ int RMI4Update::UpdateFirmware(bool force) { struct timespec start; struct timespec end; - long long int duration_ns = 0; + long long int duration_us = 0; int rc; const unsigned char eraseAll = RMI_F34_ERASE_ALL; @@ -109,10 +109,8 @@ int RMI4Update::UpdateFirmware(bool force) return rc; } clock_gettime(CLOCK_MONOTONIC, &end); -#if 0 // TODO: convert to userspace - duration_ns = timespec_to_ns(&end) - timespec_to_ns(&start); -#endif - fprintf(stdout, "Done writing lockdown, time: %lld ns.\n", duration_ns); + duration_us = diff_time(&start, &end); + fprintf(stdout, "Done writing lockdown, time: %lld us.\n", duration_us); } rc = EnterFlashProgramming(); @@ -143,10 +141,8 @@ int RMI4Update::UpdateFirmware(bool force) return rc; } clock_gettime(CLOCK_MONOTONIC, &end); -#if 0 // TODO: convert to userspace - duration_ns = timespec_to_ns(&end) - timespec_to_ns(&start); -#endif - fprintf(stdout, "Erase complete, time: %lld ns.\n", duration_ns); + duration_us = diff_time(&start, &end); + fprintf(stdout, "Erase complete, time: %lld us.\n", duration_us); if (m_firmwareImage.GetFirmwareData()) { fprintf(stdout, "Writing firmware...\n"); @@ -158,10 +154,8 @@ int RMI4Update::UpdateFirmware(bool force) return rc; } clock_gettime(CLOCK_MONOTONIC, &end); -#if 0 // TODO: convert to userspace - duration_ns = timespec_to_ns(&end) - timespec_to_ns(&start); -#endif - fprintf(stdout, "Done writing FW, time: %lld ns.\n", duration_ns); + duration_us = diff_time(&start, &end); + fprintf(stdout, "Done writing FW, time: %lld us.\n", duration_us); } if (m_firmwareImage.GetConfigData()) { @@ -174,10 +168,8 @@ int RMI4Update::UpdateFirmware(bool force) return rc; } clock_gettime(CLOCK_MONOTONIC, &end); -#if 0 // TODO: convert to userspace - duration_ns = timespec_to_ns(&end) - timespec_to_ns(&start); -#endif - fprintf(stdout, "Done writing config, time: %lld ns.\n", duration_ns); + duration_us = diff_time(&start, &end); + fprintf(stdout, "Done writing config, time: %lld us.\n", duration_us); } m_device.Reset(); diff --git a/rmidevice/rmidevice.cpp b/rmidevice/rmidevice.cpp index 93fe043..d955e81 100644 --- a/rmidevice/rmidevice.cpp +++ b/rmidevice/rmidevice.cpp @@ -258,4 +258,12 @@ int RMIDevice::ScanPDT() } return 0; +} + +long long diff_time(struct timespec *start, struct timespec *end) +{ + long long diff; + diff = (end->tv_sec - start->tv_sec) * 1000 * 1000; + diff += (end->tv_nsec - start->tv_nsec) / 1000; + return diff; }
\ No newline at end of file diff --git a/rmidevice/rmidevice.h b/rmidevice/rmidevice.h index ca97b48..de17212 100644 --- a/rmidevice/rmidevice.h +++ b/rmidevice/rmidevice.h @@ -63,4 +63,6 @@ protected: int m_bytesPerReadRequest; }; +long long diff_time(struct timespec *start, struct timespec *end); + #endif /* _RMIDEVICE_H_ */
\ No newline at end of file |