From 8136a4098a33ab9415652f37611ba88029f8fa58 Mon Sep 17 00:00:00 2001 From: Giovanni Di Sirio Date: Sat, 23 Jan 2016 07:56:38 +0000 Subject: [PATCH] Fixed bug #696. git-svn-id: svn://svn.code.sf.net/p/chibios/svn/branches/stable_16.1.x@8794 35acf78f-673a-0410-8e92-d51de3d6d3f4 --- os/various/lwip_bindings/arch/sys_arch.c | 8 ++++---- readme.txt | 1 + 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/os/various/lwip_bindings/arch/sys_arch.c b/os/various/lwip_bindings/arch/sys_arch.c index c2b72b72a..e11d65c0e 100644 --- a/os/various/lwip_bindings/arch/sys_arch.c +++ b/os/various/lwip_bindings/arch/sys_arch.c @@ -103,12 +103,12 @@ u32_t sys_arch_sem_wait(sys_sem_t *sem, u32_t timeout) { u32_t time; osalSysLock(); - tmo = timeout > 0 ? (systime_t)timeout : TIME_INFINITE; + tmo = timeout > 0 ? MS2ST((systime_t)timeout) : TIME_INFINITE; time = (u32_t)osalOsGetSystemTimeX(); if (chSemWaitTimeoutS(*sem, tmo) != MSG_OK) time = SYS_ARCH_TIMEOUT; else - time = osalOsGetSystemTimeX() - time; + time = (u32_t)ST2MS(osalOsGetSystemTimeX()) - time; osalSysUnlock(); return time; } @@ -175,12 +175,12 @@ u32_t sys_arch_mbox_fetch(sys_mbox_t *mbox, void **msg, u32_t timeout) { systime_t tmo; osalSysLock(); - tmo = timeout > 0 ? (systime_t)timeout : TIME_INFINITE; + tmo = timeout > 0 ? MS2ST((systime_t)timeout) : TIME_INFINITE; time = (u32_t)osalOsGetSystemTimeX(); if (chMBFetchS(*mbox, (msg_t *)msg, tmo) != MSG_OK) time = SYS_ARCH_TIMEOUT; else - time = osalOsGetSystemTimeX() - time; + time = (u32_t)ST2MS(osalOsGetSystemTimeX()) - time; osalSysUnlock(); return time; } diff --git a/readme.txt b/readme.txt index 2e70166ad..d6bc68ecf 100644 --- a/readme.txt +++ b/readme.txt @@ -73,6 +73,7 @@ ***************************************************************************** *** 16.1.2 *** +- VAR: Fixed missing time convesion in lwIP arch module (bug #696). - HAL: Fixed incorrect handling of TIME_IMMEDIATE in the HAL buffer queues (bug #695).