aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNeels Hofmeyr <neels@hofmeyr.de>2018-06-05 15:37:59 +0200
committerHarald Welte <laforge@gnumonks.org>2018-06-08 16:16:42 +0000
commit0c1ac9f01058c5957d6bbb4c3fa0a51d2dea906a (patch)
tree133c13f24e4d3269cde56b4832a2792f32dd0ba7
parentfc622c724133db3d8682101f725d07054000812f (diff)
make T10 configurable like the rest of them
-rw-r--r--include/osmocom/bsc/gsm_data.h2
-rw-r--r--src/osmo-bsc/bsc_subscr_conn_fsm.c9
-rw-r--r--src/osmo-bsc/bsc_vty.c3
-rw-r--r--src/osmo-bsc/net_init.c1
4 files changed, 9 insertions, 6 deletions
diff --git a/include/osmocom/bsc/gsm_data.h b/include/osmocom/bsc/gsm_data.h
index 8f245c9cd..579461732 100644
--- a/include/osmocom/bsc/gsm_data.h
+++ b/include/osmocom/bsc/gsm_data.h
@@ -1185,6 +1185,7 @@ static const struct rate_ctr_group_desc bsc_ctrg_desc = {
#define GSM_T3119_DEFAULT 10
#define GSM_T3122_DEFAULT 10
#define GSM_T3141_DEFAULT 10
+#define GSM_T10_DEFAULT 6 /* RR Assignment timeout, in seconds */
#define GSM_T7_DEFAULT 10 /* inter-BSC MO Handover first timeout, in seconds */
#define GSM_T8_DEFAULT 10 /* inter-BSC MO Handover second timeout, in seconds */
#define GSM_T101_DEFAULT 10 /* inter-BSC MT Handover timeout, in seconds */
@@ -1233,6 +1234,7 @@ struct gsm_network {
int T3119;
int T3122;
int T3141;
+ int T10; /*< RR Assignment timeout, in seconds */
int T7; /*< inter-BSC handover MO timeout from Handover Required to Handover Command */
int T8; /*< inter-BSC handover MO timeout from Handover Command to final Clear*/
int T101; /*< inter-BSC handover MT timeout from Handover Request to Handover Accept */
diff --git a/src/osmo-bsc/bsc_subscr_conn_fsm.c b/src/osmo-bsc/bsc_subscr_conn_fsm.c
index d2d20955a..9c8dbda06 100644
--- a/src/osmo-bsc/bsc_subscr_conn_fsm.c
+++ b/src/osmo-bsc/bsc_subscr_conn_fsm.c
@@ -45,9 +45,6 @@
#define MGCP_MGW_HO_TIMEOUT 4 /* in seconds */
#define MGCP_MGW_HO_TIMEOUT_TIMER_NR 2
-#define GSM0808_T10_TIMER_NR 10
-#define GSM0808_T10_VALUE 6
-
#define ENDPOINT_ID "rtpbridge/*@mgw"
enum gscon_fsm_states {
@@ -447,7 +444,7 @@ static void gscon_fsm_active(struct osmo_fsm_inst *fi, uint32_t event, void *dat
return;
}
- osmo_fsm_inst_state_chg(fi, ST_WAIT_ASS_CMPL, GSM0808_T10_VALUE, GSM0808_T10_TIMER_NR);
+ osmo_fsm_inst_state_chg(fi, ST_WAIT_ASS_CMPL, conn->network->T10, 10);
break;
default:
/* An unsupported channel is requested, so we have to
@@ -534,7 +531,7 @@ static void gscon_fsm_wait_crcx_bts(struct osmo_fsm_inst *fi, uint32_t event, vo
return;
}
- osmo_fsm_inst_state_chg(fi, ST_WAIT_ASS_CMPL, GSM0808_T10_VALUE, GSM0808_T10_TIMER_NR);
+ osmo_fsm_inst_state_chg(fi, ST_WAIT_ASS_CMPL, conn->network->T10, 10);
break;
case GSCON_EV_MO_DTAP:
forward_dtap(conn, (struct msgb *)data, fi);
@@ -1050,7 +1047,7 @@ static int gscon_timer_cb(struct osmo_fsm_inst *fi)
* gscon_cleanup() above) */
osmo_fsm_inst_term(fi, OSMO_FSM_TERM_REGULAR, NULL);
break;
- case GSM0808_T10_TIMER_NR: /* Assignment Failed */
+ case 10: /* Assignment Failed */
assignment_failed(fi, GSM0808_CAUSE_RADIO_INTERFACE_FAILURE);
break;
case MGCP_MGW_TIMEOUT_TIMER_NR: /* Assignment failed (no response from MGW) */
diff --git a/src/osmo-bsc/bsc_vty.c b/src/osmo-bsc/bsc_vty.c
index 837f43180..57c536323 100644
--- a/src/osmo-bsc/bsc_vty.c
+++ b/src/osmo-bsc/bsc_vty.c
@@ -1001,6 +1001,7 @@ static int config_write_net(struct vty *vty)
VTY_OUT_TIMER(3119);
VTY_OUT_TIMER(3122);
VTY_OUT_TIMER(3141);
+ VTY_OUT_TIMER(10);
VTY_OUT_TIMER(7);
VTY_OUT_TIMER(8);
VTY_OUT_TIMER(101);
@@ -1921,6 +1922,7 @@ DECLARE_TIMER(3117, "Currently not used")
DECLARE_TIMER(3119, "Currently not used")
DECLARE_TIMER(3122, "Default waiting time (seconds) after IMM ASS REJECT")
DECLARE_TIMER(3141, "Currently not used")
+DECLARE_TIMER(10, "Assignment Command timeout in seconds")
DECLARE_TIMER(7, "Set the outgoing inter-BSC Handover timeout, from Handover Required to Handover Command")
DECLARE_TIMER(8, "Set the outgoing inter-BSC Handover timeout, from Handover Command to final Clear")
DECLARE_TIMER(101, "Set the incoming inter-BSC Handover timeout, from Handover Request to Accept")
@@ -4849,6 +4851,7 @@ int bsc_vty_init(struct gsm_network *network)
install_element(GSMNET_NODE, &cfg_net_T3119_cmd);
install_element(GSMNET_NODE, &cfg_net_T3122_cmd);
install_element(GSMNET_NODE, &cfg_net_T3141_cmd);
+ install_element(GSMNET_NODE, &cfg_net_T10_cmd);
install_element(GSMNET_NODE, &cfg_net_T7_cmd);
install_element(GSMNET_NODE, &cfg_net_T8_cmd);
install_element(GSMNET_NODE, &cfg_net_T101_cmd);
diff --git a/src/osmo-bsc/net_init.c b/src/osmo-bsc/net_init.c
index 5a48988b3..3ee35fe11 100644
--- a/src/osmo-bsc/net_init.c
+++ b/src/osmo-bsc/net_init.c
@@ -64,6 +64,7 @@ struct gsm_network *gsm_network_init(void *ctx)
net->T3119 = GSM_T3119_DEFAULT;
net->T3122 = GSM_T3122_DEFAULT;
net->T3141 = GSM_T3141_DEFAULT;
+ net->T10 = GSM_T10_DEFAULT;
net->T7 = GSM_T7_DEFAULT;
net->T8 = GSM_T8_DEFAULT;
net->T101 = GSM_T101_DEFAULT;