File size: 922 Bytes
829b19c | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | /*
* HAL — Timer driver for OMAP3530 GP Timers
* Uses 26 MHz reference clock
*/
#ifndef FIRMWARE_HAL_TIMER_H
#define FIRMWARE_HAL_TIMER_H
#include "../common/types.h"
#include "../common/platform.h"
typedef struct {
hw_reg32_t base;
uint32_t clock_hz;
} timer_dev_t;
void timer_init(timer_dev_t *dev, uint32_t base, uint32_t clock_hz);
void timer_start(timer_dev_t *dev);
void timer_stop(timer_dev_t *dev);
void timer_set_period_ms(timer_dev_t *dev, uint32_t ms);
void timer_set_period_us(timer_dev_t *dev, uint32_t us);
uint32_t timer_get_count(timer_dev_t *dev);
void timer_reset(timer_dev_t *dev);
int timer_expired(timer_dev_t *dev);
void timer_clear_irq(timer_dev_t *dev);
void timer_enable_irq(timer_dev_t *dev);
void timer_delay_ms(timer_dev_t *dev, uint32_t ms);
void timer_delay_us(timer_dev_t *dev, uint32_t us);
#endif /* FIRMWARE_HAL_TIMER_H */
|