diff options
author | Harald Welte <laforge@gnumonks.org> | 2010-03-27 18:40:21 +0800 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2010-03-27 18:42:43 +0800 |
commit | 1e4d22cb5f66352e23ef05212035bd29bfb7d6e1 (patch) | |
tree | a037679bfe868ff7675433e771216216942ef68c /src/target/firmware/include/layer1 | |
parent | 413b10e33ea9c86555e87809816fc1fbeb7f1959 (diff) |
Implement L23-triggered L1 power measurement scan
Now layer23 can ask L1 to scan an entire range of ARFCN's and do power
measurements. This is the first step in the cell (re)selection process.
Diffstat (limited to 'src/target/firmware/include/layer1')
-rw-r--r-- | src/target/firmware/include/layer1/l23_api.h | 1 | ||||
-rw-r--r-- | src/target/firmware/include/layer1/sync.h | 13 |
2 files changed, 14 insertions, 0 deletions
diff --git a/src/target/firmware/include/layer1/l23_api.h b/src/target/firmware/include/layer1/l23_api.h index 69d4203a..66efce5d 100644 --- a/src/target/firmware/include/layer1/l23_api.h +++ b/src/target/firmware/include/layer1/l23_api.h @@ -7,6 +7,7 @@ void l1a_l23api_init(void); void l1_queue_for_l2(struct msgb *msg); +struct msgb *l1ctl_msgb_alloc(uint8_t msg_type); struct msgb *l1_create_l2_msg(int msg_type, uint32_t fn, uint16_t snr, uint16_t arfcn); #endif /* _L1_L23_API_H */ diff --git a/src/target/firmware/include/layer1/sync.h b/src/target/firmware/include/layer1/sync.h index 6bdb57ac..f13d5a97 100644 --- a/src/target/firmware/include/layer1/sync.h +++ b/src/target/firmware/include/layer1/sync.h @@ -37,6 +37,19 @@ struct l1s_state { uint32_t mf_tasks; struct { + /* power measurement l1 task */ + unsigned int mode; + union { + struct { + uint16_t arfcn_start; + uint16_t arfcn_next; + uint16_t arfcn_end; + } range; + }; + struct msgb *msg; + } pm; + + struct { uint8_t ra; } rach; }; |