#ifndef _ECPRI_TIMER_H_
#define _ECPRI_TIMER_H_

#include "typedef.h"
#include "phy_para.h"

#define ECPRI_SYMBOL_LONGCP		4448
#define ECPRI_SYMBOL_SHORTCP	4384


void ecpri_mtimer_init(int32_t nScsId, int32_t nTddSlotNum);

void ecpri_timer_init(int32_t nScsId, int32_t nTddSlotNum);

void ecpri_timer_cprimode_clk_init();

void ecpri_timer_clear_all_event();

void ecpri_1pps_src_init(uint8_t srcId);

void set_ecpri_1pps_scratch(void);

void set_ecpri_tmr_period(void);

void ecpri_timer_reconfig(phy_timer_config_ind_t *my_ecpritmr);

void ecpri_timer_clear_cell(uint8_t scsId);

void set_ecpri_tdd_offset(void);

void clear_ecpri_tdd_offset(void);

void set_ecpri_tx_slot_offset();

void clear_ecpri_tx_slot_offset();

void set_ecpri_rx_slot_offset();

void clear_ecpri_rx_slot_offset();

void set_ecpri_lte_fapi_offset(void);

void clear_ecpri_lte_fapi_offset(void);

int32_t set_ecpri_ape_slot_offset(uint32_t apeCoreId);

int32_t clear_ecpri_ape_slot_offset(uint32_t apeCoreId);

int32_t set_ecpri_tx_symbol_offset(uint8_t symbolId);

void start_ecpri_timer(void);

void stop_ecpri_timer(void);

uint64_t get_ecpri_scr_value();

void set_ecpri_timer_int(void);

void isr_ecpri_timer(void);


#endif

