aboutsummaryrefslogtreecommitdiffstats
path: root/src/common/l1sap.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/common/l1sap.c')
-rw-r--r--src/common/l1sap.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/common/l1sap.c b/src/common/l1sap.c
index 163e1293..0af73436 100644
--- a/src/common/l1sap.c
+++ b/src/common/l1sap.c
@@ -440,6 +440,12 @@ static int l1sap_info_act_cnf(struct gsm_bts_trx *trx,
else
rsl_tx_chan_act_ack(lchan);
+ /* During PDCH ACT, this is where we know that the PCU is done
+ * activating a PDCH, and PDCH switchover is complete. See
+ * rsl_rx_dyn_pdch() */
+ if (lchan->ts->flags & TS_F_PDCH_ACT_PENDING)
+ dyn_pdch_complete(lchan->ts, info_act_cnf->cause? -EIO : 0);
+
return 0;
}
@@ -457,6 +463,12 @@ static int l1sap_info_rel_cnf(struct gsm_bts_trx *trx,
rsl_tx_rf_rel_ack(lchan);
+ /* During PDCH DEACT, this marks the deactivation of the PDTCH as
+ * requested by the PCU. Next up, we disconnect the TS completely and
+ * call back to dyn_pdch_ts_disconnected(). See rsl_rx_dyn_pdch(). */
+ if (lchan->ts->flags & TS_F_PDCH_DEACT_PENDING)
+ bts_model_ts_disconnect(lchan->ts);
+
return 0;
}