-
Notifications
You must be signed in to change notification settings - Fork 26
Generic_timer_API
in1004kyu edited this page Jul 15, 2013
·
2 revisions
typedef enum {
GENERIC_TIMER_HYP, /* IRQ 26 */
GENERIC_TIMER_VIR, /* IRQ 27 */
GENERIC_TIMER_NSP, /* IRQ 30 */
GENERIC_TIMER_NUM_TYPES
} generic_timer_type_t;
Represents Generic timer type.
typedef void(*generic_timer_callback_t)(void *pdata);
Callback per Generic tiemr type.
/* Starts the timer*/ /* Generic Timer: pass _timer_hw_callback */ generic_timer_set_callback(GENERIC_TIMER_HYP, &_timer_hw_callback ); /* Generic Timer: set interval in 'count' */ generic_timer_set_tval(GENERIC_TIMER_HYP, _channels[channel].interval); /* Generic Timer: enable irq */ generic_timer_enable_irq(GENERIC_TIMER_HYP); /* Generic Timer: enable interupt */ generic_timer_enable_int(GENERIC_TIMER_HYP);
hvmm_status_t generic_timer_init(struct timer_source *ts);
Calling this function is required only once in the entire system.
hvmm_status_t generic_timer_enable_int(generic_timer_type_t type);
Enable the timer interrupt. Specified by timer type
hvmm_status_t generic_timer_disable_int(generic_timer_type_t type);
Disable the timer. Specified by timer type
hvmm_status_t generic_timer_set_tval(generic_timer_type_t type, uint32_t interval);
Sets time interval. Converts from millisecond to count and sets time interval.
hvmm_status_t generic_timer_enable_irq(generic_timer_type_t type);
Enable timer irq.
hvmm_status_t generic_timer_set_callback(generic_timer_type_t type, generic_timer_callback_t callback);
Adds callback funtion. Called when occur timer interrupt.