Sapphire SoC DS Sapphire SoC UG Sapphire HP SoC DS Sapphire HP SoC UG RISC-V Embedded IDE UG Board Support Package
Loading...
Searching...
No Matches
timer.h File Reference
#include "type.h"
#include "io.h"

Go to the source code of this file.

Overview

Timer driver API definitions.

Author
Efinix Inc

This file provides data structures and APIs for controlling the Timer peripheral on the EfxSapphireSoC platform.

Definition in file timer.h.

Data Structures

struct  utimer_hwreg_t
 Timer hardware register map. More...
struct  utimer_instance_t
 Timer instance. Holds the software registers and hardware pointer. More...

Macros

#define TIMER_CONFIG_WITH_PRESCALER   0x2
 Prescaler Enabled *‍/.
#define TIMER_CONFIG_WITHOUT_PRESCALER   0x1
 No Prescaler *‍/.
#define TIMER_CONFIG_SELF_RESTART   0x10000
 Self Restart *‍/.

Functions

void utimer_applyConfig (utimer_instance_t *inst)
 Apply the software configuration to the hardware.
void utimer_clearValue (utimer_instance_t *inst)
 Clear Timer Value to zero.
UserTimer (Get Functions)

Read values from the Timer hardware registers.

u32 utimer_getConfig (utimer_instance_t *inst)
 Get stored Timer Configuration.
u32 utimer_getLimit (utimer_instance_t *inst)
 Get stored Timer Limit (Reload Value).
u32 utimer_getValue (utimer_instance_t *inst)
 Get current Timer Value.
u32 utimer_getPrescalerValue (utimer_instance_t *inst)
 Get stored Prescaler Value.
UserTimer (Set Functions)

Write values to the Timer registers.

Note
Call utimer_applyConfig() to make these changes effective.
u32 utimer_setConfig (utimer_instance_t *inst, u32 value)
 Set Timer Configuration.
u32 utimer_setPrescalerValue (utimer_instance_t *inst, u32 value)
 Set Prescaler Value.
u32 utimer_setLimit (utimer_instance_t *inst, u32 value)
 Get stored Timer Limit (Reload Value).