summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavePutz <dwputz@gmail.com>2020-06-08 10:52:27 -0500
committerGitHub <noreply@github.com>2020-06-08 10:52:27 -0500
commitd8bb2d7c6d32781addf07afdc2b6514386b6f30e (patch)
treef1423a871b79ad2e797ab9c7f40b75c911fcc8ef
parentef87cc3ed389700f7d32d8a74b2e8499863f1a74 (diff)
Correct ticks being returned from port_get_raw_ticks()
Issue #2958 . Correct calculation of usec back to ticks in port_get_raw_ticks().
-rw-r--r--ports/esp32s2/supervisor/port.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/ports/esp32s2/supervisor/port.c b/ports/esp32s2/supervisor/port.c
index 4c42f11af..f5a4ae48e 100644
--- a/ports/esp32s2/supervisor/port.c
+++ b/ports/esp32s2/supervisor/port.c
@@ -118,11 +118,12 @@ uint32_t port_get_saved_word(void) {
uint64_t port_get_raw_ticks(uint8_t* subticks) {
struct timeval tv_now;
gettimeofday(&tv_now, NULL);
- uint64_t all_subticks = (uint64_t)tv_now.tv_usec / 32768;
+ // convert usec back to ticks
+ uint64_t all_subticks = (uint64_t)tv_now.tv_usec / 1024;
if (subticks != NULL) {
*subticks = all_subticks % 32;
}
- return (uint64_t)tv_now.tv_sec * 1024L + all_subticks / 32;
+ return (uint64_t)tv_now.tv_sec * 1024L + all_subticks;
}
// Enable 1/1024 second tick.