summaryrefslogtreecommitdiffstats
path: root/src/target/firmware/include
diff options
context:
space:
mode:
authorAndreas Eversberg2011-07-17 09:41:19 +0200
committerAndreas Eversberg2011-07-17 09:41:19 +0200
commit74e7535ea2718d810a876bbc572c7fc2f99225a1 (patch)
tree1c28419f758633d2385c711df3c1e071b9f364af /src/target/firmware/include
parent[layer23] Adding neighbour cell measurement to L1CTL interface. (diff)
downloadosmocom-74e7535ea2718d810a876bbc572c7fc2f99225a1.tar.gz
osmocom-74e7535ea2718d810a876bbc572c7fc2f99225a1.tar.xz
osmocom-74e7535ea2718d810a876bbc572c7fc2f99225a1.zip
[layer1] Adding neighbour cell measurement code to layer1.
When listening to BCCH, layer1 may measure the power level of neighbour cells. A list of neighbour cell frequencies need to be sent to layer1. After the measurement is done, the results are indicated to layer23.
Diffstat (limited to 'src/target/firmware/include')
-rw-r--r--src/target/firmware/include/layer1/mframe_sched.h4
-rw-r--r--src/target/firmware/include/layer1/prim.h1
-rw-r--r--src/target/firmware/include/layer1/sync.h9
3 files changed, 14 insertions, 0 deletions
diff --git a/src/target/firmware/include/layer1/mframe_sched.h b/src/target/firmware/include/layer1/mframe_sched.h
index fa94422..3b2039a 100644
--- a/src/target/firmware/include/layer1/mframe_sched.h
+++ b/src/target/firmware/include/layer1/mframe_sched.h
@@ -28,6 +28,10 @@ enum mframe_task {
MF_TASK_TCH_H_0,
MF_TASK_TCH_H_1,
+ MF_TASK_NEIGH_PM51,
+ MF_TASK_NEIGH_PM26E,
+ MF_TASK_NEIGH_PM26O,
+
/* Test task: send Normal Burst in all timeslots */
MF_TASK_UL_ALL_NB,
};
diff --git a/src/target/firmware/include/layer1/prim.h b/src/target/firmware/include/layer1/prim.h
index 44a01cb..30c51ae 100644
--- a/src/target/firmware/include/layer1/prim.h
+++ b/src/target/firmware/include/layer1/prim.h
@@ -29,5 +29,6 @@ extern const struct tdma_sched_item nb_sched_set_ul[];
extern const struct tdma_sched_item tch_sched_set[];
extern const struct tdma_sched_item tch_a_sched_set[];
extern const struct tdma_sched_item tch_d_sched_set[];
+extern const struct tdma_sched_item neigh_pm_sched_set[];
#endif /* _L1_PRIM_H */
diff --git a/src/target/firmware/include/layer1/sync.h b/src/target/firmware/include/layer1/sync.h
index 0796205..8ed2cb1 100644
--- a/src/target/firmware/include/layer1/sync.h
+++ b/src/target/firmware/include/layer1/sync.h
@@ -142,6 +142,15 @@ struct l1s_state {
struct l1s_h1 st_h1;
};
} dedicated;
+
+ /* neighbour cell power measurement process */
+ struct {
+ uint8_t n, second;
+ uint8_t pos;
+ uint8_t running;
+ uint16_t band_arfcn[64];
+ uint8_t level[64];
+ } neigh_pm;
};
extern struct l1s_state l1s;