1 /*
2  * Copyright (c) 2017 Oticon A/S
3  *
4  * SPDX-License-Identifier: Apache-2.0
5  */
6 #ifndef _NRF_RADIO_H
7 #define _NRF_RADIO_H
8 
9 #include "nrfx.h"
10 
11 #ifdef __cplusplus
12 extern "C"{
13 #endif
14 
15 extern NRF_RADIO_Type NRF_RADIO_regs;
16 
17 void nrf_radio_init();
18 void nrf_radio_clean_up();
19 void nrf_radio_timer_triggered();
20 void nrf_radio_timer_abort_reeval_triggered();
21 
22 void nrf_radio_tasks_TXEN();
23 void nrf_radio_tasks_RXEN();
24 void nrf_radio_tasks_START();
25 void nrf_radio_tasks_CCASTART();
26 void nrf_radio_tasks_CCASTOP();
27 void nrf_radio_tasks_EDSTART();
28 void nrf_radio_tasks_EDSTOP();
29 void nrf_radio_tasks_STOP() ;
30 void nrf_radio_tasks_DISABLE();
31 void nrf_radio_tasks_RSSISTART();
32 void nrf_radio_tasks_RSSISTOP();
33 void nrf_radio_tasks_BCSTART();
34 void nrf_radio_tasks_BCSTOP();
35 
36 void nrf_radio_bitcounter_timer_triggered();
37 
38 void nrf_radio_regw_sideeffects_BCC();
39 void nrf_radio_regw_sideeffects_POWER();
40 void nrf_radio_regw_sideeffects_TASKS_TXEN();
41 void nrf_radio_regw_sideeffects_TASKS_RXEN();
42 void nrf_radio_regw_sideeffects_TASKS_START();
43 void nrf_radio_regw_sideeffects_TASKS_STOP();
44 void nrf_radio_regw_sideeffects_TASKS_DISABLE();
45 void nrf_radio_regw_sideeffects_TASKS_RSSISTART();
46 void nrf_radio_regw_sideeffects_TASKS_RSSISTOP();
47 void nrf_radio_regw_sideeffects_TASKS_BCSTART();
48 void nrf_radio_regw_sideeffects_TASKS_BCSTOP();
49 void nrf_radio_regw_sideeffects_TASKS_EDSTART();
50 void nrf_radio_regw_sideeffects_TASKS_EDSTOP();
51 void nrf_radio_regw_sideeffects_TASKS_CCASTART();
52 void nrf_radio_regw_sideeffects_TASKS_CCASTOP();
53 void nrf_radio_regw_sideeffects_INTENSET();
54 void nrf_radio_regw_sideeffects_INTENCLR();
55 
56 /*
57  * Internal interface to bitcounter
58  */
59 double nrf_radio_get_bpus();
60 
61 #ifdef __cplusplus
62 }
63 #endif
64 
65 #endif
66 
67