diff options
author | Harald Welte <laforge@gnumonks.org> | 2012-04-19 19:22:53 +0200 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2012-04-19 19:22:53 +0200 |
commit | f19ee660963ba34a2ecad5f6fb5c44e89c9fb820 (patch) | |
tree | a4470d6cdf58caa907a38040d663abd23941ea47 /src/osmo-bts-sysmo/oml.c | |
parent | 4301b09137925dc4f903c98608697491a7a0a600 (diff) |
add a VTY command for activating PDCH channels (in EGPRS mode)
This allows us to do RF measurements (EDGE EVM and the like) even
without having any PCU/RLC/MAC code as of now.
To use it, configure PDCH type timeslots (e.g. TS 7) in the BSC and then
use "trx 0 7 activate 0" to manually activate the PDTCH lchan on top
of that timeslot. The BTS will now happily transmit EDGE/8PSK data.
Diffstat (limited to 'src/osmo-bts-sysmo/oml.c')
-rw-r--r-- | src/osmo-bts-sysmo/oml.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/osmo-bts-sysmo/oml.c b/src/osmo-bts-sysmo/oml.c index e4dcf338..8552887b 100644 --- a/src/osmo-bts-sysmo/oml.c +++ b/src/osmo-bts-sysmo/oml.c @@ -399,6 +399,17 @@ static const struct sapi_dir sdcch_sapis[] = { { GsmL1_Sapi_Sacch, GsmL1_Dir_RxUplink }, }; +static const struct sapi_dir pdtch_sapis[] = { + { GsmL1_Sapi_Pdtch, GsmL1_Dir_TxDownlink }, + { GsmL1_Sapi_Pdtch, GsmL1_Dir_RxUplink }, +#if 0 + { GsmL1_Sapi_Ptcch, GsmL1_Dir_TxDownlink }, + { GsmL1_Sapi_Ptcch, GsmL1_Dir_RxUplink }, + { GsmL1_Sapi_Pacch, GsmL1_Dir_TxDownlink }, + { GsmL1_Sapi_Prach, GsmL1_Dir_RxUplink }, +#endif +}; + struct lchan_sapis { const struct sapi_dir *sapis; unsigned int num_sapis; @@ -421,6 +432,10 @@ static const struct lchan_sapis sapis_for_lchan[_GSM_LCHAN_MAX] = { .sapis = ccch_sapis, .num_sapis = ARRAY_SIZE(ccch_sapis), }, + [GSM_LCHAN_PDTCH] = { + .sapis = pdtch_sapis, + .num_sapis = ARRAY_SIZE(pdtch_sapis), + }, }; static int lchan_act_compl_cb(struct msgb *l1_msg, void *data) @@ -906,7 +921,7 @@ static int lchan_deact_compl_cb(struct msgb *l1_msg, void *data) return 0; } -static int lchan_deactivate(struct gsm_lchan *lchan) +int lchan_deactivate(struct gsm_lchan *lchan) { struct femtol1_hdl *fl1h = trx_femtol1_hdl(lchan->ts->trx); const struct lchan_sapis *s4l = &sapis_for_lchan[lchan->type]; |