diff options
author | Vadim Yanitskiy <axilirator@gmail.com> | 2018-03-11 03:19:33 +0700 |
---|---|---|
committer | Vadim Yanitskiy <axilirator@gmail.com> | 2018-03-11 14:59:43 +0700 |
commit | 4cf722364bdafd90d12984531e4ec8c8548d6579 (patch) | |
tree | 1a4dc1d8e714cf7b0149e4b80cf450f659b6c26a /src/host/trxcon | |
parent | c00985bf99cd38cab7f50855866524a4a60d47dd (diff) |
trxcon/scheduler: introduce a new CBTX lchan flag
This new flag is intended to indicate that continuous burst
transmission is assumed on particular logical channel. In other
words, if a logical channel has this flag, but there is nothing
to transmit in a TX buffer, then either a dummy LAPDm frame or
a silence frame shall be sent.
Change-Id: I25fcf9eeb787ffe5378d92532439e67d7d42fa65
Diffstat (limited to 'src/host/trxcon')
-rw-r--r-- | src/host/trxcon/sched_lchan_desc.c | 60 | ||||
-rw-r--r-- | src/host/trxcon/sched_trx.h | 2 |
2 files changed, 32 insertions, 30 deletions
diff --git a/src/host/trxcon/sched_lchan_desc.c b/src/host/trxcon/sched_lchan_desc.c index e0617a54..e94a2083 100644 --- a/src/host/trxcon/sched_lchan_desc.c +++ b/src/host/trxcon/sched_lchan_desc.c @@ -109,181 +109,181 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = { { TRXC_TCHF, "TCH/F", 0x08, LID_DEDIC, - 8 * GSM_BURST_PL_LEN, 0x00, + 8 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_tchf_fn, tx_tchf_fn, }, { TRXC_TCHH_0, "TCH/H(0)", 0x10, LID_DEDIC, - 6 * GSM_BURST_PL_LEN, 0x00, + 6 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_tchh_fn, tx_tchh_fn, }, { TRXC_TCHH_1, "TCH/H(1)", 0x18, LID_DEDIC, - 6 * GSM_BURST_PL_LEN, 0x00, + 6 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_tchh_fn, tx_tchh_fn, }, { TRXC_SDCCH4_0, "SDCCH/4(0)", 0x20, LID_DEDIC, - 4 * GSM_BURST_PL_LEN, 0x00, + 4 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_data_fn, tx_data_fn, }, { TRXC_SDCCH4_1, "SDCCH/4(1)", 0x28, LID_DEDIC, - 4 * GSM_BURST_PL_LEN, 0x00, + 4 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_data_fn, tx_data_fn, }, { TRXC_SDCCH4_2, "SDCCH/4(2)", 0x30, LID_DEDIC, - 4 * GSM_BURST_PL_LEN, 0x00, + 4 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_data_fn, tx_data_fn, }, { TRXC_SDCCH4_3, "SDCCH/4(3)", 0x38, LID_DEDIC, - 4 * GSM_BURST_PL_LEN, 0x00, + 4 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_data_fn, tx_data_fn, }, { TRXC_SDCCH8_0, "SDCCH/8(0)", 0x40, LID_DEDIC, - 4 * GSM_BURST_PL_LEN, 0x00, + 4 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_data_fn, tx_data_fn, }, { TRXC_SDCCH8_1, "SDCCH/8(1)", 0x48, LID_DEDIC, - 4 * GSM_BURST_PL_LEN, 0x00, + 4 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_data_fn, tx_data_fn, }, { TRXC_SDCCH8_2, "SDCCH/8(2)", 0x50, LID_DEDIC, - 4 * GSM_BURST_PL_LEN, 0x00, + 4 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_data_fn, tx_data_fn, }, { TRXC_SDCCH8_3, "SDCCH/8(3)", 0x58, LID_DEDIC, - 4 * GSM_BURST_PL_LEN, 0x00, + 4 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_data_fn, tx_data_fn, }, { TRXC_SDCCH8_4, "SDCCH/8(4)", 0x60, LID_DEDIC, - 4 * GSM_BURST_PL_LEN, 0x00, + 4 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_data_fn, tx_data_fn, }, { TRXC_SDCCH8_5, "SDCCH/8(5)", 0x68, LID_DEDIC, - 4 * GSM_BURST_PL_LEN, 0x00, + 4 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_data_fn, tx_data_fn, }, { TRXC_SDCCH8_6, "SDCCH/8(6)", 0x70, LID_DEDIC, - 4 * GSM_BURST_PL_LEN, 0x00, + 4 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_data_fn, tx_data_fn, }, { TRXC_SDCCH8_7, "SDCCH/8(7)", 0x78, LID_DEDIC, - 4 * GSM_BURST_PL_LEN, 0x00, + 4 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_data_fn, tx_data_fn, }, { TRXC_SACCHTF, "SACCH/TF", 0x08, LID_SACCH, - 4 * GSM_BURST_PL_LEN, 0x00, + 4 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_data_fn, tx_data_fn, }, { TRXC_SACCHTH_0, "SACCH/TH(0)", 0x10, LID_SACCH, - 4 * GSM_BURST_PL_LEN, 0x00, + 4 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_data_fn, tx_data_fn, }, { TRXC_SACCHTH_1, "SACCH/TH(1)", 0x18, LID_SACCH, - 4 * GSM_BURST_PL_LEN, 0x00, + 4 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_data_fn, tx_data_fn, }, { TRXC_SACCH4_0, "SACCH/4(0)", 0x20, LID_SACCH, - 4 * GSM_BURST_PL_LEN, 0x00, + 4 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_data_fn, tx_data_fn, }, { TRXC_SACCH4_1, "SACCH/4(1)", 0x28, LID_SACCH, - 4 * GSM_BURST_PL_LEN, 0x00, + 4 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_data_fn, tx_data_fn, }, { TRXC_SACCH4_2, "SACCH/4(2)", 0x30, LID_SACCH, - 4 * GSM_BURST_PL_LEN, 0x00, + 4 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_data_fn, tx_data_fn, }, { TRXC_SACCH4_3, "SACCH/4(3)", 0x38, LID_SACCH, - 4 * GSM_BURST_PL_LEN, 0x00, + 4 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_data_fn, tx_data_fn, }, { TRXC_SACCH8_0, "SACCH/8(0)", 0x40, LID_SACCH, - 4 * GSM_BURST_PL_LEN, 0x00, + 4 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_data_fn, tx_data_fn, }, { TRXC_SACCH8_1, "SACCH/8(1)", 0x48, LID_SACCH, - 4 * GSM_BURST_PL_LEN, 0x00, + 4 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_data_fn, tx_data_fn, }, { TRXC_SACCH8_2, "SACCH/8(2)", 0x50, LID_SACCH, - 4 * GSM_BURST_PL_LEN, 0x00, + 4 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_data_fn, tx_data_fn, }, { TRXC_SACCH8_3, "SACCH/8(3)", 0x58, LID_SACCH, - 4 * GSM_BURST_PL_LEN, 0x00, + 4 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_data_fn, tx_data_fn, }, { TRXC_SACCH8_4, "SACCH/8(4)", 0x60, LID_SACCH, - 4 * GSM_BURST_PL_LEN, 0x00, + 4 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_data_fn, tx_data_fn, }, { TRXC_SACCH8_5, "SACCH/8(5)", 0x68, LID_SACCH, - 4 * GSM_BURST_PL_LEN, 0x00, + 4 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_data_fn, tx_data_fn, }, { TRXC_SACCH8_6, "SACCH/8(6)", 0x70, LID_SACCH, - 4 * GSM_BURST_PL_LEN, 0x00, + 4 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_data_fn, tx_data_fn, }, { TRXC_SACCH8_7, "SACCH/8(7)", 0x78, LID_SACCH, - 4 * GSM_BURST_PL_LEN, 0x00, + 4 * GSM_BURST_PL_LEN, TRX_CH_FLAG_CBTX, rx_data_fn, tx_data_fn, }, { diff --git a/src/host/trxcon/sched_trx.h b/src/host/trxcon/sched_trx.h index 78f458df..6a025436 100644 --- a/src/host/trxcon/sched_trx.h +++ b/src/host/trxcon/sched_trx.h @@ -21,6 +21,8 @@ #define TRX_CH_FLAG_PDCH (1 << 0) /* Should a channel be activated automatically */ #define TRX_CH_FLAG_AUTO (1 << 1) +/* Is continuous burst transmission assumed */ +#define TRX_CH_FLAG_CBTX (1 << 2) #define MAX_A5_KEY_LEN (128 / 8) #define TRX_TS_COUNT 8 |