Review at  https://gerrit.osmocom.org/3246

VIRT-PHY: Added test option for fast hyperframe repeat.

Frame number will restart at 0 after each superframe (approx. 6.1 sec)
if enabled. Can be enabled by preprocessor define.

Change-Id: If3adf14df5fcd8daf53363c27b3772c42d7122e9
---
M src/osmo-bts-virtual/scheduler_virtbts.c
1 file changed, 8 insertions(+), 0 deletions(-)


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

diff --git a/src/osmo-bts-virtual/scheduler_virtbts.c 
b/src/osmo-bts-virtual/scheduler_virtbts.c
index 47be6d7..19e6eb6 100644
--- a/src/osmo-bts-virtual/scheduler_virtbts.c
+++ b/src/osmo-bts-virtual/scheduler_virtbts.c
@@ -45,6 +45,8 @@
 #include "virtual_um.h"
 #include "l1_if.h"
 
+#define MODULO_HYPERFRAME 0
+
 static const char *gsmtap_hdr_stringify(const struct gsmtap_hdr *gh)
 {
        static char buf[256];
@@ -83,7 +85,13 @@
        else
                gsmtap_chantype = chantype_rsl2gsmtap(rsl_chantype, 
chdesc->link_id); /* the logical channel type */
 
+#if MODULO_HYPERFRAME
+       /* Restart fn after every superframe (26 * 51 frames) to simulate 
hyperframe overflow each 6 seconds. */
+       fn %= 26 * 51;
+#endif
+
        outmsg = gsmtap_makemsg(arfcn, timeslot, gsmtap_chantype, subslot, fn, 
signal_dbm, snr, data, data_len);
+
        if (outmsg) {
                struct phy_instance *pinst = trx_phy_instance(l1t->trx);
                struct gsmtap_hdr *gh = (struct gsmtap_hdr *)msgb_data(outmsg);

-- 
To view, visit https://gerrit.osmocom.org/3246
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: If3adf14df5fcd8daf53363c27b3772c42d7122e9
Gerrit-PatchSet: 1
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Owner: Harald Welte <[email protected]>
Gerrit-Reviewer: BastusIII <[email protected]>

Reply via email to