arm: Enable support for sys_thread_busy_wait()
It is now safe to enable sys_thread_busy_wait() for ARM as an earlier patch has fixed the build system to link against the correct intrinsics library. Change-Id: Ib5ed036d996461b91f372b2b3e8f597a925d3292 Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
This commit is contained in:
parent
b436fa16b5
commit
76357932d8
2 changed files with 0 additions and 22 deletions
|
@ -94,17 +94,6 @@ int _is_thread_essential(struct tcs *pCtx)
|
||||||
return ((pCtx == NULL) ? _nanokernel.current : pCtx)->flags & ESSENTIAL;
|
return ((pCtx == NULL) ? _nanokernel.current : pCtx)->flags & ESSENTIAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* Don't build sys_thread_busy_wait() for ARM, since intrinsics libraries in
|
|
||||||
* current Zephyr SDK use non-Thumb code that isn't supported on Cortex-M CPUs.
|
|
||||||
* For the time being any ARM-based application that attempts to use this API
|
|
||||||
* will get a link error (which is preferable to a mysterious exception).
|
|
||||||
*
|
|
||||||
* @param usec_to_wait
|
|
||||||
*
|
|
||||||
* @return N/A
|
|
||||||
*/
|
|
||||||
#ifndef CONFIG_ARM
|
|
||||||
void sys_thread_busy_wait(uint32_t usec_to_wait)
|
void sys_thread_busy_wait(uint32_t usec_to_wait)
|
||||||
{
|
{
|
||||||
/* use 64-bit math to prevent overflow when multiplying */
|
/* use 64-bit math to prevent overflow when multiplying */
|
||||||
|
@ -124,7 +113,6 @@ void sys_thread_busy_wait(uint32_t usec_to_wait)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_ARM */
|
|
||||||
|
|
||||||
#ifdef CONFIG_THREAD_CUSTOM_DATA
|
#ifdef CONFIG_THREAD_CUSTOM_DATA
|
||||||
|
|
||||||
|
|
|
@ -611,7 +611,6 @@ struct timeout_order_data timeout_order_data[] = {
|
||||||
#define NUM_TIMEOUT_FIBERS ARRAY_SIZE(timeout_order_data)
|
#define NUM_TIMEOUT_FIBERS ARRAY_SIZE(timeout_order_data)
|
||||||
static char __stack timeout_stacks[NUM_TIMEOUT_FIBERS][FIBER_STACKSIZE];
|
static char __stack timeout_stacks[NUM_TIMEOUT_FIBERS][FIBER_STACKSIZE];
|
||||||
|
|
||||||
#ifndef CONFIG_ARM
|
|
||||||
/* a fiber busy waits, then reports through a fifo */
|
/* a fiber busy waits, then reports through a fifo */
|
||||||
static void test_fiber_busy_wait(int ticks, int unused)
|
static void test_fiber_busy_wait(int ticks, int unused)
|
||||||
{
|
{
|
||||||
|
@ -639,7 +638,6 @@ static void test_fiber_busy_wait(int ticks, int unused)
|
||||||
|
|
||||||
nano_fiber_sem_give(&reply_timeout);
|
nano_fiber_sem_give(&reply_timeout);
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
/* a fiber sleeps and times out, then reports through a fifo */
|
/* a fiber sleeps and times out, then reports through a fifo */
|
||||||
static void test_fiber_sleep(int timeout, int arg2)
|
static void test_fiber_sleep(int timeout, int arg2)
|
||||||
|
@ -676,12 +674,6 @@ static int test_timeout(void)
|
||||||
int ii;
|
int ii;
|
||||||
struct timeout_order_data *data;
|
struct timeout_order_data *data;
|
||||||
|
|
||||||
/*
|
|
||||||
* sys_thread_busy_wait() is currently unsupported for ARM
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef CONFIG_ARM
|
|
||||||
|
|
||||||
/* test sys_thread_busy_wait() */
|
/* test sys_thread_busy_wait() */
|
||||||
|
|
||||||
TC_PRINT("Testing sys_thread_busy_wait()\n");
|
TC_PRINT("Testing sys_thread_busy_wait()\n");
|
||||||
|
@ -697,8 +689,6 @@ static int test_timeout(void)
|
||||||
return TC_FAIL;
|
return TC_FAIL;
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif /* CONFIG_ARM */
|
|
||||||
|
|
||||||
/* test fiber_sleep() */
|
/* test fiber_sleep() */
|
||||||
|
|
||||||
TC_PRINT("Testing fiber_sleep()\n");
|
TC_PRINT("Testing fiber_sleep()\n");
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue