diff options
author | Martin Mathieson <martin.r.mathieson@googlemail.com> | 2013-08-30 04:08:57 +0000 |
---|---|---|
committer | Martin Mathieson <martin.r.mathieson@googlemail.com> | 2013-08-30 04:08:57 +0000 |
commit | a09ee6af031b399848a0322054519489f6d963f6 (patch) | |
tree | b8700ebd6c5024a4504ff6c1aa30a6249b9af0c7 /asn1/lte-rrc | |
parent | d9eb37b849a70a8bc8ad0c61b3fa8f2c3d689f7c (diff) | |
download | wireshark-a09ee6af031b399848a0322054519489f6d963f6.tar.gz |
The first step towards tracking and showing DRX info in MAC:
- send release from RRC
- show current DRX config from each frame, including a link back to the
RRC config frame
- show simple DRX state for each frame (currently only offset into long
cycle and whether within long cycle 'on' period)
TODO:
- simulate timers in response to new UL/DL transmissions or DL CRC
errors
- maintain whether in long or short cycle
- show state of all timers
svn path=/trunk/; revision=51585
Diffstat (limited to 'asn1/lte-rrc')
-rw-r--r-- | asn1/lte-rrc/lte-rrc.cnf | 23 | ||||
-rw-r--r-- | asn1/lte-rrc/packet-lte-rrc-template.c | 16 |
2 files changed, 22 insertions, 17 deletions
diff --git a/asn1/lte-rrc/lte-rrc.cnf b/asn1/lte-rrc/lte-rrc.cnf index 4363dc8366..7c0b0a7d40 100644 --- a/asn1/lte-rrc/lte-rrc.cnf +++ b/asn1/lte-rrc/lte-rrc.cnf @@ -747,9 +747,20 @@ CQI-ReportConfigSCell-r10/nomPDSCH-RS-EPRE-Offset-r10 STRINGS=VALS(lte_rrc_nomPD fields overwritten in the R11 extension */ drx_config_t *drx_config = private_data_get_drx_config(actx); %(DEFAULT_BODY)s - /* Verify that config is valid */ if (drx_config->configured) { + mac_lte_info* p_mac_lte_info; + + /* Verify that config is valid */ drx_check_config_sane(drx_config, actx); + + /* Look for UE identifier */ + p_mac_lte_info = (mac_lte_info *)p_get_proto_data(actx->pinfo->fd, proto_mac_lte, 0); + if (p_mac_lte_info != NULL) { + /* If found, configure MAC with DRX config */ + set_mac_lte_drx_config(p_mac_lte_info->ueid, drx_config, actx->pinfo); + } + + /* Clear out state */ drx_config->configured = FALSE; } @@ -1478,3 +1489,13 @@ SoundingRS-UL-ConfigDedicated/setup/duration STRINGS=TFS(<e_rrc_duration_val) /* Presumably config->shortCycleConfigured will be set... */ config->shortCycle = 4; +#.FN_BODY DRX-Config/release + mac_lte_info* p_mac_lte_info; +%(DEFAULT_BODY)s + /* Look for UE identifier */ + p_mac_lte_info = (mac_lte_info *)p_get_proto_data(actx->pinfo->fd, proto_mac_lte, 0); + if (p_mac_lte_info != NULL) { + /* If found, tell MAC to release DRX config */ + set_mac_lte_drx_config_release(p_mac_lte_info->ueid, actx->pinfo); + } + diff --git a/asn1/lte-rrc/packet-lte-rrc-template.c b/asn1/lte-rrc/packet-lte-rrc-template.c index 10c6136002..38110e9ed7 100644 --- a/asn1/lte-rrc/packet-lte-rrc-template.c +++ b/asn1/lte-rrc/packet-lte-rrc-template.c @@ -1792,22 +1792,6 @@ static const value_string lte_rrc_warningType_vals[] = { /* through this API, which ensures that they will not overwrite each other!! */ /*****************************************************************************/ -/* Dedicated DRX config. Currently used to verify that a sensible config is given. - TODO: would be good to configure MAC with these settings and (optionally) show - DRX config and state (cycles/timers) attached to each UL/DL PDU! */ -typedef struct drx_config_t { - gboolean configured; - guint32 onDurationTimer; - guint32 inactivityTimer; - guint32 retransmissionTimer; - guint32 longCycle; - guint32 cycleOffset; - /* Optional Short cycle */ - gboolean shortCycleConfigured; - guint32 shortCycle; - guint32 shortCycleTimer; -} drx_config_t; - /**********************************************************/ /* Struct to store all current uses of packet private data */ |