summaryrefslogtreecommitdiffstats
path: root/src/host/layer23/src/common/l1ctl.c
diff options
context:
space:
mode:
authorAndreas.Eversberg <jolly@eversberg.eu>2010-09-26 10:35:46 +0000
committerAndreas.Eversberg <jolly@eversberg.eu>2010-09-26 10:35:46 +0000
commit4ed601ae4e48e8d480c3e0f5e82160434e6a32c8 (patch)
treef3ec61df2af05361485c3e8377793a145f351558 /src/host/layer23/src/common/l1ctl.c
parent4c11da77906c6a7ca08b739b02c7475ec07d4577 (diff)
[layer23] Adding application generated measurement report
The cell provides SYSTEM INFORMATION 5* and 6. These are used to create a list of neighbor cells to monitor. Because there is no neighbor cell monitoring supported by layer1, the list has no valid results yet. Currently the average RX level of received frames are used to generate a new report every second. The report is transmitted to layer1 and used there whenever a measurement report has to be transmitted. The timing advance and the current transmit power (as requested by network), is included with every report.
Diffstat (limited to 'src/host/layer23/src/common/l1ctl.c')
-rw-r--r--src/host/layer23/src/common/l1ctl.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/host/layer23/src/common/l1ctl.c b/src/host/layer23/src/common/l1ctl.c
index 72ccd5f7..86ff59bf 100644
--- a/src/host/layer23/src/common/l1ctl.c
+++ b/src/host/layer23/src/common/l1ctl.c
@@ -76,6 +76,7 @@ static int rx_l1_fbsb_conf(struct osmocom_ms *ms, struct msgb *msg)
struct l1ctl_info_dl *dl;
struct l1ctl_fbsb_conf *sb;
struct gsm_time tm;
+ struct osmobb_fbsb_res fr;
if (msgb_l3len(msg) < sizeof(*dl) + sizeof(*sb)) {
LOGP(DL1C, LOGL_ERROR, "FBSB RESP: MSG too short %u\n",
@@ -98,7 +99,10 @@ static int rx_l1_fbsb_conf(struct osmocom_ms *ms, struct msgb *msg)
gsm_fn2gsmtime(&tm, ntohl(dl->frame_nr));
DEBUGP(DL1C, "SCH: SNR: %u TDMA: (%.4u/%.2u/%.2u) bsic: %d\n",
dl->snr, tm.t1, tm.t2, tm.t3, sb->bsic);
- dispatch_signal(SS_L1CTL, S_L1CTL_FBSB_RESP, ms);
+ fr.ms = ms;
+ fr.snr = dl->snr;
+ fr.bsic = sb->bsic;
+ dispatch_signal(SS_L1CTL, S_L1CTL_FBSB_RESP, &fr);
return 0;
}