Merge commit 'f2699501bc20a1dc5ee965ca1cbb8f18a3471ff8'
[osmocom-bb.git] / src / target / firmware / include / layer1 / prim.h
1 #ifndef _L1_PRIM_H
2 #define _L1_PRIM_H
3
4 #include <stdint.h>
5
6 #include <layer1/tdma_sched.h>
7
8 struct l1ctl_fbsb_req;
9
10 /* Utils */
11 const uint8_t *pu_get_idle_frame(void);
12 void pu_update_rx_level(uint8_t rx_level);
13 const uint8_t *pu_get_meas_frame(void);
14
15 /* Primitives tests/requests */
16 void l1s_fb_test(uint8_t base_fn, uint8_t fb_mode);
17 void l1s_sb_test(uint8_t base_fn);
18 void l1s_pm_test(uint8_t base_fn, uint16_t arfcn);
19 void l1s_nb_test(uint8_t base_fn);
20
21 void l1s_fbsb_req(uint8_t base_fn, struct l1ctl_fbsb_req *req);
22 void l1a_freq_req(uint32_t fn_sched);
23 void l1a_rach_req(uint16_t offset, uint8_t combined, uint8_t ra);
24
25 /* Primitives raw scheduling sets */
26 extern const struct tdma_sched_item nb_sched_set[];
27 extern const struct tdma_sched_item nb_sched_set_ul[];
28
29 extern const struct tdma_sched_item tch_sched_set[];
30 extern const struct tdma_sched_item tch_a_sched_set[];
31 extern const struct tdma_sched_item tch_d_sched_set[];
32
33 #endif /* _L1_PRIM_H */