Age | Commit message (Collapse) | Author | Files | Lines |
|
Necessary changes for build this pcu.
|
|
correction for generation of CRBB in PUAN.
|
|
The problem was introduced while calculating flexible window
size for EGPRS in UL direction.
Incorrect window calculation for GPRS UL tbf is fixed
|
|
Necessary changes for build this pcu.
|
|
Fix for aligning the EPDAN out of RLC transmit window is made
according to section 9.1.8.2.4 in 44.060 version 7.27.0 Release 7.
The specification explains that A bit within the uncompressed bitmap
whose corresponding BSN is not within the transmit window shall be
ignored
Related: OS#1789
|
|
This patch adds a test case test_tbf_egprs_epdan which
expects a current bug with EPDAN for Interpretation of the bitmap
explained in section 9.1.8.2.4 in 44.060 version 7.27.0 Release 7.
the specification explains that A bit within the uncompressed bitmap
whose corresponding BSN is not within the transmit window shall be
ignored. But current PCU implementation ignores EPDAN
The test's expectation is corrected along with the bug
fix in a subsequent commit
Related: OS#1789
|
|
Currently number of TS for second DL TBF is less
compared to first DL TBF because PCU is considering the
combined capacity of DL and UL for TS allocation,
with this there is a difference in throughput between
the 2 DL TBFs. This patch enables the user to maximize
the number of DL TSs for the TBF based on the
direction configured through VTY with cfg_pcu_ts_alloc_maximise_cmd
Related: OS#1792
|
|
This test case is for testing generation of
EGPRS PUAN. Corresponding log files .ok and .err
are modified.
|
|
This adds compression of bitmap in PUAN. The compressed bitmap
is used only if the number of bits in the bitmap does not fit
in the message and there is a gain after compression.
Test case is updated for testing the compression with bitmaps of
varying lengths.
|
|
Below issue in uncompresed bitmap generation is addressed
1. Corrected the number of bits that is included in URBB
2. If length is not present, 0s are coded as remaining bits
Along with this, code is restructured to enable addition of
compression support
|
|
Implemented tree based algorithm to decode compressed bitmap in EPDAN
as described in section 9.1.10 of 3GPP 44.060.
This algorithm intends to improve the performance over existing method.
New Regression test is added under bitcomp directory.
Test case is added to validate decompressed result of the bitmap
Present in EPDAN.
Test is done for multiple bitmaps of varying length.
Invalid inputs are also part of the test vector.
|
|
Like most other osmo-* programs, bind the telnet VTY to the address specified
by the 'line vty'/'bind' command. This is added by vty_init(), so until now the
PCU offered this config but ignored it.
Change-Id: I4cca05a212ec0d493b906014dc3a83e687ebbb1d
|
|
Encode the EGPRS fields of immediate assignment message in uplink
when EGPRS PACKET CHANNEL REQUEST (11 bit RACH) is received.
The series of patches for 11 bit RACH are dependent on libosmocore
and osmo-bts patches for 11 bit RACH.
Change-Id: Ie5e309156e5dbbb6add74a1b4d257c4ee2332e52
|
|
A function is_single_block is added to get request type of RACH.
EGPRS 11 bit RACH is handled.
Change-Id: I61d74a32f7764644ed86f7fdf97fa3c2f61503f7
|
|
Earlier there was no handling for recalculation of DL window
size during tbf update. Which has been fixed in this patch.
Related: OS#1808
Change-Id: I41aa807068520460fd665a55e3529e60f6bbb630
|
|
A subsequent patch needs to call this from gprs_rlcmac_tbf::update(),
so to avoid code dup, put the calculation in a separate function.
Related: OS#1808
Change-Id: I7c7777d43f843bbd3421503fc2a8600f148ca035
|
|
Release 7
row 4 of Table 10.4.14a.1 of Spec 44.060 version 7.27.0 Release 7. Says
"The previous RLC data block contains a Upper Layer PDU, or a part of it,
that fills precisely the previous data block and for which there is no
length indicator in that RLC data block.
The current RLC data block contains a Upper Layer PDU that either fills
the current RLC data block precisely or continues in the next RLC data block."
So when we receive block with 1st LI: value=0 and Value of E bit in the
same octet as 1, we expect 2 chunks with 1st chunk as length as 0 and complete
and 2nd chunk as length non zero. But with this bug we see only 1 chunk causing
incorrect assembling
This issue has been fixed in this patch.
Related: OS#1811
Change-Id: I2cd0fca3ed28a553ede3f4b8a7d3267284dd2c9b
|
|
This patch adds a test case test_tbf_li_decoding which
expects a current bug with LI decoding for row 4 of Table 10.4.14a.1
in 44.060 version 7.27.0 Release 7.
The test's expectation is corrected along with the bug
fix in a subsequent commit
Related: OS#1811
Change-Id: Ida410dab1aa4b0cf3e15b2090586377eb19b2469
|
|
This patch adds a test case test_2_consecutive_dl_tbfs which
expects a current bug with TS allocation for 2nd DL TBF.
The test's expectation is corrected along with the bug fix in a
subsequent commit
Related: OS#1792
Change-Id: I890e4fbb2b64037e051433e70082a197e2a929a6
|
|
Fix attempted read past vector boundaries in case of a starting bit offset !=
0, so that the last amount of bits read should be < 8. In the case of
CSN_LEFT_ALIGNED_VAR_BMP, the mod-8 calculation was flawed, and in the final
step, 8 bits were read instead of the remainder < 8. This lead to -EINVAL being
returned by bitvec_get_bit_pos() and bogus resulting data.
Instead, read 8 bits only as long as at least 8 bits remain, and read any
remaining bits < 8 in a final step. Drop unneeded nB1 variable and an obvious
comment.
Adjust the unit test assertion in testCsnLeftAlignedVarBmpBounds() in
RLCMACTest.cpp.
Based on a fix by Aravind Sirsikar <Arvind.Sirsikar@radisys.com>, but
implemented differently.
Related: OS#1805
Change-Id: I490498c8da6b531f54acb673379379f7b10907c0
|
|
CSN1 decoding currently contains an attempted read past vector boundaries in
case of a starting bit offset != 0, so that the last amount of bits read should
be < 8. In the case of CSN_LEFT_ALIGNED_VAR_BMP, the mod-8 calculation is
flawed, and in what should be the final step of reading n < 8 bits, 8 bits are
read instead of n (with an extraneous read of n bits following after that).
This leads to -EINVAL being returned by bitvec_get_bit_pos() and bogus
resulting data.
Add testCsnLeftAlignedVarBmpBounds() in RLCMACTest.cpp to show and expect this
bug. The test's expectation shall be corrected along with the bug fix in a
subsequent commit.
Related: OS#1805
Tweaked-by: Neels Hofmeyr <nhofmeyr@sysmocom.de>
Change-Id: I4641f5d1d49f66cb1a5cd813befb3a2a266001b0
|
|
The test failure was introduced by 9bbe1600cc02e1b538380393edb1dcdabe9247a2
"Fix Timing Advance handling": between patch build checking and patch
submission, a new section was added to TbfTest.cpp which also needs adjustment.
Tweaked-by: Neels Hofmeyr <nhofmeyr@sysmocom.de>
Change-Id: If077da5f21fd5cba54556f1dead05a1bc4ea5540
|
|
* initialize with invalid TA instead of making assumption that phone is
located within 550 meters (TA=0)
* only set valid TA
Change-Id: Idfc40ff0c11bdac13d9e28fbfa4e95dfc6b735b0
Related: OS#1526
|
|
Change-Id: If3c4aff0366587dd3e5baa3d15b9e91d8ebe7753
|
|
Earlier there was an incorrect encoding of BSN status in GPRS PUAN message.
This was a bottle neck for GPRS performance testing for UL. Which has been fixed
in this patch.
Related: OS#1806
Change-Id: I98e586aa5cb9200cf03e092556304211d4d459aa
|
|
This patch adds a test case which expects a current bug with
GPRS PUAN encoding. The test's expectation
is corrected along with the bug fix in a subsequent commit
Related: OS#1806
Change-Id: Ied0f1dd3037d8fac6a772f4e097defb72634f955
|
|
This patch adds a test case test_tbf_update_ws. Which expects a
current bug with DL window size calculation. The test's expectation
is corrected along with the bug fix in a subsequent commit
Related: OS#1808
Change-Id: I4659494c6f93ae89e4cc4ac79fff5fcaf2d23699
|
|
Change-Id: I89638ba908e7d9964a5525061ce0cf26049be438
|
|
Related: CID#1361925, CID:#1361924
Change-Id: Ib1f71a8940eed7ad74211092275dfa29aa353fc7
|
|
Include vty/ports.h and use the proper constant.
Change-Id: I9c5b7683f76994c539da5551f40df32379dc685e
|
|
Interface structure between osmo-bts and osmo-pcu is updated with
the parameters to differentiate the type of RACH and further
support 11 bit RACH. The function prototype and definitions are
changed accordingly. Interface version number is increased.
Change-Id: I265c2d92d36d6cbcbeee60cdd8407dafe1da06a4
|
|
Earlier there was an incorrect encoding of PUAN when VQ is not equal
VR case for EGPRS UL RLC window. The PCU was encoding the same PUAN
message always irrespective of radio condition. This was a bottle neck
for performance testing. Which has been fixed in this patch.
Related: OS#1793
unit test assertion in the previous commit is fixed in this patch.
Change-Id: Iba7b1995028bd81749ffb080616b2ad5f2540d57
|
|
This patch adds a test case which expects a current bug with EGPRS PUAN
encoding when VQ != VR. The test's expectation is corrected along with
the bugfix in a subsequent commit
Adds test_tbf_puan_urbb_len to describe the following bug:
EGPRS PUAN encoding disregards the urbb_len, leading to identical PUAN
messages regardless of the urbb_len.
Related: OS#1793
Change-Id: I00662a564f64c0c83627401ae8f7bfef0f0a5de8
|
|
Modify the EGPRS DL TBF flow to support Split block during
Retx. This patch will also Upgrade the test suite with test cases
to validate the EGPRS Downlink SPB for Retransmission
Scenarios like MCS6->MCS3, MCS4->MCS1, MCS5->MCS2, MCS9->MCS3
MCS7->MCS2, MCS8->MCS3 have been simulated and Integration tested
in NuRAN 1.0 hardware thoroughly.
Change-Id: I242afdd8ae7622dec8593b26382ad66bad5b9516
|
|
Modify the header files with necessary data structure to handle
Split block for EGPRS DL TBF.
The EGPRS resegmentation feature allows PCU to retransmit
RLC blocks of HeaderType1, HeaderType2 by segmenting
them to 2 HeaderType3 blocks(Example MCS5 will be
retransmitted as 2 MCS2 blocks). Table 10.4.8b.2 of 44.060
explains the possible values of SPB in HeadrType3 for DL
direction. The PCU decides to retransmit the
blocks by resegmenting it based on Table 8.1.1.1 of 44.060.
The retransmission MCS is calculated based on current MCS of
the Block and demanded MCS by PCU. Section 10.3a.3.3 of 44.060
shows the HeadrType3 with SPB field present in it
Change-Id: I57673e53a9da2affa7e8aaa6551ac4b271c3d525
|
|
This warning is not valid since the PCU is not failing when EGPRS is
activated. So removing this trace
Change-Id: I62278f998adc691b9a3563ac2a46d756e7bfb66c
|
|
Change-Id: I7b50a24cf5879cb473a5cf929768bdd30e863a26
|
|
The new $with_dsp matrix parameter is defined as "sysmo" or empty/"none". The
lc15 DSP might be added in the future.
Fetch the sysmo layer 1 API only if with_dsp==sysmo.
The new $with_vty parameter is independent of $with_dsp, it is now up to
jenkins to define a matrix filter.
For compat, until jenkins is reconfigured with the new matrix parameters, use
$sysmodsp to init the new parameters to reflect previous behavior. The
$sysmobts matrix parameter made no sense, drop it.
Change-Id: Ia120f918342dc9563814252258b73bfb267e5253
|
|
Rename BTS_CONFIG to PCU_CONFIG.
More quotes.
Unify bash if-style.
Define *_PATH variables once globally instead of duping in every line.
Change-Id: If148632c3f340a8a395fa432135e593fecc41e82
|
|
Change-Id: If79d283fa0a559bb7ea319c513d09466eff523d1
|
|
Change-Id: I2da8acdfe3abf79f68db4d00d04a7d162f0123ce
|
|
Remove extra parameter which causes build to break. The error was
introduced in 878bd1f296379ffba949d6fcae2938c13406df5b
Change-Id: Id63187d925d448caa4fa85720582550919b1f216
|
|
Note: this increases the version of BTS <-> PCU protocol and thus
requires corresponding change in BTS.
Change-Id: Ide0e29b668ee38516605c1763fda85e87e867813
Related: OS#1616
|
|
This patch will modify the EGPRS UL TBF flow to support Split block
handling. This patch also contains test suite modification for SPB UL.
Scenarios like MCS6->MCS3, MCS4->MCS1, MCS5->MCS2, MCS9->MCS3
MCS7->MCS2, MCS8->MCS3 have been simulated and Integration tested
in NuRAN 1.0 hardware thoroughly. The scope of Unit testing is limited.
Change-Id: I39ca53218b6e0982abc2ab9c703c24c8bf0a09c0
|
|
Modify header files with data structures required
to support split blocks for EGPRS UL TBF
This feature provides provision for MS to retransmit
RLC blocks of HeaderType1, HeaderType2 by segmenting
them to 2 HeaderType3 blocks(Example MCS5 will be
retransmitted as 2 MCS2 blocks). Table 10.4.8b.1 of 44.060
explains the possible values of SPB in HeadrType3 for UL
direction. When the MCS is changed at the PCU, PCU directs the
changed MCS to MS by PUAN or UPLINK ASSIGNMENT message along
with RESEGMENT flag, Then MS may decide to retransmit the
blocks by resegmenting it based on Table 8.1.1.1 of 44.060.
The retransmission MCS is calculated based on current MCS of
the Block and demanded MCS by PCU. Section 10.3a.4.3 of 44.060
shows the HeadrType3 with SPB field present in it.
Change-Id: I83ccd136bb361adcfd511c57c5a9d95ed72c36c2
|
|
Check Timing Advance validity and set corresponding bit for Immediate
Assignment message. Previously !polling was errorneously used (polling
bit has nothing to do with TA validity according to 3GPP TS 44.018 Table
10.5.2.16.1) which lead to TA being always valid as polling is always 0
in other parts of the code.
Change-Id: I5d7ecc7f71402b945cae99332be2ebc0b17b9d44
Related: OS#1526
|
|
ARFCN is already part of TRX struct so there's no need to supply it
explicitly in a separate parameter. I've tested and those are the same
anyway.
Change-Id: I8e975c52cbc819427880093b1e5371fe1f8ce460
|
|
Remove note on PCCCH/PBCCH support because according to 3GPP TS 44.060
version 12.5.0 Release 12 § 1.6 "The network shall never enable PBCCH
and PCCCH".
The rationale behind this from GP-091955:
"Due to that P-channels are not deployed by any operator and are not
expected ever to be, it has decided to remove the requirement on
mandatory support of P-channels for the mobile stations in A/Gb mode."
Change-Id: I2b16413e1b6ce8f2bc2e8183165fb6b3aa14f2d0
|
|
Those structs are not used anywhere (which was the case in the commit
which introduced them as well) but give false-positives while grepping
through the code. Better to just drop them.
Change-Id: I0a0bb0c641e4e081a57f72187ff96e9beef16588
|
|
EGPRS Type 1, 2, and 3 headers are used by OsmoPCU and OsmoBTS.
Move the header definitions to libosmocore to be shared by both
packages.
Modify the struct variable naming to use *_hi/*_lo instead of
*_a/*_b in order to be consistent with existing naming used in
libosmocore.
Change-Id: I98687ad981d27502aec42729611937ba1caf207c
|