diff options
author | Harald Welte <laforge@gnumonks.org> | 2016-11-15 22:59:24 +0100 |
---|---|---|
committer | Alexander Couzens <lynxis@fe80.eu> | 2017-03-23 02:10:21 +0100 |
commit | ce49258a12019d2c7cb53d07e3c9b4ffbc20f561 (patch) | |
tree | 7dbe2ce0391aafc9ff35e9ffe3a9d12c72c6840b /openbsc/src/libbsc/abis_om2000_vty.c | |
parent | dd22a30d75090ebe2ba08056bfa04a92aa8d6ba1 (diff) |
OM2000: Send ALTCRQ for SuperChannel after receiving IS Enable Req Ack
When the BTS is configured to use a SuperChannel and it is using a
unix domain socket based transport towards the L2TP daemon, then
we must instruct the L2TP daemon to instruct the SIU to change the Abis
Lower Transport Mode using the ALTCRQ / ALTCRP L2TP signalling.
Change-Id: I672bfaa09c42fbeb0c8459f24b2222b952de954b
Diffstat (limited to 'openbsc/src/libbsc/abis_om2000_vty.c')
-rw-r--r-- | openbsc/src/libbsc/abis_om2000_vty.c | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/openbsc/src/libbsc/abis_om2000_vty.c b/openbsc/src/libbsc/abis_om2000_vty.c index 060fb8bc7..a6bc4c78c 100644 --- a/openbsc/src/libbsc/abis_om2000_vty.c +++ b/openbsc/src/libbsc/abis_om2000_vty.c @@ -417,6 +417,29 @@ DEFUN(cfg_om2k_con_path_conc, cfg_om2k_con_path_conc_cmd, return CMD_SUCCESS; } +DEFUN(cfg_bts_alt_mode, cfg_bts_alt_mode_cmd, + "abis-lower-transport (single-timeslot|super-channel)", + "Configure thee Abis Lower Transport\n" + "Single Timeslot (classic Abis)\n" + "SuperChannel (Packet Abis)\n") +{ + struct gsm_bts *bts = vty->index; + struct con_group *cg; + + if (bts->type != GSM_BTS_TYPE_RBS2000) { + vty_out(vty, "%% Command only works for RBS2000%s", + VTY_NEWLINE); + return CMD_WARNING; + } + + if (!strcmp(argv[0], "super-channel")) + bts->rbs2000.use_superchannel = 1; + else + bts->rbs2000.use_superchannel = 0; + + return CMD_SUCCESS; +} + DEFUN(cfg_bts_is_conn_list, cfg_bts_is_conn_list_cmd, "is-connection-list (add|del) <0-2047> <0-2047> <0-255>", "Interface Switch Connection List\n" @@ -548,6 +571,9 @@ void abis_om2k_config_write_bts(struct vty *vty, struct gsm_bts *bts) VTY_NEWLINE); dump_con_group(vty, cgrp); } + if (bts->rbs2000.use_superchannel) + vty_out(vty, " abis-lower-transport super-channel%s", + VTY_NEWLINE); } int abis_om2k_vty_init(void) @@ -575,6 +601,7 @@ int abis_om2k_vty_init(void) install_element(OM2K_CON_GROUP_NODE, &cfg_om2k_con_path_conc_cmd); install_element(BTS_NODE, &cfg_bts_is_conn_list_cmd); + install_element(BTS_NODE, &cfg_bts_alt_mode_cmd); install_element(BTS_NODE, &cfg_om2k_con_group_cmd); install_element(BTS_NODE, &del_om2k_con_group_cmd); |