aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/include/openbsc/osmo_bsc_rf.h
blob: e43ae2e3fbba85b98b090bb10330429787455ba2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#ifndef OSMO_BSC_RF
#define OSMO_BSC_RF

#include <osmocore/write_queue.h>
#include <osmocore/timer.h>

struct gsm_network;

struct osmo_bsc_rf {
	/* the value of signal.h */
	int policy;
	struct bsc_fd listen;
	struct gsm_network *gsm_network;

	const char *last_state_command;

	/* delay the command */
	char last_request;
	struct timer_list delay_cmd;

	/* verify that RF is up as it should be */
	struct timer_list rf_check;

	/* some handling for the automatic grace switch */
	struct timer_list grace_timeout;
};

struct osmo_bsc_rf_conn {
	struct write_queue queue;
	struct osmo_bsc_rf *rf;
};

struct osmo_bsc_rf *osmo_bsc_rf_create(const char *path, struct gsm_network *net);

#endif