aboutsummaryrefslogtreecommitdiffstats
path: root/src/pcu_l1_if.cpp
diff options
context:
space:
mode:
authorAndreas Eversberg <jolly@eversberg.eu>2012-07-09 17:10:44 +0200
committerAndreas Eversberg <jolly@eversberg.eu>2012-07-09 17:10:44 +0200
commite13fa2d56936d6bed8febcc41508a30e4a1038f0 (patch)
tree40e4bdd467bc1bb1a3653363818a536ffb03c2bd /src/pcu_l1_if.cpp
parent88a214cc4520a765c14f15b7379d83c538500b96 (diff)
Send downlink IMMEDIATE ASSIGNMENT on PCH and not on AGCH
The IMSI is used to define paging group on which it is sent. This is tested with MS that requires correct paging group.
Diffstat (limited to 'src/pcu_l1_if.cpp')
-rw-r--r--src/pcu_l1_if.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/pcu_l1_if.cpp b/src/pcu_l1_if.cpp
index f6ba7750..865a9118 100644
--- a/src/pcu_l1_if.cpp
+++ b/src/pcu_l1_if.cpp
@@ -120,7 +120,18 @@ void pcu_l1if_tx_agch(bitvec * block, int plen)
prim->id = GsmL1_PrimId_PhDataReq;
prim->u.phDataReq.sapi = GsmL1_Sapi_Agch;
bitvec_pack(block, prim->u.phDataReq.msgUnitParam.u8Buffer);
-#warning Please review, if OpenBTS requires AGCH frame without pseudo length:
+ prim->u.phDataReq.msgUnitParam.u8Size = 22;
+ osmo_wqueue_enqueue(&l1fh->udp_wq, msg);
+}
+
+void pcu_l1if_tx_pch(bitvec * block, int plen, char *imsi)
+{
+ struct msgb *msg = l1p_msgb_alloc();
+ GsmL1_Prim_t *prim = msgb_l1prim(msg);
+
+ prim->id = GsmL1_PrimId_PhDataReq;
+ prim->u.phDataReq.sapi = GsmL1_Sapi_Pch;
+ bitvec_pack(block, prim->u.phDataReq.msgUnitParam.u8Buffer);
prim->u.phDataReq.msgUnitParam.u8Size = 22;
osmo_wqueue_enqueue(&l1fh->udp_wq, msg);
}