diff options
author | Holger Hans Peter Freyther <zecke@selfish.org> | 2010-04-09 14:30:52 +0200 |
---|---|---|
committer | Holger Hans Peter Freyther <zecke@selfish.org> | 2010-04-09 14:30:52 +0200 |
commit | f0fbae94ea7e22e18a732eb5907137f8033bdf1d (patch) | |
tree | de318137388e044e51ee37a4867f13002cd832a0 /openbsc/include | |
parent | 8fe4df503c92f1d2e990bce3f37a61610e5664c2 (diff) |
[rsl] Rework the lchan channel release procedure
1.) free every SAPI from 1-7 and wait for the confirmation
and then continue until all of them are freed. If the
SAPI is not torn down we will receive a timeout and then
we force the RF Channel Release...
2.) once SAPI is down we send the RR Release, SACCH Deact
3.) the abis_rsl will see that all SAPIs are down and then
will release channel...
Diffstat (limited to 'openbsc/include')
-rw-r--r-- | openbsc/include/openbsc/abis_rsl.h | 1 | ||||
-rw-r--r-- | openbsc/include/openbsc/gsm_data.h | 3 |
2 files changed, 4 insertions, 0 deletions
diff --git a/openbsc/include/openbsc/abis_rsl.h b/openbsc/include/openbsc/abis_rsl.h index 415db52f6..cba6a9ba2 100644 --- a/openbsc/include/openbsc/abis_rsl.h +++ b/openbsc/include/openbsc/abis_rsl.h @@ -75,6 +75,7 @@ int rsl_lchan_set_state(struct gsm_lchan *lchan, int); /* to be provided by external code */ int abis_rsl_sendmsg(struct msgb *msg); int rsl_deact_sacch(struct gsm_lchan *lchan); +int rsl_lchan_rll_release(struct gsm_lchan *lchan, u_int8_t link_id); /* BCCH related code */ int rsl_ccch_conf_to_bs_cc_chans(int ccch_conf); diff --git a/openbsc/include/openbsc/gsm_data.h b/openbsc/include/openbsc/gsm_data.h index fc4241ada..42b31a62c 100644 --- a/openbsc/include/openbsc/gsm_data.h +++ b/openbsc/include/openbsc/gsm_data.h @@ -281,6 +281,9 @@ struct gsm_lchan { } abis_ip; struct gsm_subscriber_connection conn; + + /* release reason */ + u_int8_t release_reason; }; struct gsm_e1_subslot { |