summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Eversberg <jolly@eversberg.eu>2013-12-08 14:47:42 +0100
committerAndreas Eversberg <jolly@eversberg.eu>2014-01-29 09:36:22 +0100
commite1d25c38ae8015c95e2d60b71949640c466affc2 (patch)
treeb67478451e05fe4fed7eebe9efc96926ea53d393
parent532a797ea117aa506c60fc6ec6ec56c5d1975162 (diff)
[WIP] HO: Add BSIC and TOA to L1CTL_NEIGH_PM_IND
-rw-r--r--include/l1ctl_proto.h5
-rw-r--r--src/host/layer23/include/osmocom/bb/common/osmocom_data.h2
-rw-r--r--src/host/layer23/src/common/l1ctl.c6
3 files changed, 10 insertions, 3 deletions
diff --git a/include/l1ctl_proto.h b/include/l1ctl_proto.h
index 771bf1c3..4fa1fbc0 100644
--- a/include/l1ctl_proto.h
+++ b/include/l1ctl_proto.h
@@ -287,12 +287,15 @@ struct l1ctl_neigh_pm_req {
uint8_t tn[64];
} __attribute__((packed));
+#define L1CTL_BSIC_INVAL 255
+
/* neighbour cell measurement results */
struct l1ctl_neigh_pm_ind {
uint16_t band_arfcn;
uint8_t pm[2];
uint8_t tn;
- uint8_t padding;
+ uint8_t bsic;
+ int16_t toa;
} __attribute__((packed));
/* traffic data to network */
diff --git a/src/host/layer23/include/osmocom/bb/common/osmocom_data.h b/src/host/layer23/include/osmocom/bb/common/osmocom_data.h
index ab7c2502..578469a0 100644
--- a/src/host/layer23/include/osmocom/bb/common/osmocom_data.h
+++ b/src/host/layer23/include/osmocom/bb/common/osmocom_data.h
@@ -126,6 +126,8 @@ struct osmobb_neigh_pm_ind {
struct osmocom_ms *ms;
uint16_t band_arfcn;
uint8_t rx_lev;
+ uint8_t bsic;
+ int16_t toa;
};
#endif
diff --git a/src/host/layer23/src/common/l1ctl.c b/src/host/layer23/src/common/l1ctl.c
index 91bab897..e411327f 100644
--- a/src/host/layer23/src/common/l1ctl.c
+++ b/src/host/layer23/src/common/l1ctl.c
@@ -905,11 +905,13 @@ static int rx_l1_neigh_pm_ind(struct osmocom_ms *ms, struct msgb *msg)
for (pm_ind = (struct l1ctl_neigh_pm_ind *) msg->l1h;
(uint8_t *) pm_ind < msg->tail; pm_ind++) {
struct osmobb_neigh_pm_ind mi;
- DEBUGP(DL1C, "NEIGH_PM IND: ARFCN: %4u RxLev: %3d %3d\n",
+ DEBUGP(DL1C, "NEIGH_PM IND: ARFCN: %4u RxLev: %3d BSIC: %3d\n",
ntohs(pm_ind->band_arfcn), pm_ind->pm[0],
- pm_ind->pm[1]);
+ pm_ind->bsic);
mi.band_arfcn = ntohs(pm_ind->band_arfcn);
mi.rx_lev = pm_ind->pm[0];
+ mi.bsic = pm_ind->bsic;
+ mi.toa = pm_ind->toa;
mi.ms = ms;
osmo_signal_dispatch(SS_L1CTL, S_L1CTL_NEIGH_PM_IND, &mi);
}