1 /*
2  * Copyright (c) 2017 Oticon A/S
3  *
4  * SPDX-License-Identifier: Apache-2.0
5  */
6 #ifndef _NRF_HW_MODEL_TIMER_H
7 #define _NRF_HW_MODEL_TIMER_H
8 
9 #include "nrfx.h"
10 
11 #ifdef __cplusplus
12 extern "C"{
13 #endif
14 
15 void nrf_hw_model_timer_init();
16 void nrf_hw_model_timer_clean_up();
17 void nrf_hw_model_timer_timer_triggered();
18 
19 extern NRF_TIMER_Type NRF_TIMER_regs[];
20 
21 void nrf_timer0_TASK_CAPTURE_0();
22 void nrf_timer0_TASK_CAPTURE_1();
23 void nrf_timer0_TASK_CAPTURE_2();
24 void nrf_timer0_TASK_CAPTURE_3();
25 void nrf_timer0_TASK_CAPTURE_4();
26 void nrf_timer0_TASK_CAPTURE_5();
27 
28 void nrf_timer1_TASK_CAPTURE_0();
29 void nrf_timer1_TASK_CAPTURE_1();
30 void nrf_timer1_TASK_CAPTURE_2();
31 void nrf_timer1_TASK_CAPTURE_3();
32 void nrf_timer1_TASK_CAPTURE_4();
33 void nrf_timer1_TASK_CAPTURE_5();
34 
35 void nrf_timer2_TASK_CAPTURE_0();
36 void nrf_timer2_TASK_CAPTURE_1();
37 void nrf_timer2_TASK_CAPTURE_2();
38 void nrf_timer2_TASK_CAPTURE_3();
39 void nrf_timer2_TASK_CAPTURE_4();
40 void nrf_timer2_TASK_CAPTURE_5();
41 
42 void nrf_timer3_TASK_CAPTURE_0();
43 void nrf_timer3_TASK_CAPTURE_1();
44 void nrf_timer3_TASK_CAPTURE_2();
45 void nrf_timer3_TASK_CAPTURE_3();
46 void nrf_timer3_TASK_CAPTURE_4();
47 void nrf_timer3_TASK_CAPTURE_5();
48 
49 void nrf_timer4_TASK_CAPTURE_0();
50 void nrf_timer4_TASK_CAPTURE_1();
51 void nrf_timer4_TASK_CAPTURE_2();
52 void nrf_timer4_TASK_CAPTURE_3();
53 void nrf_timer4_TASK_CAPTURE_4();
54 void nrf_timer4_TASK_CAPTURE_5();
55 
56 void nrf_timer0_TASK_CLEAR();
57 void nrf_timer1_TASK_CLEAR();
58 void nrf_timer2_TASK_CLEAR();
59 void nrf_timer3_TASK_CLEAR();
60 void nrf_timer4_TASK_CLEAR();
61 
62 void nrf_timer0_TASK_COUNT();
63 void nrf_timer1_TASK_COUNT();
64 void nrf_timer2_TASK_COUNT();
65 void nrf_timer3_TASK_COUNT();
66 void nrf_timer4_TASK_COUNT();
67 
68 void nrf_timer0_TASK_START();
69 void nrf_timer1_TASK_START();
70 void nrf_timer2_TASK_START();
71 void nrf_timer3_TASK_START();
72 void nrf_timer4_TASK_START();
73 
74 void nrf_timer0_TASK_STOP();
75 void nrf_timer1_TASK_STOP();
76 void nrf_timer2_TASK_STOP();
77 void nrf_timer3_TASK_STOP();
78 void nrf_timer4_TASK_STOP();
79 
80 void nrf_timer_regw_sideeffects_TASKS_STOP(int t);
81 void nrf_timer_regw_sideeffects_TASKS_SHUTDOWN(int t);
82 void nrf_timer_regw_sideeffects_TASKS_START(int t);
83 void nrf_timer_regw_sideeffects_TASKS_CLEAR(int t);
84 void nrf_timer_regw_sideeffects_TASKS_CAPTURE(int t, int cc_n);
85 void nrf_timer_regw_sideeffects_INTENSET(int t);
86 void nrf_timer_regw_sideeffects_INTENCLR(int t);
87 void nrf_timer_regw_sideeffects_CC(int t, int cc_n);
88 
89 #ifdef __cplusplus
90 }
91 #endif
92 
93 #endif
94