|
|
@ -24,6 +24,8 @@
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
#include <osmocom/gsm/protocol/gsm_08_58.h>
|
|
|
|
#include <osmocom/gsm/protocol/gsm_08_58.h>
|
|
|
|
|
|
|
|
#include <osmocom/core/gsmtap.h>
|
|
|
|
|
|
|
|
|
|
|
|
#include "sched_trx.h"
|
|
|
|
#include "sched_trx.h"
|
|
|
|
|
|
|
|
|
|
|
|
/* Forward declaration of handlers */
|
|
|
|
/* Forward declaration of handlers */
|
|
|
@ -86,6 +88,7 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_BCCH] = {
|
|
|
|
[TRXC_BCCH] = {
|
|
|
|
.name = "BCCH", /* 3GPP TS 05.02, section 3.3.2.3 */
|
|
|
|
.name = "BCCH", /* 3GPP TS 05.02, section 3.3.2.3 */
|
|
|
|
.desc = "Broadcast control channel",
|
|
|
|
.desc = "Broadcast control channel",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_BCCH,
|
|
|
|
.chan_nr = RSL_CHAN_BCCH,
|
|
|
|
.chan_nr = RSL_CHAN_BCCH,
|
|
|
|
|
|
|
|
|
|
|
|
/* Rx only, xCCH convolutional coding (3GPP TS 05.03, section 4.4),
|
|
|
|
/* Rx only, xCCH convolutional coding (3GPP TS 05.03, section 4.4),
|
|
|
@ -98,6 +101,7 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_RACH] = {
|
|
|
|
[TRXC_RACH] = {
|
|
|
|
.name = "RACH", /* 3GPP TS 05.02, section 3.3.3.1 */
|
|
|
|
.name = "RACH", /* 3GPP TS 05.02, section 3.3.3.1 */
|
|
|
|
.desc = "Random access channel",
|
|
|
|
.desc = "Random access channel",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_RACH,
|
|
|
|
.chan_nr = RSL_CHAN_RACH,
|
|
|
|
.chan_nr = RSL_CHAN_RACH,
|
|
|
|
|
|
|
|
|
|
|
|
/* Tx only, RACH convolutional coding (3GPP TS 05.03, section 4.6). */
|
|
|
|
/* Tx only, RACH convolutional coding (3GPP TS 05.03, section 4.6). */
|
|
|
@ -107,6 +111,7 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_CCCH] = {
|
|
|
|
[TRXC_CCCH] = {
|
|
|
|
.name = "CCCH", /* 3GPP TS 05.02, section 3.3.3.1 */
|
|
|
|
.name = "CCCH", /* 3GPP TS 05.02, section 3.3.3.1 */
|
|
|
|
.desc = "Common control channel",
|
|
|
|
.desc = "Common control channel",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_CCCH,
|
|
|
|
.chan_nr = RSL_CHAN_PCH_AGCH,
|
|
|
|
.chan_nr = RSL_CHAN_PCH_AGCH,
|
|
|
|
|
|
|
|
|
|
|
|
/* Rx only, xCCH convolutional coding (3GPP TS 05.03, section 4.4),
|
|
|
|
/* Rx only, xCCH convolutional coding (3GPP TS 05.03, section 4.4),
|
|
|
@ -119,6 +124,7 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_TCHF] = {
|
|
|
|
[TRXC_TCHF] = {
|
|
|
|
.name = "TCH/F", /* 3GPP TS 05.02, section 3.2 */
|
|
|
|
.name = "TCH/F", /* 3GPP TS 05.02, section 3.2 */
|
|
|
|
.desc = "Full Rate traffic channel",
|
|
|
|
.desc = "Full Rate traffic channel",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_TCH_F,
|
|
|
|
.chan_nr = RSL_CHAN_Bm_ACCHs,
|
|
|
|
.chan_nr = RSL_CHAN_Bm_ACCHs,
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
|
|
|
|
|
|
|
@ -141,8 +147,10 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_TCHH_0] = {
|
|
|
|
[TRXC_TCHH_0] = {
|
|
|
|
.name = "TCH/H(0)", /* 3GPP TS 05.02, section 3.2 */
|
|
|
|
.name = "TCH/H(0)", /* 3GPP TS 05.02, section 3.2 */
|
|
|
|
.desc = "Half Rate traffic channel (sub-channel 0)",
|
|
|
|
.desc = "Half Rate traffic channel (sub-channel 0)",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_TCH_H,
|
|
|
|
.chan_nr = RSL_CHAN_Lm_ACCHs + (0 << 3),
|
|
|
|
.chan_nr = RSL_CHAN_Lm_ACCHs + (0 << 3),
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
|
|
|
|
.ss_nr = 0,
|
|
|
|
|
|
|
|
|
|
|
|
/* Rx and Tx, multiple convolutional coding types (3GPP TS 05.03,
|
|
|
|
/* Rx and Tx, multiple convolutional coding types (3GPP TS 05.03,
|
|
|
|
* chapter 3), block diagonal interleaving (3GPP TS 05.02, clause 7):
|
|
|
|
* chapter 3), block diagonal interleaving (3GPP TS 05.02, clause 7):
|
|
|
@ -165,8 +173,10 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_TCHH_1] = {
|
|
|
|
[TRXC_TCHH_1] = {
|
|
|
|
.name = "TCH/H(1)", /* 3GPP TS 05.02, section 3.2 */
|
|
|
|
.name = "TCH/H(1)", /* 3GPP TS 05.02, section 3.2 */
|
|
|
|
.desc = "Half Rate traffic channel (sub-channel 1)",
|
|
|
|
.desc = "Half Rate traffic channel (sub-channel 1)",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_TCH_H,
|
|
|
|
.chan_nr = RSL_CHAN_Lm_ACCHs + (1 << 3),
|
|
|
|
.chan_nr = RSL_CHAN_Lm_ACCHs + (1 << 3),
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
|
|
|
|
.ss_nr = 1,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_TCHH_0, see above. */
|
|
|
|
/* Same as for TRXC_TCHH_0, see above. */
|
|
|
|
.burst_buf_size = 6 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 6 * GSM_BURST_PL_LEN,
|
|
|
@ -177,8 +187,10 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SDCCH4_0] = {
|
|
|
|
[TRXC_SDCCH4_0] = {
|
|
|
|
.name = "SDCCH/4(0)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.name = "SDCCH/4(0)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.desc = "Stand-alone dedicated control channel (sub-channel 0)",
|
|
|
|
.desc = "Stand-alone dedicated control channel (sub-channel 0)",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_SDCCH4,
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH4_ACCH + (0 << 3),
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH4_ACCH + (0 << 3),
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
|
|
|
|
.ss_nr = 0,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_BCCH (xCCH), see above. */
|
|
|
|
/* Same as for TRXC_BCCH (xCCH), see above. */
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
@ -189,8 +201,10 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SDCCH4_1] = {
|
|
|
|
[TRXC_SDCCH4_1] = {
|
|
|
|
.name = "SDCCH/4(1)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.name = "SDCCH/4(1)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.desc = "Stand-alone dedicated control channel (sub-channel 1)",
|
|
|
|
.desc = "Stand-alone dedicated control channel (sub-channel 1)",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_SDCCH4,
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH4_ACCH + (1 << 3),
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH4_ACCH + (1 << 3),
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
|
|
|
|
.ss_nr = 1,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_BCCH (xCCH), see above. */
|
|
|
|
/* Same as for TRXC_BCCH (xCCH), see above. */
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
@ -201,8 +215,10 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SDCCH4_2] = {
|
|
|
|
[TRXC_SDCCH4_2] = {
|
|
|
|
.name = "SDCCH/4(2)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.name = "SDCCH/4(2)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.desc = "Stand-alone dedicated control channel (sub-channel 2)",
|
|
|
|
.desc = "Stand-alone dedicated control channel (sub-channel 2)",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_SDCCH4,
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH4_ACCH + (2 << 3),
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH4_ACCH + (2 << 3),
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
|
|
|
|
.ss_nr = 2,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_BCCH (xCCH), see above. */
|
|
|
|
/* Same as for TRXC_BCCH (xCCH), see above. */
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
@ -213,8 +229,10 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SDCCH4_3] = {
|
|
|
|
[TRXC_SDCCH4_3] = {
|
|
|
|
.name = "SDCCH/4(3)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.name = "SDCCH/4(3)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.desc = "Stand-alone dedicated control channel (sub-channel 3)",
|
|
|
|
.desc = "Stand-alone dedicated control channel (sub-channel 3)",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_SDCCH4,
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH4_ACCH + (3 << 3),
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH4_ACCH + (3 << 3),
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
|
|
|
|
.ss_nr = 3,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_BCCH (xCCH), see above. */
|
|
|
|
/* Same as for TRXC_BCCH (xCCH), see above. */
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
@ -225,8 +243,10 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SDCCH8_0] = {
|
|
|
|
[TRXC_SDCCH8_0] = {
|
|
|
|
.name = "SDCCH/8(0)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.name = "SDCCH/8(0)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.desc = "Stand-alone dedicated control channel (sub-channel 0)",
|
|
|
|
.desc = "Stand-alone dedicated control channel (sub-channel 0)",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_SDCCH8,
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (0 << 3),
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (0 << 3),
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
|
|
|
|
.ss_nr = 0,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH4_* (xCCH), see above. */
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH4_* (xCCH), see above. */
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
@ -237,8 +257,10 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SDCCH8_1] = {
|
|
|
|
[TRXC_SDCCH8_1] = {
|
|
|
|
.name = "SDCCH/8(1)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.name = "SDCCH/8(1)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.desc = "Stand-alone dedicated control channel (sub-channel 1)",
|
|
|
|
.desc = "Stand-alone dedicated control channel (sub-channel 1)",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_SDCCH8,
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (1 << 3),
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (1 << 3),
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
|
|
|
|
.ss_nr = 1,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH4_* (xCCH), see above. */
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH4_* (xCCH), see above. */
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
@ -249,8 +271,10 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SDCCH8_2] = {
|
|
|
|
[TRXC_SDCCH8_2] = {
|
|
|
|
.name = "SDCCH/8(2)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.name = "SDCCH/8(2)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.desc = "Stand-alone dedicated control channel (sub-channel 2)",
|
|
|
|
.desc = "Stand-alone dedicated control channel (sub-channel 2)",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_SDCCH8,
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (2 << 3),
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (2 << 3),
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
|
|
|
|
.ss_nr = 2,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH4_* (xCCH), see above. */
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH4_* (xCCH), see above. */
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
@ -261,8 +285,10 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SDCCH8_3] = {
|
|
|
|
[TRXC_SDCCH8_3] = {
|
|
|
|
.name = "SDCCH/8(3)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.name = "SDCCH/8(3)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.desc = "Stand-alone dedicated control channel (sub-channel 3)",
|
|
|
|
.desc = "Stand-alone dedicated control channel (sub-channel 3)",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_SDCCH8,
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (3 << 3),
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (3 << 3),
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
|
|
|
|
.ss_nr = 3,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH4_* (xCCH), see above. */
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH4_* (xCCH), see above. */
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
@ -273,8 +299,10 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SDCCH8_4] = {
|
|
|
|
[TRXC_SDCCH8_4] = {
|
|
|
|
.name = "SDCCH/8(4)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.name = "SDCCH/8(4)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.desc = "Stand-alone dedicated control channel (sub-channel 4)",
|
|
|
|
.desc = "Stand-alone dedicated control channel (sub-channel 4)",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_SDCCH8,
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (4 << 3),
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (4 << 3),
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
|
|
|
|
.ss_nr = 4,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH4_* (xCCH), see above. */
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH4_* (xCCH), see above. */
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
@ -285,8 +313,10 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SDCCH8_5] = {
|
|
|
|
[TRXC_SDCCH8_5] = {
|
|
|
|
.name = "SDCCH/8(5)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.name = "SDCCH/8(5)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.desc = "Stand-alone dedicated control channel (sub-channel 5)",
|
|
|
|
.desc = "Stand-alone dedicated control channel (sub-channel 5)",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_SDCCH8,
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (5 << 3),
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (5 << 3),
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
|
|
|
|
.ss_nr = 5,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH4_* (xCCH), see above. */
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH4_* (xCCH), see above. */
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
@ -297,8 +327,10 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SDCCH8_6] = {
|
|
|
|
[TRXC_SDCCH8_6] = {
|
|
|
|
.name = "SDCCH/8(6)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.name = "SDCCH/8(6)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.desc = "Stand-alone dedicated control channel (sub-channel 6)",
|
|
|
|
.desc = "Stand-alone dedicated control channel (sub-channel 6)",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_SDCCH8,
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (6 << 3),
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (6 << 3),
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
|
|
|
|
.ss_nr = 6,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH4_* (xCCH), see above. */
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH4_* (xCCH), see above. */
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
@ -309,8 +341,10 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SDCCH8_7] = {
|
|
|
|
[TRXC_SDCCH8_7] = {
|
|
|
|
.name = "SDCCH/8(7)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.name = "SDCCH/8(7)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.desc = "Stand-alone dedicated control channel (sub-channel 7)",
|
|
|
|
.desc = "Stand-alone dedicated control channel (sub-channel 7)",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_SDCCH8,
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (7 << 3),
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (7 << 3),
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
.link_id = TRX_CH_LID_DEDIC,
|
|
|
|
|
|
|
|
.ss_nr = 7,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH4_* (xCCH), see above. */
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH4_* (xCCH), see above. */
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
@ -321,6 +355,7 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SACCHTF] = {
|
|
|
|
[TRXC_SACCHTF] = {
|
|
|
|
.name = "SACCH/TF", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.name = "SACCH/TF", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.desc = "Slow TCH/F associated control channel",
|
|
|
|
.desc = "Slow TCH/F associated control channel",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_TCH_F | GSMTAP_CHANNEL_ACCH,
|
|
|
|
.chan_nr = RSL_CHAN_Bm_ACCHs,
|
|
|
|
.chan_nr = RSL_CHAN_Bm_ACCHs,
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
|
|
|
|
|
|
|
@ -333,8 +368,10 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SACCHTH_0] = {
|
|
|
|
[TRXC_SACCHTH_0] = {
|
|
|
|
.name = "SACCH/TH(0)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.name = "SACCH/TH(0)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.desc = "Slow TCH/H associated control channel (sub-channel 0)",
|
|
|
|
.desc = "Slow TCH/H associated control channel (sub-channel 0)",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_TCH_H | GSMTAP_CHANNEL_ACCH,
|
|
|
|
.chan_nr = RSL_CHAN_Lm_ACCHs + (0 << 3),
|
|
|
|
.chan_nr = RSL_CHAN_Lm_ACCHs + (0 << 3),
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
|
|
|
|
.ss_nr = 0,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_BCCH (xCCH), see above. */
|
|
|
|
/* Same as for TRXC_BCCH (xCCH), see above. */
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
@ -345,8 +382,10 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SACCHTH_1] = {
|
|
|
|
[TRXC_SACCHTH_1] = {
|
|
|
|
.name = "SACCH/TH(1)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.name = "SACCH/TH(1)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.desc = "Slow TCH/H associated control channel (sub-channel 1)",
|
|
|
|
.desc = "Slow TCH/H associated control channel (sub-channel 1)",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_TCH_H | GSMTAP_CHANNEL_ACCH,
|
|
|
|
.chan_nr = RSL_CHAN_Lm_ACCHs + (1 << 3),
|
|
|
|
.chan_nr = RSL_CHAN_Lm_ACCHs + (1 << 3),
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
|
|
|
|
.ss_nr = 1,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_BCCH (xCCH), see above. */
|
|
|
|
/* Same as for TRXC_BCCH (xCCH), see above. */
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
@ -357,8 +396,10 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SACCH4_0] = {
|
|
|
|
[TRXC_SACCH4_0] = {
|
|
|
|
.name = "SACCH/4(0)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.name = "SACCH/4(0)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.desc = "Slow SDCCH/4 associated control channel (sub-channel 0)",
|
|
|
|
.desc = "Slow SDCCH/4 associated control channel (sub-channel 0)",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_SDCCH4 | GSMTAP_CHANNEL_ACCH,
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH4_ACCH + (0 << 3),
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH4_ACCH + (0 << 3),
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
|
|
|
|
.ss_nr = 0,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH4_* (xCCH), see above. */
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH4_* (xCCH), see above. */
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
@ -369,8 +410,10 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SACCH4_1] = {
|
|
|
|
[TRXC_SACCH4_1] = {
|
|
|
|
.name = "SACCH/4(1)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.name = "SACCH/4(1)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.desc = "Slow SDCCH/4 associated control channel (sub-channel 1)",
|
|
|
|
.desc = "Slow SDCCH/4 associated control channel (sub-channel 1)",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_SDCCH4 | GSMTAP_CHANNEL_ACCH,
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH4_ACCH + (1 << 3),
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH4_ACCH + (1 << 3),
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
|
|
|
|
.ss_nr = 1,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH4_* (xCCH), see above. */
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH4_* (xCCH), see above. */
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
@ -381,8 +424,10 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SACCH4_2] = {
|
|
|
|
[TRXC_SACCH4_2] = {
|
|
|
|
.name = "SACCH/4(2)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.name = "SACCH/4(2)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.desc = "Slow SDCCH/4 associated control channel (sub-channel 2)",
|
|
|
|
.desc = "Slow SDCCH/4 associated control channel (sub-channel 2)",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_SDCCH4 | GSMTAP_CHANNEL_ACCH,
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH4_ACCH + (2 << 3),
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH4_ACCH + (2 << 3),
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
|
|
|
|
.ss_nr = 2,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH4_* (xCCH), see above. */
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH4_* (xCCH), see above. */
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
@ -393,8 +438,10 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SACCH4_3] = {
|
|
|
|
[TRXC_SACCH4_3] = {
|
|
|
|
.name = "SACCH/4(3)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.name = "SACCH/4(3)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.desc = "Slow SDCCH/4 associated control channel (sub-channel 3)",
|
|
|
|
.desc = "Slow SDCCH/4 associated control channel (sub-channel 3)",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_SDCCH4 | GSMTAP_CHANNEL_ACCH,
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH4_ACCH + (3 << 3),
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH4_ACCH + (3 << 3),
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
|
|
|
|
.ss_nr = 3,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH4_* (xCCH), see above. */
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH4_* (xCCH), see above. */
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
@ -405,8 +452,10 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SACCH8_0] = {
|
|
|
|
[TRXC_SACCH8_0] = {
|
|
|
|
.name = "SACCH/8(0)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.name = "SACCH/8(0)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.desc = "Slow SDCCH/8 associated control channel (sub-channel 0)",
|
|
|
|
.desc = "Slow SDCCH/8 associated control channel (sub-channel 0)",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_SDCCH8 | GSMTAP_CHANNEL_ACCH,
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (0 << 3),
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (0 << 3),
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
|
|
|
|
.ss_nr = 0,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH8_* (xCCH), see above. */
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH8_* (xCCH), see above. */
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
@ -417,8 +466,10 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SACCH8_1] = {
|
|
|
|
[TRXC_SACCH8_1] = {
|
|
|
|
.name = "SACCH/8(1)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.name = "SACCH/8(1)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.desc = "Slow SDCCH/8 associated control channel (sub-channel 1)",
|
|
|
|
.desc = "Slow SDCCH/8 associated control channel (sub-channel 1)",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_SDCCH8 | GSMTAP_CHANNEL_ACCH,
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (1 << 3),
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (1 << 3),
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
|
|
|
|
.ss_nr = 1,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH8_* (xCCH), see above. */
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH8_* (xCCH), see above. */
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
@ -429,8 +480,10 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SACCH8_2] = {
|
|
|
|
[TRXC_SACCH8_2] = {
|
|
|
|
.name = "SACCH/8(2)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.name = "SACCH/8(2)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.desc = "Slow SDCCH/8 associated control channel (sub-channel 2)",
|
|
|
|
.desc = "Slow SDCCH/8 associated control channel (sub-channel 2)",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_SDCCH8 | GSMTAP_CHANNEL_ACCH,
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (2 << 3),
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (2 << 3),
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
|
|
|
|
.ss_nr = 2,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH8_* (xCCH), see above. */
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH8_* (xCCH), see above. */
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
@ -441,8 +494,10 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SACCH8_3] = {
|
|
|
|
[TRXC_SACCH8_3] = {
|
|
|
|
.name = "SACCH/8(3)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.name = "SACCH/8(3)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.desc = "Slow SDCCH/8 associated control channel (sub-channel 3)",
|
|
|
|
.desc = "Slow SDCCH/8 associated control channel (sub-channel 3)",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_SDCCH8 | GSMTAP_CHANNEL_ACCH,
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (3 << 3),
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (3 << 3),
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
|
|
|
|
.ss_nr = 3,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH8_* (xCCH), see above. */
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH8_* (xCCH), see above. */
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
@ -453,8 +508,10 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SACCH8_4] = {
|
|
|
|
[TRXC_SACCH8_4] = {
|
|
|
|
.name = "SACCH/8(4)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.name = "SACCH/8(4)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.desc = "Slow SDCCH/8 associated control channel (sub-channel 4)",
|
|
|
|
.desc = "Slow SDCCH/8 associated control channel (sub-channel 4)",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_SDCCH8 | GSMTAP_CHANNEL_ACCH,
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (4 << 3),
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (4 << 3),
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
|
|
|
|
.ss_nr = 4,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH8_* (xCCH), see above. */
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH8_* (xCCH), see above. */
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
@ -465,8 +522,10 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SACCH8_5] = {
|
|
|
|
[TRXC_SACCH8_5] = {
|
|
|
|
.name = "SACCH/8(5)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.name = "SACCH/8(5)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.desc = "Slow SDCCH/8 associated control channel (sub-channel 5)",
|
|
|
|
.desc = "Slow SDCCH/8 associated control channel (sub-channel 5)",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_SDCCH8 | GSMTAP_CHANNEL_ACCH,
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (5 << 3),
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (5 << 3),
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
|
|
|
|
.ss_nr = 5,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH8_* (xCCH), see above. */
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH8_* (xCCH), see above. */
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
@ -477,8 +536,10 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SACCH8_6] = {
|
|
|
|
[TRXC_SACCH8_6] = {
|
|
|
|
.name = "SACCH/8(6)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.name = "SACCH/8(6)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.desc = "Slow SDCCH/8 associated control channel (sub-channel 6)",
|
|
|
|
.desc = "Slow SDCCH/8 associated control channel (sub-channel 6)",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_SDCCH8 | GSMTAP_CHANNEL_ACCH,
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (6 << 3),
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (6 << 3),
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
|
|
|
|
.ss_nr = 6,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH8_* (xCCH), see above. */
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH8_* (xCCH), see above. */
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
@ -489,8 +550,10 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SACCH8_7] = {
|
|
|
|
[TRXC_SACCH8_7] = {
|
|
|
|
.name = "SACCH/8(7)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.name = "SACCH/8(7)", /* 3GPP TS 05.02, section 3.3.4.1 */
|
|
|
|
.desc = "Slow SDCCH/8 associated control channel (sub-channel 7)",
|
|
|
|
.desc = "Slow SDCCH/8 associated control channel (sub-channel 7)",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_SDCCH8 | GSMTAP_CHANNEL_ACCH,
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (7 << 3),
|
|
|
|
.chan_nr = RSL_CHAN_SDCCH8_ACCH + (7 << 3),
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
.link_id = TRX_CH_LID_SACCH,
|
|
|
|
|
|
|
|
.ss_nr = 7,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH8_* (xCCH), see above. */
|
|
|
|
/* Same as for TRXC_BCCH and TRXC_SDCCH8_* (xCCH), see above. */
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
@ -501,6 +564,7 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_PDTCH] = {
|
|
|
|
[TRXC_PDTCH] = {
|
|
|
|
.name = "PDTCH", /* 3GPP TS 05.02, sections 3.2.4, 3.3.2.4 */
|
|
|
|
.name = "PDTCH", /* 3GPP TS 05.02, sections 3.2.4, 3.3.2.4 */
|
|
|
|
.desc = "Packet data traffic & control channel",
|
|
|
|
.desc = "Packet data traffic & control channel",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_PDTCH,
|
|
|
|
.chan_nr = RSL_CHAN_OSMO_PDCH,
|
|
|
|
.chan_nr = RSL_CHAN_OSMO_PDCH,
|
|
|
|
|
|
|
|
|
|
|
|
/* Rx and Tx, multiple coding schemes: CS-1..4 and MCS-1..9 (3GPP TS
|
|
|
|
/* Rx and Tx, multiple coding schemes: CS-1..4 and MCS-1..9 (3GPP TS
|
|
|
@ -515,6 +579,7 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_PTCCH] = {
|
|
|
|
[TRXC_PTCCH] = {
|
|
|
|
.name = "PTCCH", /* 3GPP TS 05.02, section 3.3.4.2 */
|
|
|
|
.name = "PTCCH", /* 3GPP TS 05.02, section 3.3.4.2 */
|
|
|
|
.desc = "Packet Timing advance control channel",
|
|
|
|
.desc = "Packet Timing advance control channel",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_PTCCH,
|
|
|
|
.chan_nr = RSL_CHAN_OSMO_PDCH,
|
|
|
|
.chan_nr = RSL_CHAN_OSMO_PDCH,
|
|
|
|
.link_id = TRX_CH_LID_PTCCH,
|
|
|
|
.link_id = TRX_CH_LID_PTCCH,
|
|
|
|
|
|
|
|
|
|
|
@ -531,7 +596,9 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SDCCH4_CBCH] = {
|
|
|
|
[TRXC_SDCCH4_CBCH] = {
|
|
|
|
.name = "SDCCH/4(CBCH)", /* 3GPP TS 05.02, section 3.3.5 */
|
|
|
|
.name = "SDCCH/4(CBCH)", /* 3GPP TS 05.02, section 3.3.5 */
|
|
|
|
.desc = "Cell Broadcast channel on SDCCH/4",
|
|
|
|
.desc = "Cell Broadcast channel on SDCCH/4",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_CBCH51,
|
|
|
|
.chan_nr = RSL_CHAN_OSMO_CBCH4,
|
|
|
|
.chan_nr = RSL_CHAN_OSMO_CBCH4,
|
|
|
|
|
|
|
|
.ss_nr = 2,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_BCCH (xCCH), but Rx only. See above. */
|
|
|
|
/* Same as for TRXC_BCCH (xCCH), but Rx only. See above. */
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
@ -541,7 +608,9 @@ const struct trx_lchan_desc trx_lchan_desc[_TRX_CHAN_MAX] = {
|
|
|
|
[TRXC_SDCCH8_CBCH] = {
|
|
|
|
[TRXC_SDCCH8_CBCH] = {
|
|
|
|
.name = "SDCCH/8(CBCH)", /* 3GPP TS 05.02, section 3.3.5 */
|
|
|
|
.name = "SDCCH/8(CBCH)", /* 3GPP TS 05.02, section 3.3.5 */
|
|
|
|
.desc = "Cell Broadcast channel on SDCCH/8",
|
|
|
|
.desc = "Cell Broadcast channel on SDCCH/8",
|
|
|
|
|
|
|
|
.gsmtap_chan_type = GSMTAP_CHANNEL_CBCH52,
|
|
|
|
.chan_nr = RSL_CHAN_OSMO_CBCH8,
|
|
|
|
.chan_nr = RSL_CHAN_OSMO_CBCH8,
|
|
|
|
|
|
|
|
.ss_nr = 2,
|
|
|
|
|
|
|
|
|
|
|
|
/* Same as for TRXC_BCCH (xCCH), but Rx only. See above. */
|
|
|
|
/* Same as for TRXC_BCCH (xCCH), but Rx only. See above. */
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|
.burst_buf_size = 4 * GSM_BURST_PL_LEN,
|
|
|
|