/* Enable counting in the timer instance. 
The timer starts counting from the load value used in timer_init(), set by timer_counter_set() or from the value the timer stopped at.  */
int32_t timer_start(struct timer_desc *desc)
/* Enable counting in the timer instance. 
The timer starts counting from the load value used in timer_init(), set by timer_counter_set() or from the value the timer stopped at.  */
int32_t timer_start(struct timer_desc *desc)
{
	struct aducm_timer_desc *tmr_desc;
	if (!desc)
		return FAILURE;
	tmr_desc = desc->extra;
	if (tmr_desc->started)
		return FAILURE;
	if (nb_enables == 0)
		while (ADI_TMR_DEVICE_BUSY == adi_tmr_Enable(timer_id, true));
	tmr_desc->old_time = get_current_time(desc);
	tmr_desc->started = true;
	nb_enables++;
	return SUCCESS;
}