<p>pespin <strong>submitted</strong> this change.</p><p><a href="https://gerrit.osmocom.org/c/osmo-pcu/+/22187">View Change</a></p><div style="white-space:pre-wrap">Approvals:
  Jenkins Builder: Verified
  lynxis lazus: Looks good to me, approved
  laforge: Looks good to me, approved

</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">Move ns_dialect field from BTS to PCU<br><br>Change-Id: Iffb22b776b91f93d6d2a7ccfa47deeecc22c33f0<br>---<br>M src/bts.cpp<br>M src/bts.h<br>M src/gprs_bssgp_pcu.cpp<br>M src/gprs_pcu.c<br>M src/gprs_pcu.h<br>M src/pcu_vty.c<br>6 files changed, 8 insertions(+), 12 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/src/bts.cpp b/src/bts.cpp</span><br><span>index c2b8696..4a9910f 100644</span><br><span>--- a/src/bts.cpp</span><br><span>+++ b/src/bts.cpp</span><br><span>@@ -201,7 +201,6 @@</span><br><span>     bts->n3103 = 4;</span><br><span>   bts->n3105 = 8;</span><br><span>   bts->si13_is_set = false;</span><br><span style="color: hsl(0, 100%, 40%);">-    bts->ns_dialect = NS2_DIALECT_IPACCESS;</span><br><span> </span><br><span>       /* TODO: increase them when CRBB decoding is implemented */</span><br><span>  bts->ws_base = 64;</span><br><span>diff --git a/src/bts.h b/src/bts.h</span><br><span>index 040386e..2902074 100644</span><br><span>--- a/src/bts.h</span><br><span>+++ b/src/bts.h</span><br><span>@@ -120,9 +120,6 @@</span><br><span>          */</span><br><span>  struct BTS *bts;</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-    /* Are we talking Gb with IP-SNS (true) or classic Gb? */</span><br><span style="color: hsl(0, 100%, 40%);">-       enum gprs_ns2_dialect ns_dialect;</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span>    /* Packet Application Information (3GPP TS 44.060 11.2.47, usually ETWS primary message). We don't need to store</span><br><span>          * more than one message, because they get sent so rarely. */</span><br><span>        struct msgb *app_info;</span><br><span>diff --git a/src/gprs_bssgp_pcu.cpp b/src/gprs_bssgp_pcu.cpp</span><br><span>index 0db6a51..89edd2b 100644</span><br><span>--- a/src/gprs_bssgp_pcu.cpp</span><br><span>+++ b/src/gprs_bssgp_pcu.cpp</span><br><span>@@ -984,7 +984,7 @@</span><br><span>    bts->nse = gprs_ns2_nse_by_nsei(the_pcu->nsi, nsei);</span><br><span>   if (!bts->nse)</span><br><span>            bts->nse = gprs_ns2_create_nse(the_pcu->nsi, nsei,</span><br><span style="color: hsl(0, 100%, 40%);">-                                               GPRS_NS2_LL_UDP, bts->ns_dialect);</span><br><span style="color: hsl(120, 100%, 40%);">+                                         GPRS_NS2_LL_UDP, the_pcu->vty.ns_dialect);</span><br><span> </span><br><span>     if (!bts->nse) {</span><br><span>          LOGP(DBSSGP, LOGL_ERROR, "Failed to create NSE\n");</span><br><span>@@ -997,7 +997,7 @@</span><br><span>                  continue;</span><br><span> </span><br><span>                /* FIXME: for SNS we just use the first successful NS-VC instead of all for the initial connect */</span><br><span style="color: hsl(0, 100%, 40%);">-              if (bts->ns_dialect == NS2_DIALECT_SNS) {</span><br><span style="color: hsl(120, 100%, 40%);">+          if (the_pcu->vty.ns_dialect == NS2_DIALECT_SNS) {</span><br><span>                         rc = gprs_ns2_sns_add_endpoint(bts->nse, &remote[i]);</span><br><span>                         if (!rc)</span><br><span>                             return rc;</span><br><span>@@ -1066,7 +1066,7 @@</span><br><span>           gprs_ns2_free_nses(the_pcu->nsi);</span><br><span>                 gprs_ns2_free_binds(the_pcu->nsi);</span><br><span>                rc = ns_create_nsvc(bts, nsei, local, remote, nsvci, valid);</span><br><span style="color: hsl(0, 100%, 40%);">-    } else if (bts->ns_dialect == NS2_DIALECT_SNS) {</span><br><span style="color: hsl(120, 100%, 40%);">+   } else if (the_pcu->vty.ns_dialect == NS2_DIALECT_SNS) {</span><br><span>          /* SNS: check if the initial nsvc is the same, if not recreate it */</span><br><span>                 const struct osmo_sockaddr *initial = gprs_ns2_nse_sns_remote(bts->nse);</span><br><span>          for (unsigned int i = 0; i < PCU_IF_NUM_NSVC; i++) {</span><br><span>diff --git a/src/gprs_pcu.c b/src/gprs_pcu.c</span><br><span>index cfe8896..01ead33 100644</span><br><span>--- a/src/gprs_pcu.c</span><br><span>+++ b/src/gprs_pcu.c</span><br><span>@@ -89,6 +89,7 @@</span><br><span>     pcu->vty.mcs_lqual_ranges[7].high = 24;</span><br><span>   pcu->vty.mcs_lqual_ranges[8].low = 23;</span><br><span>    pcu->vty.mcs_lqual_ranges[8].high = 256;</span><br><span style="color: hsl(120, 100%, 40%);">+   pcu->vty.ns_dialect = NS2_DIALECT_IPACCESS;</span><br><span> </span><br><span>   pcu->T_defs = T_defs_pcu;</span><br><span>         osmo_tdefs_reset(pcu->T_defs);</span><br><span>diff --git a/src/gprs_pcu.h b/src/gprs_pcu.h</span><br><span>index 916169e..ff73cc9 100644</span><br><span>--- a/src/gprs_pcu.h</span><br><span>+++ b/src/gprs_pcu.h</span><br><span>@@ -88,6 +88,7 @@</span><br><span>           /* Link quality range for each UL (M)CS. Below or above, next/prev (M)CS is selected. */</span><br><span>             struct {int16_t low; int16_t high; } cs_lqual_ranges[MAX_GPRS_CS];</span><br><span>           struct {int16_t low; int16_t high; } mcs_lqual_ranges[MAX_EDGE_MCS];</span><br><span style="color: hsl(120, 100%, 40%);">+          enum gprs_ns2_dialect ns_dialect; /* Are we talking Gb with IP-SNS (true) or classic Gb? */</span><br><span>  } vty;</span><br><span> </span><br><span>   struct gsmtap_inst *gsmtap;</span><br><span>diff --git a/src/pcu_vty.c b/src/pcu_vty.c</span><br><span>index 3abfba7..b0c941d 100644</span><br><span>--- a/src/pcu_vty.c</span><br><span>+++ b/src/pcu_vty.c</span><br><span>@@ -243,7 +243,7 @@</span><br><span>           }</span><br><span>    }</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-   if (bts->ns_dialect == NS2_DIALECT_SNS)</span><br><span style="color: hsl(120, 100%, 40%);">+    if (the_pcu->vty.ns_dialect == NS2_DIALECT_SNS)</span><br><span>           vty_out(vty, " gb-dialect ip-sns%s", VTY_NEWLINE);</span><br><span>         else</span><br><span>                 vty_out(vty, " gb-dialect classic%s", VTY_NEWLINE);</span><br><span>@@ -1067,12 +1067,10 @@</span><br><span>            "Classic Gb interface with NS-{RESET,BLOCK,UNBLOCK} and static configuration\n"</span><br><span>            "Modern Gb interface with IP-SNS (Sub Network Service) and dynamic configuration\n")</span><br><span> {</span><br><span style="color: hsl(0, 100%, 40%);">-       struct gprs_rlcmac_bts *bts = bts_main_data();</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span>       if (!strcmp(argv[0], "ip-sns")) {</span><br><span style="color: hsl(0, 100%, 40%);">-             bts->ns_dialect = NS2_DIALECT_SNS;</span><br><span style="color: hsl(120, 100%, 40%);">+         the_pcu->vty.ns_dialect = NS2_DIALECT_SNS;</span><br><span>        } else {</span><br><span style="color: hsl(0, 100%, 40%);">-                bts->ns_dialect = NS2_DIALECT_IPACCESS;</span><br><span style="color: hsl(120, 100%, 40%);">+            the_pcu->vty.ns_dialect = NS2_DIALECT_IPACCESS;</span><br><span>   }</span><br><span> </span><br><span>        return CMD_SUCCESS;</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-pcu/+/22187">change 22187</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.osmocom.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.osmocom.org/c/osmo-pcu/+/22187"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmo-pcu </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: Iffb22b776b91f93d6d2a7ccfa47deeecc22c33f0 </div>
<div style="display:none"> Gerrit-Change-Number: 22187 </div>
<div style="display:none"> Gerrit-PatchSet: 4 </div>
<div style="display:none"> Gerrit-Owner: pespin <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder </div>
<div style="display:none"> Gerrit-Reviewer: laforge <laforge@osmocom.org> </div>
<div style="display:none"> Gerrit-Reviewer: lynxis lazus <lynxis@fe80.eu> </div>
<div style="display:none"> Gerrit-Reviewer: pespin <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-MessageType: merged </div>