<p>Vadim Yanitskiy has uploaded this change for <strong>review</strong>.</p><p><a href="https://gerrit.osmocom.org/11181">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">firmware/layer1: add scheduler tasks for CBCH<br><br>According to GSM TS 05.02, section 3.3.5, Cell Broadcast Channel<br>(CBCH) is a downlink only channel, which is used to carry the<br>short message service cell broadcast (SMSCB). CBCH is optional,<br>and uses the same physical channel as SDCCH. More precisely,<br>CBCH replaces sub-slot number 2 of SDCCH channels when enabled.<br><br>This change introduces the CBCH related tasks only, there is no<br>way to enable them yet.<br><br>Change-Id: I1d7f02cba1cd8f6527360589d2d2747b6426f78b<br>---<br>M src/target/firmware/include/layer1/mframe_sched.h<br>M src/target/firmware/layer1/mframe_sched.c<br>2 files changed, 22 insertions(+), 0 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/81/11181/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/src/target/firmware/include/layer1/mframe_sched.h b/src/target/firmware/include/layer1/mframe_sched.h</span><br><span>index ecdb1ec..74e2d27 100644</span><br><span>--- a/src/target/firmware/include/layer1/mframe_sched.h</span><br><span>+++ b/src/target/firmware/include/layer1/mframe_sched.h</span><br><span>@@ -23,6 +23,9 @@</span><br><span>  MF_TASK_SDCCH8_6,</span><br><span>    MF_TASK_SDCCH8_7,</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+ MF_TASK_SDCCH4_CBCH,</span><br><span style="color: hsl(120, 100%, 40%);">+  MF_TASK_SDCCH8_CBCH,</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span>       MF_TASK_TCH_F_EVEN,</span><br><span>  MF_TASK_TCH_F_ODD,</span><br><span>   MF_TASK_TCH_H_0,</span><br><span>diff --git a/src/target/firmware/layer1/mframe_sched.c b/src/target/firmware/layer1/mframe_sched.c</span><br><span>index 01ae167..9be8380 100644</span><br><span>--- a/src/target/firmware/layer1/mframe_sched.c</span><br><span>+++ b/src/target/firmware/layer1/mframe_sched.c</span><br><span>@@ -198,6 +198,16 @@</span><br><span>     { .sched_set = NULL }</span><br><span> };</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+/* CBCH replaces sub-slot 2 of SDCCH, see GSM 05.02, section 6.4 */</span><br><span style="color: hsl(120, 100%, 40%);">+static const struct mframe_sched_item mf_sdcch8_cbch[] = {</span><br><span style="color: hsl(120, 100%, 40%);">+      { .sched_set = NB_QUAD_FH_DL, .modulo = 51, .frame_nr = 8 },</span><br><span style="color: hsl(120, 100%, 40%);">+  { .sched_set = NULL }</span><br><span style="color: hsl(120, 100%, 40%);">+};</span><br><span style="color: hsl(120, 100%, 40%);">+static const struct mframe_sched_item mf_sdcch4_cbch[] = {</span><br><span style="color: hsl(120, 100%, 40%);">+ { .sched_set = NB_QUAD_DL, .modulo = 51, .frame_nr = 32 },</span><br><span style="color: hsl(120, 100%, 40%);">+    { .sched_set = NULL }</span><br><span style="color: hsl(120, 100%, 40%);">+};</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> /* Measurement for MF 51 C0 */</span><br><span> static const struct mframe_sched_item mf_neigh_pm51_c0t0[] = {</span><br><span>      { .sched_set = NEIGH_PM   , .modulo = 51, .frame_nr = 0 },</span><br><span>@@ -327,6 +337,9 @@</span><br><span>     [MF_TASK_SDCCH8_6] = mf_sdcch8_6,</span><br><span>    [MF_TASK_SDCCH8_7] = mf_sdcch8_7,</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+ [MF_TASK_SDCCH4_CBCH] = mf_sdcch4_cbch,</span><br><span style="color: hsl(120, 100%, 40%);">+       [MF_TASK_SDCCH8_CBCH] = mf_sdcch8_cbch,</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span>    [MF_TASK_TCH_F_EVEN] = mf_tch_f_even,</span><br><span>        [MF_TASK_TCH_F_ODD]  = mf_tch_f_odd,</span><br><span>         [MF_TASK_TCH_H_0]    = mf_tch_h_0,</span><br><span>@@ -401,6 +414,12 @@</span><br><span>            cbits = 0x02 + 1;</span><br><span>            break;</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+    /* Osmocom specific extensions */</span><br><span style="color: hsl(120, 100%, 40%);">+     case MF_TASK_SDCCH4_CBCH:</span><br><span style="color: hsl(120, 100%, 40%);">+     case MF_TASK_SDCCH8_CBCH:</span><br><span style="color: hsl(120, 100%, 40%);">+             cbits = 0xc8;</span><br><span style="color: hsl(120, 100%, 40%);">+         break;</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span>     case MF_TASK_UL_ALL_NB:</span><br><span>      default:</span><br><span>             printd("ERROR: cannot express mf_task=%d as "</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/11181">change 11181</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/11181"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmocom-bb </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>
<div style="display:none"> Gerrit-Change-Id: I1d7f02cba1cd8f6527360589d2d2747b6426f78b </div>
<div style="display:none"> Gerrit-Change-Number: 11181 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: Vadim Yanitskiy <axilirator@gmail.com> </div>