From a8b3565246ce4c36cba07b1ebdefa45b895de78f Mon Sep 17 00:00:00 2001 From: Vadim Yanitskiy Date: Mon, 22 Oct 2018 02:52:18 +0200 Subject: VTY: add extended (11-bit) RACH detection toggle Since I838c21db29c54f1924dd478c2b34b46b70aab2cd we have both TS1 and TS2 synch. sequences, in addition to "default" TS0. Let's finally introduce the VTY configuration parameter, that can be used to toggle optional detection of both TS1 and TS2. Note: we keep this optional because of potentially bad impact on performance. There's no point in paying the performance penalty unless upper levels (BTS, PCU) actually make use of it. Change-Id: I1aee998d83b06692d76a83f79748f9129a2547e8 Related: OS#3054 --- CommonLibs/trx_vty.c | 18 ++++++++++++++++++ CommonLibs/trx_vty.h | 1 + 2 files changed, 19 insertions(+) (limited to 'CommonLibs') diff --git a/CommonLibs/trx_vty.c b/CommonLibs/trx_vty.c index 45b58eb..3b1b979 100644 --- a/CommonLibs/trx_vty.c +++ b/CommonLibs/trx_vty.c @@ -304,6 +304,21 @@ DEFUN(cfg_egprs, cfg_egprs_cmd, return CMD_SUCCESS; } +DEFUN(cfg_ext_rach, cfg_ext_rach_cmd, + "ext-rach (disable|enable)", + "Enable extended (11-bit) RACH (default=disable)\n") +{ + struct trx_ctx *trx = trx_from_vty(vty); + + if (strcmp("disable", argv[0]) == 0) + trx->cfg.ext_rach = false; + + if (strcmp("enable", argv[0]) == 0) + trx->cfg.ext_rach = true; + + return CMD_SUCCESS; +} + DEFUN(cfg_rt_prio, cfg_rt_prio_cmd, "rt-prio <1-32>", "Set the SCHED_RR real-time priority\n" @@ -417,6 +432,7 @@ static int config_write_trx(struct vty *vty) vty_out(vty, " rssi-offset %f%s", trx->cfg.rssi_offset, VTY_NEWLINE); vty_out(vty, " swap-channels %s%s", trx->cfg.swap_channels ? "enable" : "disable", VTY_NEWLINE); vty_out(vty, " egprs %s%s", trx->cfg.egprs ? "enable" : "disable", VTY_NEWLINE); + vty_out(vty, " ext-rach %s%s", trx->cfg.ext_rach ? "enable" : "disable", VTY_NEWLINE); if (trx->cfg.sched_rr != 0) vty_out(vty, " rt-prio %u%s", trx->cfg.sched_rr, VTY_NEWLINE); @@ -454,6 +470,7 @@ static void trx_dump_vty(struct vty *vty, struct trx_ctx *trx) vty_out(vty, " RSSI to dBm offset: %f%s", trx->cfg.rssi_offset, VTY_NEWLINE); vty_out(vty, " Swap channels: %s%s", trx->cfg.swap_channels ? "Enabled" : "Disabled", VTY_NEWLINE); vty_out(vty, " EDGE support: %s%s", trx->cfg.egprs ? "Enabled" : "Disabled", VTY_NEWLINE); + vty_out(vty, " Extended RACH support: %s%s", trx->cfg.ext_rach ? "Enabled" : "Disabled", VTY_NEWLINE); vty_out(vty, " Real Time Priority: %u (%s)%s", trx->cfg.sched_rr, trx->cfg.sched_rr ? "Enabled" : "Disabled", VTY_NEWLINE); vty_out(vty, " Channels: %u%s", trx->cfg.num_chans, VTY_NEWLINE); @@ -564,6 +581,7 @@ int trx_vty_init(struct trx_ctx* trx) install_element(TRX_NODE, &cfg_rssi_offset_cmd); install_element(TRX_NODE, &cfg_swap_channels_cmd); install_element(TRX_NODE, &cfg_egprs_cmd); + install_element(TRX_NODE, &cfg_ext_rach_cmd); install_element(TRX_NODE, &cfg_rt_prio_cmd); install_element(TRX_NODE, &cfg_filler_cmd); diff --git a/CommonLibs/trx_vty.h b/CommonLibs/trx_vty.h index c921722..8d251ee 100644 --- a/CommonLibs/trx_vty.h +++ b/CommonLibs/trx_vty.h @@ -57,6 +57,7 @@ struct trx_ctx { double offset; double rssi_offset; bool swap_channels; + bool ext_rach; bool egprs; unsigned int sched_rr; unsigned int num_chans; -- cgit v1.2.3