Ejemplo n.º 1
0
static void timer_change_param_test(void)
{
    kstat_t ret;

    ret = krhino_timer_change(NULL, TIMER0_ROUND, TIMER0_ROUND);
    TIMER_VAL_CHK(ret == RHINO_NULL_PTR);

    ret = krhino_timer_change(&timer_0_test, 0, TIMER0_ROUND);
    TIMER_VAL_CHK(ret == RHINO_SUCCESS);
}
Ejemplo n.º 2
0
static void task_timer0_entry(void *arg)
{
    kstat_t ret = 0;

    while (1) {
        /* check krhino_timer_change param */
        timer_change_param_test();

        ret = krhino_sem_create(&sem_0_test, "sem_0_test", 0);
        TIMER_VAL_CHK(ret == RHINO_SUCCESS);

        ret = krhino_timer_create(&timer_0_test, "timer_0_test", timer_0_func,
                                  TIMER0_ROUND * 10, TIMER0_ROUND * 10, (void *)TIMER0_MAGIC, 0);
        TIMER_VAL_CHK(ret == RHINO_SUCCESS);

        ret = krhino_timer_create(&timer_1_test, "timer_1_test", timer_1_func,
                                  TIMER0_ROUND * 20, TIMER0_ROUND * 20, (void *)TIMER0_MAGIC, 0);
        TIMER_VAL_CHK(ret == RHINO_SUCCESS);

        ret = krhino_timer_change(&timer_1_test, TIMER0_ROUND, TIMER0_ROUND);
        TIMER_VAL_CHK(ret == RHINO_SUCCESS);

        ret = krhino_timer_start(&timer_1_test);
        TIMER_VAL_CHK(ret == RHINO_SUCCESS);

        ret = krhino_timer_start(&timer_0_test);
        TIMER_VAL_CHK(ret == RHINO_SUCCESS);

        ret = krhino_sem_take(&sem_0_test, RHINO_WAIT_FOREVER);
        TIMER_VAL_CHK(ret == RHINO_SUCCESS);

        ret = krhino_sem_take(&sem_0_test, RHINO_WAIT_FOREVER);
        TIMER_VAL_CHK(ret == RHINO_SUCCESS);

        ret = krhino_timer_stop(&timer_0_test);
        TIMER_VAL_CHK(ret == RHINO_SUCCESS);

        ret = krhino_timer_del(&timer_0_test);
        TIMER_VAL_CHK(ret == RHINO_SUCCESS);

        ret = krhino_timer_stop(&timer_1_test);
        TIMER_VAL_CHK(ret == RHINO_SUCCESS);

        ret = krhino_timer_del(&timer_1_test);
        TIMER_VAL_CHK(ret == RHINO_SUCCESS);

        test_case_success++;

        PRINT_RESULT("timer change", PASS);
        krhino_sem_del(&sem_0_test);
        next_test_case_notify();
        krhino_task_dyn_del(task_0_test);
    }
}
Ejemplo n.º 3
0
int aos_timer_change(aos_timer_t *timer, int ms)
{
    int ret;

    if (timer == NULL) {
        return -EINVAL;
    }

    ret = krhino_timer_change(timer->hdl, MS2TICK(ms), MS2TICK(ms));
    if (ret == RHINO_SUCCESS) {
        return 0;
    }

    ERRNO_MAPPING(ret);
}