| .. | .. |
|---|
| 18 | 18 | #include "mali_osk.h" |
|---|
| 19 | 19 | #include "mali_kernel_common.h" |
|---|
| 20 | 20 | |
|---|
| 21 | | -struct _mali_osk_timer_t_struct { |
|---|
| 22 | | - struct timer_list timer; |
|---|
| 23 | | -}; |
|---|
| 24 | | - |
|---|
| 25 | 21 | typedef void (*timer_timeout_function_t)(unsigned long); |
|---|
| 26 | 22 | |
|---|
| 27 | | -_mali_osk_timer_t *_mali_osk_timer_init(_mali_osk_timer_callback_t callback) |
|---|
| 23 | +void _mali_osk_timer_init(_mali_osk_timer_t *tim, _mali_osk_timer_callback_t callback) |
|---|
| 28 | 24 | { |
|---|
| 29 | | - _mali_osk_timer_t *t = (_mali_osk_timer_t *)kmalloc(sizeof(_mali_osk_timer_t), GFP_KERNEL); |
|---|
| 25 | + _mali_osk_timer_t *t = tim; |
|---|
| 30 | 26 | if (NULL != t) |
|---|
| 31 | | - timer_setup(&t->timer, |
|---|
| 27 | + timer_setup(t, |
|---|
| 32 | 28 | (void (*)(struct timer_list *))callback, 0); |
|---|
| 33 | | - return t; |
|---|
| 34 | 29 | } |
|---|
| 35 | 30 | |
|---|
| 36 | 31 | void _mali_osk_timer_add(_mali_osk_timer_t *tim, unsigned long ticks_to_expire) |
|---|
| 37 | 32 | { |
|---|
| 38 | 33 | MALI_DEBUG_ASSERT_POINTER(tim); |
|---|
| 39 | | - tim->timer.expires = jiffies + ticks_to_expire; |
|---|
| 40 | | - add_timer(&(tim->timer)); |
|---|
| 34 | + tim->expires = jiffies + ticks_to_expire; |
|---|
| 35 | + add_timer(tim); |
|---|
| 41 | 36 | } |
|---|
| 42 | 37 | |
|---|
| 43 | 38 | void _mali_osk_timer_mod(_mali_osk_timer_t *tim, unsigned long ticks_to_expire) |
|---|
| 44 | 39 | { |
|---|
| 45 | 40 | MALI_DEBUG_ASSERT_POINTER(tim); |
|---|
| 46 | | - mod_timer(&(tim->timer), jiffies + ticks_to_expire); |
|---|
| 41 | + mod_timer(tim, jiffies + ticks_to_expire); |
|---|
| 47 | 42 | } |
|---|
| 48 | 43 | |
|---|
| 49 | 44 | void _mali_osk_timer_del(_mali_osk_timer_t *tim) |
|---|
| 50 | 45 | { |
|---|
| 51 | 46 | MALI_DEBUG_ASSERT_POINTER(tim); |
|---|
| 52 | | - del_timer_sync(&(tim->timer)); |
|---|
| 47 | + del_timer_sync(tim); |
|---|
| 53 | 48 | } |
|---|
| 54 | 49 | |
|---|
| 55 | 50 | void _mali_osk_timer_del_async(_mali_osk_timer_t *tim) |
|---|
| 56 | 51 | { |
|---|
| 57 | 52 | MALI_DEBUG_ASSERT_POINTER(tim); |
|---|
| 58 | | - del_timer(&(tim->timer)); |
|---|
| 53 | + del_timer(tim); |
|---|
| 59 | 54 | } |
|---|
| 60 | 55 | |
|---|
| 61 | 56 | mali_bool _mali_osk_timer_pending(_mali_osk_timer_t *tim) |
|---|
| 62 | 57 | { |
|---|
| 63 | 58 | MALI_DEBUG_ASSERT_POINTER(tim); |
|---|
| 64 | | - return 1 == timer_pending(&(tim->timer)); |
|---|
| 59 | + return 1 == timer_pending(tim); |
|---|
| 65 | 60 | } |
|---|
| 66 | 61 | |
|---|
| 67 | | -void _mali_osk_timer_setcallback(_mali_osk_timer_t *tim, _mali_osk_timer_callback_t callback, void *data) |
|---|
| 68 | | -{ |
|---|
| 69 | | - MALI_DEBUG_ASSERT_POINTER(tim); |
|---|
| 70 | | -} |
|---|
| 71 | | - |
|---|
| 72 | | -void _mali_osk_timer_term(_mali_osk_timer_t *tim) |
|---|
| 73 | | -{ |
|---|
| 74 | | - MALI_DEBUG_ASSERT_POINTER(tim); |
|---|
| 75 | | - kfree(tim); |
|---|
| 76 | | -} |
|---|