[GPRS] introudce PDCH and PDCH/TCH physical channels
GPRS needs PDCH (Packet Data Channels), and we need support in our data model as well as OML and RSL for it
This commit is contained in:
parent
daef521ea5
commit
a1499d00a5
|
@ -18,6 +18,8 @@ enum gsm_phys_chan_config {
|
|||
GSM_PCHAN_TCH_F,
|
||||
GSM_PCHAN_TCH_H,
|
||||
GSM_PCHAN_SDCCH8_SACCH8C,
|
||||
GSM_PCHAN_PDCH, /* GPRS PDCH */
|
||||
GSM_PCHAN_TCH_F_PDCH, /* TCH/F if used, PDCH otherwise */
|
||||
GSM_PCHAN_UNKNOWN,
|
||||
};
|
||||
|
||||
|
|
|
@ -410,6 +410,8 @@ static const enum abis_nm_chan_comb chcomb4pchan[] = {
|
|||
[GSM_PCHAN_TCH_F] = NM_CHANC_TCHFull,
|
||||
[GSM_PCHAN_TCH_H] = NM_CHANC_TCHHalf,
|
||||
[GSM_PCHAN_SDCCH8_SACCH8C] = NM_CHANC_SDCCH,
|
||||
[GSM_PCHAN_PDCH] = NM_CHANC_IPAC_PDCH,
|
||||
[GSM_PCHAN_TCH_F_PDCH] = NM_CHANC_IPAC_TCHFull_PDCH,
|
||||
/* FIXME: bounds check */
|
||||
};
|
||||
|
||||
|
|
|
@ -202,7 +202,9 @@ struct gsm_lchan *lchan_lookup(struct gsm_bts_trx *trx, u_int8_t chan_nr)
|
|||
|
||||
if (cbits == 0x01) {
|
||||
lch_idx = 0; /* TCH/F */
|
||||
if (ts->pchan != GSM_PCHAN_TCH_F)
|
||||
if (ts->pchan != GSM_PCHAN_TCH_F &&
|
||||
ts->pchan != GSM_PCHAN_PDCH &&
|
||||
ts->pchan != GSM_PCHAN_TCH_F_PDCH)
|
||||
fprintf(stderr, "chan_nr=0x%02x but pchan=%u\n",
|
||||
chan_nr, ts->pchan);
|
||||
} else if ((cbits & 0x1e) == 0x02) {
|
||||
|
@ -244,6 +246,8 @@ u_int8_t lchan2chan_nr(struct gsm_lchan *lchan)
|
|||
|
||||
switch (ts->pchan) {
|
||||
case GSM_PCHAN_TCH_F:
|
||||
case GSM_PCHAN_PDCH:
|
||||
case GSM_PCHAN_TCH_F_PDCH:
|
||||
cbits = 0x01;
|
||||
break;
|
||||
case GSM_PCHAN_TCH_H:
|
||||
|
|
|
@ -45,6 +45,8 @@ static const char *pchan_names[] = {
|
|||
[GSM_PCHAN_TCH_F] = "TCH/F",
|
||||
[GSM_PCHAN_TCH_H] = "TCH/H",
|
||||
[GSM_PCHAN_SDCCH8_SACCH8C] = "SDCCH8",
|
||||
[GSM_PCHAN_PDCH] = "PDCH",
|
||||
[GSM_PCHAN_TCH_F_PDCH] = "TCH/F_PDCH",
|
||||
[GSM_PCHAN_UNKNOWN] = "UNKNOWN",
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in New Issue