aboutsummaryrefslogtreecommitdiffstats
path: root/src/mslot_class.h
AgeCommit message (Collapse)AuthorFilesLines
2023-08-23vty: Allow modifying default msclassPau Espin Pedrol1-2/+0
Until now, if timeslot resources where being allocated for an MS whose msclass is not known, msclass=12 was being selected. While it's true that msclass=12 is quite a usual one implemented by phones (Rx=4, Rx=4, Sum=5), some MS implementations may not support such modes. As a result, if the PCU allocates a TBF for an MS which its msclass is not known (eg. because it used 1-phase access aka no Pkt Res Req), then a minimal msclass=1 should be assumed. Otherwise, it may assign more multislots than the MS can handle, and will work incorrectly since an amount of RLC/MAC blocks won't be sent/received properly. With the existing code base, changing the default MSCLASS to 1 would, however, create a worse user experiencie for the vast majority of devices (which are msclass >= 12). The code should be improved to first use only 1 TS until the MS CLASS is known, and at that point reallocate resources and re-assign them (eg. RECONFIGURE TBF rlc/mac ctrl blk). So, for now, simply add a hidden VTY config to allow changing the default assumed MS Class, so that operators wishing to support all devices can eg. set it to 1. Change-Id: If80fdd793db7dad029faa83dbf980ffc4959e2e5
2023-07-27cosmetic: mslot_class.h: Update spec referencePau Espin Pedrol1-1/+1
Change-Id: I402a34c62d6714f054e8a3ff9042de3d2cf30727
2021-12-14treewide: remove FSF address2021q4Oliver Smith1-4/+0
Remove the paragraph about writing to the Free Software Foundation's mailing address. The FSF has changed addresses in the past, and may do so again. In 2021 this is not useful, let's rather have a bit less boilerplate at the start of source files. Change-Id: I4a49dbeeec89b22624c968152118aecf8886dac6
2018-02-21Simplify TS alloc: move slot check into functionsMax1-0/+3
Move timeslot applicability check outside of nested for loop into separate functions and document them. Add corresponding tests. This allows us to clarify types used in TS-related computations. Change-Id: Ic39e848da47dc11357782362fdf6206d2c1457c2 Related: OS#2282
2018-02-21Simplify TS alloc: move slot assignmentMax1-0/+1
Move into separate functions: * move timeslot reservation * move UL timeslot assignment * move DL timeslot assignment Change-Id: I64cf78c5cfc78664766f9769dd5cde632dab92b0 Related: OS#2282
2018-02-20Simplify TS alloc: don't use PDCH for free TFIMax1-0/+3
Don't use PDCH from free TFI lookup routine. This allows for simpler function which can be moved to mslot_class.c alongside with other similar helpers. Change-Id: Ie154866900453d232a890f7b9a30911b451525a1 Related: OS#2282
2018-02-19Simplify TS alloc: split allocationMax1-0/+2
* generalize TS allocation and move it into separate function * move single-slot allocation into separate function * use common functions for TS allocation on both UL and DL Change-Id: Ied45ae380c345bc76fe9d6fd9a6184d1109f83f2 Related: OS#2282
2018-02-19Simplify TS alloc: separate capacity computationMax1-0/+1
Move TRX capacity computation into separate function and document it. Change-Id: Ifd88fc7ff818ea2a041eae61c5d457926a0df0f2 Related: OS#2282
2018-02-19Simplify TS alloc: split off RX mask computationMax1-0/+4
Move computation of RX mask into separate function and document it. This allows to significantly shrink find_multi_slot() function and overall improve code readability. Since the test output requires cosmetic adjustment anyway due to change in the sequence of log messages, use this opportunity to better group and format log message. Change-Id: I731726a096bba7ee97499e5cbe3e7401869d7392 Related: OS#2282
2018-01-25Add multislot classes from latest specMax1-2/+3
The table B.1 is copy-pasted from 3GPP TS 45.002 and reformatted via Emacs macros into C struct to avoid typos. The test output expanded accordingly. The allocation test expectations and output are adjusted accordingly. Note: classes 35-45 which need TA offset are not properly supported yet. This can be extended once we have such devices available for tests. Change-Id: I1ef2eb99c517f25e7d1e71b985a3e0eb3879eb2c Related: OS#2282
2017-12-21Add function to get max supported MS classMax1-1/+2
It's useful for allocation tests. Change-Id: I31d503af700ec3364042ff7e661710953cacf9f8 Related: OS#2282
2017-11-21Move multislot table to separate fileMax1-0/+46
To facilitate testing and addition of support for new multislot classes, hide multislot class struct internals: * introduce mslot_class_get_*() functions * use those functions instead of direct access to array of structs * use ms_class as a parameter to find_multi_slot() instead of entire object Change-Id: Id796bcff1322b1e273a0e3236c66c23b9da8fac6