Fix gsm_pchan2chan_nr() to use RSL_CHAN_OSMO_PDCH
When converting from GSM_PCHAN_PDCH, we should generate a RSL channel number IE with the osmocom extension RSL_CHAN_OSMO_PDCH rather than claiming it is a regular TCH/F channel. This is important as this function is used by osmo-bts, too - and it decides which channel number IE is put in the GSMTAP header for both GSMTAP tracing as well as the GSMTAP based osmo-bts-virtual. In order to avoid any unintended effect on libbsc, we make sure to modify rsl_ipacc_pdch_activate() to always use GSM_PCHAN_TCH_F in related RSL message. Change-Id: Ie34219e64a6d89da4a79f2db8ec73d1909fb8280
This commit is contained in:
parent
030e1973dd
commit
ac587f0825
|
@ -2450,7 +2450,7 @@ int rsl_ipacc_pdch_activate(struct gsm_bts_trx_ts *ts, int act)
|
|||
dh = (struct abis_rsl_dchan_hdr *) msgb_put(msg, sizeof(*dh));
|
||||
init_dchan_hdr(dh, msg_type);
|
||||
dh->c.msg_discr = ABIS_RSL_MDISC_DED_CHAN;
|
||||
dh->chan_nr = gsm_pchan2chan_nr(GSM_PCHAN_PDCH, ts->nr, 0);
|
||||
dh->chan_nr = gsm_pchan2chan_nr(GSM_PCHAN_TCH_F, ts->nr, 0);
|
||||
|
||||
DEBUGP(DRSL, "%s IPAC PDCH %sACT\n", gsm_ts_name(ts),
|
||||
act ? "" : "DE");
|
||||
|
|
|
@ -644,11 +644,14 @@ uint8_t gsm_pchan2chan_nr(enum gsm_phys_chan_config pchan,
|
|||
|
||||
switch (pchan) {
|
||||
case GSM_PCHAN_TCH_F:
|
||||
case GSM_PCHAN_PDCH:
|
||||
case GSM_PCHAN_TCH_F_PDCH:
|
||||
OSMO_ASSERT(lchan_nr == 0);
|
||||
cbits = 0x01;
|
||||
break;
|
||||
case GSM_PCHAN_PDCH:
|
||||
OSMO_ASSERT(lchan_nr == 0);
|
||||
cbits = RSL_CHAN_OSMO_PDCH >> 3;
|
||||
break;
|
||||
case GSM_PCHAN_TCH_H:
|
||||
OSMO_ASSERT(lchan_nr < 2);
|
||||
cbits = 0x02;
|
||||
|
|
Loading…
Reference in New Issue