aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNeels Hofmeyr <neels@hofmeyr.de>2016-07-29 18:12:06 +0200
committerHarald Welte <laforge@gnumonks.org>2016-08-27 01:23:49 +0000
commit76a0ad7fe93fce9bea56be5610b3bffbb8822887 (patch)
tree5ec7ba1e026373d653ddfbb9135cf717b874ce64
parent5486025b182ae595d0ede7d32d0ce0db11748e19 (diff)
move ts_sublots() to gsm_data_shared.c, it will be used by osmo-bts
-rw-r--r--openbsc/include/openbsc/chan_alloc.h2
-rw-r--r--openbsc/include/openbsc/gsm_data_shared.h2
-rw-r--r--openbsc/src/libbsc/chan_alloc.c25
-rw-r--r--openbsc/src/libcommon/gsm_data_shared.c25
4 files changed, 27 insertions, 27 deletions
diff --git a/openbsc/include/openbsc/chan_alloc.h b/openbsc/include/openbsc/chan_alloc.h
index 3e03b97d0..78242e5b7 100644
--- a/openbsc/include/openbsc/chan_alloc.h
+++ b/openbsc/include/openbsc/chan_alloc.h
@@ -51,6 +51,4 @@ void network_chan_load(struct pchan_load *pl, struct gsm_network *net);
int trx_is_usable(struct gsm_bts_trx *trx);
-uint8_t ts_subslots(struct gsm_bts_trx_ts *ts);
-
#endif /* _CHAN_ALLOC_H */
diff --git a/openbsc/include/openbsc/gsm_data_shared.h b/openbsc/include/openbsc/gsm_data_shared.h
index 953bac62e..ce2e9b713 100644
--- a/openbsc/include/openbsc/gsm_data_shared.h
+++ b/openbsc/include/openbsc/gsm_data_shared.h
@@ -853,4 +853,6 @@ static inline uint8_t gsm_ts_tsc(const struct gsm_bts_trx_ts *ts)
struct gsm_lchan *rsl_lchan_lookup(struct gsm_bts_trx *trx, uint8_t chan_nr,
int *rc);
+uint8_t ts_subslots(struct gsm_bts_trx_ts *ts);
+
#endif
diff --git a/openbsc/src/libbsc/chan_alloc.c b/openbsc/src/libbsc/chan_alloc.c
index 92a13586a..7b0c3e67d 100644
--- a/openbsc/src/libbsc/chan_alloc.c
+++ b/openbsc/src/libbsc/chan_alloc.c
@@ -72,31 +72,6 @@ int trx_is_usable(struct gsm_bts_trx *trx)
return 1;
}
-static const uint8_t subslots_per_pchan[] = {
- [GSM_PCHAN_NONE] = 0,
- [GSM_PCHAN_CCCH] = 0,
- [GSM_PCHAN_CCCH_SDCCH4] = 4,
- [GSM_PCHAN_TCH_F] = 1,
- [GSM_PCHAN_TCH_H] = 2,
- [GSM_PCHAN_SDCCH8_SACCH8C] = 8,
- [GSM_PCHAN_TCH_F_PDCH] = 1,
- [GSM_PCHAN_CCCH_SDCCH4_CBCH] = 4,
- [GSM_PCHAN_SDCCH8_SACCH8C_CBCH] = 8,
- /*
- * GSM_PCHAN_TCH_F_TCH_H_PDCH should not be part of this, those TS are
- * handled according to their ts->dyn state.
- */
-};
-
-/*! According to ts->pchan and possibly ts->dyn_pchan, return the number of
- * logical channels available in the timeslot. */
-uint8_t ts_subslots(struct gsm_bts_trx_ts *ts)
-{
- if (ts->pchan == GSM_PCHAN_TCH_F_TCH_H_PDCH)
- return subslots_per_pchan[ts->dyn.pchan_is];
- return subslots_per_pchan[ts->pchan];
-}
-
static struct gsm_lchan *
_lc_find_trx(struct gsm_bts_trx *trx, enum gsm_phys_chan_config pchan,
enum gsm_phys_chan_config dyn_as_pchan)
diff --git a/openbsc/src/libcommon/gsm_data_shared.c b/openbsc/src/libcommon/gsm_data_shared.c
index 2488c3afd..c8c9e0423 100644
--- a/openbsc/src/libcommon/gsm_data_shared.c
+++ b/openbsc/src/libcommon/gsm_data_shared.c
@@ -708,3 +708,28 @@ struct gsm_lchan *rsl_lchan_lookup(struct gsm_bts_trx *trx, uint8_t chan_nr,
return &ts->lchan[lch_idx];
}
+
+static const uint8_t subslots_per_pchan[] = {
+ [GSM_PCHAN_NONE] = 0,
+ [GSM_PCHAN_CCCH] = 0,
+ [GSM_PCHAN_CCCH_SDCCH4] = 4,
+ [GSM_PCHAN_TCH_F] = 1,
+ [GSM_PCHAN_TCH_H] = 2,
+ [GSM_PCHAN_SDCCH8_SACCH8C] = 8,
+ [GSM_PCHAN_TCH_F_PDCH] = 1,
+ [GSM_PCHAN_CCCH_SDCCH4_CBCH] = 4,
+ [GSM_PCHAN_SDCCH8_SACCH8C_CBCH] = 8,
+ /*
+ * GSM_PCHAN_TCH_F_TCH_H_PDCH should not be part of this, those TS are
+ * handled according to their ts->dyn state.
+ */
+};
+
+/*! According to ts->pchan and possibly ts->dyn_pchan, return the number of
+ * logical channels available in the timeslot. */
+uint8_t ts_subslots(struct gsm_bts_trx_ts *ts)
+{
+ if (ts->pchan == GSM_PCHAN_TCH_F_TCH_H_PDCH)
+ return subslots_per_pchan[ts->dyn.pchan_is];
+ return subslots_per_pchan[ts->pchan];
+}