ORAN : add extension type 12

This commit is contained in:
Alvin 2021-08-16 02:14:25 +00:00 committed by Martin Mathieson
parent 4e80643cc0
commit 9d8f38e600
1 changed files with 48 additions and 2 deletions

View File

@ -105,10 +105,10 @@ static int hf_oran_blockScaler = -1;
static int hf_oran_compBitWidth = -1;
static int hf_oran_compShift = -1;
static int hf_oran_repetition = -1;
static int hf_oran_repetition = -1;
static int hf_oran_rbgSize = -1;
static int hf_oran_rbgMask = -1;
static int hf_oran_noncontig_priority = -1;
static int hf_oran_noncontig_priority = -1;
static int hf_oran_symbolMask = -1;
static int hf_oran_rsvd4 = -1;
@ -123,6 +123,9 @@ static int hf_oran_num_bund_prbs = -1;
static int hf_oran_beam_id = -1;
static int hf_oran_num_weights_per_bundle = -1;
static int hf_oran_off_start_prb = -1;
static int hf_oran_num_prb = -1;
/* Computed fields */
static int hf_oran_c_eAxC_ID = -1;
static int hf_oran_refa = -1;
@ -993,6 +996,33 @@ static int dissect_oran_c_section(tvbuff_t *tvb, proto_tree *tree, packet_info *
}
break;
case 12: /* Non-Contiguous PRB Allocation with Frequency Ranges */
{
proto_item *pi;
proto_tree_add_item(extension_tree, hf_oran_noncontig_priority, tvb, offset, 1, ENC_BIG_ENDIAN);
proto_tree_add_item(extension_tree, hf_oran_symbolMask, tvb, offset, 2, ENC_BIG_ENDIAN);
offset += 2;
guint32 extlen_remaining_byte = extlen * 4 - 4;
guint8 prb_index = 0;
for(prb_index = 1; extlen_remaining_byte > 0; prb_index++)
{
guint8 off_start_prb = tvb_get_guint8(tvb, offset);
pi = proto_tree_add_item(extension_tree, hf_oran_off_start_prb, tvb, offset, 1, ENC_BIG_ENDIAN);
proto_item_set_text(pi,"offStartPrb(%u):%u",prb_index,off_start_prb);
offset += 1;
guint8 num_prb = tvb_get_guint8(tvb, offset);
pi = proto_tree_add_item(extension_tree, hf_oran_num_prb, tvb, offset, 1, ENC_BIG_ENDIAN);
proto_item_set_text(pi,"numPrb(%u):%u",prb_index,num_prb);
offset += 1;
extlen_remaining_byte -= 2;
}
break;
}
default:
/* TODO: Support remaining extension types. */
break;
@ -2053,6 +2083,22 @@ proto_register_oran(void)
HFILL}
},
/* Section 5.4.7.12 */
{&hf_oran_off_start_prb,
{"offStartPrb", "oran_fh_cus.offStartPrb",
FT_UINT8, BASE_DEC,
NULL, 0x00,
"Offset of PRB range start.",
HFILL}
},
{&hf_oran_num_prb,
{"numPrb", "oran_fh_cus.numPrb",
FT_UINT8, BASE_DEC,
NULL, 0x00,
"Number of PRBs in PRB range.",
HFILL}
},
/* Section 6.3.3.7 */
{&hf_oran_symbolId,
{"Symbol Identifier", "oran_fh_cus.symbolId",