jolly has uploaded this change for review. ( 
https://gerrit.osmocom.org/c/osmo-bts/+/34887?usp=email )


Change subject: ASCI: Add control of uplink access to osmo-bts-sysmo
......................................................................

ASCI: Add control of uplink access to osmo-bts-sysmo

An MPH-INFO message is used to turn detection of uplink access bursts on
or off. This is required for voice group/broadcast channels.

Related: OS#4851
Change-Id: I61f232aa91191dae08404c1f08cad91964d74568
---
M src/osmo-bts-sysmo/l1_if.c
M src/osmo-bts-sysmo/l1_if.h
M src/osmo-bts-sysmo/oml.c
3 files changed, 35 insertions(+), 2 deletions(-)



  git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/87/34887/1

diff --git a/src/osmo-bts-sysmo/l1_if.c b/src/osmo-bts-sysmo/l1_if.c
index 4ab2ef6..49a8c5d 100644
--- a/src/osmo-bts-sysmo/l1_if.c
+++ b/src/osmo-bts-sysmo/l1_if.c
@@ -604,6 +604,15 @@
                else
                        l1if_rsl_chan_rel(lchan);
                break;
+       case PRIM_INFO_ACT_UL_ACC:
+       case PRIM_INFO_DEACT_UL_ACC:
+               chan_nr = l1sap->u.info.u.ulacc_req.chan_nr;
+               lchan = get_lchan_by_chan_nr(trx, chan_nr);
+               if (l1sap->u.info.type == PRIM_INFO_ACT_UL_ACC)
+                       l1if_set_ul_acc(lchan, true);
+               else
+                       l1if_set_ul_acc(lchan, false);
+               break;
        default:
                LOGP(DL1C, LOGL_NOTICE, "unknown MPH-INFO.req %d\n",
                        l1sap->u.info.type);
diff --git a/src/osmo-bts-sysmo/l1_if.h b/src/osmo-bts-sysmo/l1_if.h
index 5b2da04..c81b6bd 100644
--- a/src/osmo-bts-sysmo/l1_if.h
+++ b/src/osmo-bts-sysmo/l1_if.h
@@ -145,6 +145,7 @@
 int l1if_rsl_chan_mod(struct gsm_lchan *lchan);
 int l1if_rsl_deact_sacch(struct gsm_lchan *lchan);
 int l1if_rsl_mode_modify(struct gsm_lchan *lchan);
+int l1if_set_ul_acc(struct gsm_lchan *lchan, bool active);

 /* calibration loading */
 int calib_load(struct femtol1_hdl *fl1h);
diff --git a/src/osmo-bts-sysmo/oml.c b/src/osmo-bts-sysmo/oml.c
index 9b760a3..e19c481 100644
--- a/src/osmo-bts-sysmo/oml.c
+++ b/src/osmo-bts-sysmo/oml.c
@@ -1172,8 +1172,8 @@
                LOGPLCHAN(lchan, DL1C, LOGL_ERROR, "Trying to activate lchan, 
but commands in queue\n");

        /* For handover, always start the main channel immediately. 
lchan->want_dl_sacch_active indicates whether dl
-        * SACCH should be activated. Also, for HO and VGCS listener/talker 
detection, start the RACH SAPI. */
-       if (lchan->ho.active == HANDOVER_ENABLED || 
rsl_chan_rt_is_asci(lchan->rsl_chan_rt))
+        * SACCH should be activated. */
+       if (lchan->ho.active == HANDOVER_ENABLED)
                enqueue_sapi_act_cmd(lchan, GsmL1_Sapi_Rach, 
GsmL1_Dir_RxUplink);

        for (i = 0; i < s4l->num_sapis; i++) {
@@ -1470,6 +1470,16 @@
        return 0;
 }

+int l1if_set_ul_acc(struct gsm_lchan *lchan, bool active)
+{
+       if (active)
+               enqueue_sapi_act_cmd(lchan, GsmL1_Sapi_Rach, 
GsmL1_Dir_RxUplink);
+       else
+               check_sapi_release(lchan, GsmL1_Sapi_Rach, GsmL1_Dir_RxUplink);
+
+       return 0;
+}
+
 int bts_model_adjst_ms_pwr(struct gsm_lchan *lchan)
 {
        if (lchan->state != LCHAN_S_ACTIVE)

--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/34887?usp=email
To unsubscribe, or for help writing mail filters, visit 
https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: I61f232aa91191dae08404c1f08cad91964d74568
Gerrit-Change-Number: 34887
Gerrit-PatchSet: 1
Gerrit-Owner: jolly <[email protected]>
Gerrit-MessageType: newchange

Reply via email to