aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--rmi4update/rmi4update.cpp26
-rw-r--r--rmidevice/rmidevice.cpp8
-rw-r--r--rmidevice/rmidevice.h2
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