Zephyr Project API
3.1.0
A Scalable Open Source RTOS
|
Macros | |
#define | SEM_INIT_VAL (0U) |
#define | SEM_MAX_VAL (10U) |
#define | SEM_TIMEOUT (K_MSEC(100)) |
#define | STACK_SIZE (512 + CONFIG_TEST_EXTRA_STACK_SIZE) |
#define | TOTAL_THREADS_WAITING (3) |
Functions | |
ZTEST_DMEM | SYS_SEM_DEFINE (multiple_thread_sem,(0U),(10U)) |
K_THREAD_STACK_DEFINE (stack_1,(512+CONFIG_TEST_EXTRA_STACK_SIZE)) | |
K_THREAD_STACK_DEFINE (stack_2,(512+CONFIG_TEST_EXTRA_STACK_SIZE)) | |
K_THREAD_STACK_DEFINE (stack_3,(512+CONFIG_TEST_EXTRA_STACK_SIZE)) | |
K_THREAD_STACK_ARRAY_DEFINE (multiple_stack,(3),(512+CONFIG_TEST_EXTRA_STACK_SIZE)) | |
void | isr_sem_give (const void *semaphore) |
void | isr_sem_take (const void *semaphore) |
void | sem_give_from_isr (void *semaphore) |
void | sem_take_from_isr (void *semaphore) |
void | sem_give_task (void *p1, void *p2, void *p3) |
void | sem_take_timeout_forever_helper (void *p1, void *p2, void *p3) |
void | sem_take_timeout_isr_helper (void *p1, void *p2, void *p3) |
void | sem_take_multiple_low_prio_helper (void *p1, void *p2, void *p3) |
void | sem_take_multiple_mid_prio_helper (void *p1, void *p2, void *p3) |
void | sem_take_multiple_high_prio_helper (void *p1, void *p2, void *p3) |
void | sem_multiple_threads_wait_helper (void *p1, void *p2, void *p3) |
void | test_main (void) |
void | test_basic_sem_test (void) |
void | test_simple_sem_from_isr (void) |
Test semaphore count when given by an ISR. More... | |
void | test_simple_sem_from_task (void) |
Test semaphore count when given by thread. More... | |
void | test_sem_take_no_wait (void) |
Test if sys_sem_take() decreases semaphore count. More... | |
void | test_sem_take_no_wait_fails (void) |
Test sys_sem_take() when there is no semaphore to take. More... | |
void | test_sem_take_timeout_fails (void) |
Test sys_sem_take() with timeout expiry. More... | |
void | test_sem_take_timeout (void) |
Test sys_sem_take() with timeout. More... | |
void | test_sem_take_timeout_forever (void) |
Test sys_sem_take() with forever timeout. More... | |
void | test_sem_take_timeout_isr (void) |
Test sys_sem_take() with timeout in ISR context. More... | |
void | test_sem_take_multiple (void) |
Test multiple semaphore take. More... | |
void | test_sem_give_take_from_isr (void) |
Test semaphore give and take and its count from ISR. More... | |
void | test_sem_give_limit (void) |
Test semaphore give limit count. More... | |
void | test_sem_multiple_threads_wait (void) |
Test multiple semaphore take and give with wait. More... | |
Variables | |
ZTEST_BMEM struct sys_sem | simple_sem |
ZTEST_BMEM struct sys_sem | low_prio_sem |
ZTEST_BMEM struct sys_sem | mid_prio_sem |
ZTEST_DMEM struct sys_sem | high_prio_sem |
struct k_thread sem_tid sem_tid_1 | sem_tid_2 |
struct k_thread | multiple_tid [(3)] |
#define SEM_INIT_VAL (0U) |
#define SEM_MAX_VAL (10U) |
#define SEM_TIMEOUT (K_MSEC(100)) |
#define STACK_SIZE (512 + CONFIG_TEST_EXTRA_STACK_SIZE) |
#define TOTAL_THREADS_WAITING (3) |
void isr_sem_give | ( | const void * | semaphore | ) |
void isr_sem_take | ( | const void * | semaphore | ) |
K_THREAD_STACK_ARRAY_DEFINE | ( | multiple_stack | , |
(3) | , | ||
(512+CONFIG_TEST_EXTRA_STACK_SIZE) | |||
) |
K_THREAD_STACK_DEFINE | ( | stack_1 | , |
(512+CONFIG_TEST_EXTRA_STACK_SIZE) | |||
) |
K_THREAD_STACK_DEFINE | ( | stack_2 | , |
(512+CONFIG_TEST_EXTRA_STACK_SIZE) | |||
) |
K_THREAD_STACK_DEFINE | ( | stack_3 | , |
(512+CONFIG_TEST_EXTRA_STACK_SIZE) | |||
) |
void sem_give_from_isr | ( | void * | semaphore | ) |
void sem_give_task | ( | void * | p1, |
void * | p2, | ||
void * | p3 | ||
) |
void sem_multiple_threads_wait_helper | ( | void * | p1, |
void * | p2, | ||
void * | p3 | ||
) |
void sem_take_from_isr | ( | void * | semaphore | ) |
void sem_take_multiple_high_prio_helper | ( | void * | p1, |
void * | p2, | ||
void * | p3 | ||
) |
void sem_take_multiple_low_prio_helper | ( | void * | p1, |
void * | p2, | ||
void * | p3 | ||
) |
void sem_take_multiple_mid_prio_helper | ( | void * | p1, |
void * | p2, | ||
void * | p3 | ||
) |
void sem_take_timeout_forever_helper | ( | void * | p1, |
void * | p2, | ||
void * | p3 | ||
) |
void sem_take_timeout_isr_helper | ( | void * | p1, |
void * | p2, | ||
void * | p3 | ||
) |
ZTEST_DMEM SYS_SEM_DEFINE | ( | multiple_thread_sem | , |
(0U) | , | ||
(10U) | |||
) |
void test_basic_sem_test | ( | void | ) |
void test_main | ( | void | ) |
test case main entry
void test_sem_give_limit | ( | void | ) |
Test semaphore give limit count.
void test_sem_give_take_from_isr | ( | void | ) |
Test semaphore give and take and its count from ISR.
void test_sem_multiple_threads_wait | ( | void | ) |
Test multiple semaphore take and give with wait.
void test_sem_take_multiple | ( | void | ) |
Test multiple semaphore take.
void test_sem_take_no_wait | ( | void | ) |
Test if sys_sem_take() decreases semaphore count.
void test_sem_take_no_wait_fails | ( | void | ) |
Test sys_sem_take() when there is no semaphore to take.
void test_sem_take_timeout | ( | void | ) |
Test sys_sem_take() with timeout.
void test_sem_take_timeout_fails | ( | void | ) |
Test sys_sem_take() with timeout expiry.
void test_sem_take_timeout_forever | ( | void | ) |
Test sys_sem_take() with forever timeout.
void test_sem_take_timeout_isr | ( | void | ) |
Test sys_sem_take() with timeout in ISR context.
void test_simple_sem_from_isr | ( | void | ) |
Test semaphore count when given by an ISR.
void test_simple_sem_from_task | ( | void | ) |
Test semaphore count when given by thread.
ZTEST_DMEM struct sys_sem high_prio_sem |
ZTEST_BMEM struct sys_sem low_prio_sem |
ZTEST_BMEM struct sys_sem mid_prio_sem |
struct k_thread multiple_tid[(3)] |
struct k_thread sem_tid sem_tid_1 sem_tid_2 |
ZTEST_BMEM struct sys_sem simple_sem |