Age | Commit message (Collapse) | Author | Files | Lines |
|
Currently CRBB bitmaps are ignored if they are present.
This commit enables the decoding.
Note that this requires osmo_t4_decode in libosmocore.
Sponsored-by: On-Waves ehf
|
|
Currently only uncompressed bitmaps (URBB) are supported in
PACKET UPLINK ACK/NACK messages.
Extend decode_egprs_acknack_bits to decode compressed bitmaps (CRBB),
too.
Note that this code is only active, if the macro WITH_CRBB_DECODING
is defined.
Sponsored-by: On-Waves ehf
|
|
The bitmap related fields are undefined when FINAL_ACK_INDICATION
is set.
Derive the bitmap from the current V(B). By doing this, a valid
bitmap is always generated. Thus the ack/nack handling can always
be done the same way, while only the TBF state related changes still
depend on that flag.
Sponsored-by: On-Waves ehf
|
|
TODO:
- cm
Ticket: OW#????
Sponsored-by: On-Waves ehf
|
|
Ticket: OW#????
Sponsored-by: On-Waves ehf
|
|
Ticket: OW#????
Sponsored-by: On-Waves ehf
|
|
Ticket: OW#????
Sponsored-by: On-Waves ehf
|
|
Ticket: OW#????
Sponsored-by: On-Waves ehf
|
|
Ticket: OW#????
Sponsored-by: On-Waves ehf
|
|
Only return bits starting with V(A).
Ticket: OW#????
Sponsored-by: On-Waves ehf
|
|
Ticket: OW#????
Sponsored-by: On-Waves ehf
|
|
Ticket: OW#????
Sponsored-by: On-Waves ehf
|
|
This commit removes gprs_rlcmac_tbf::extract_tlli and
Decoding::tlli_from_ul_data.
Sponsored-by: On-Waves ehf
|
|
These struct names are more specific than necessary. They are used
for GPRS (uplink) already. In downlink direction, only a few fields
will be added to the header struct. Add addition,
gprs_rlc_ul_header_egprs does not map directly to an encoded
header, like many other 'header' structs do.
Change the names to fit both modes and both directions:
gprs_rlc_ul_header_egprs -> gprs_rlc_data_info
gprs_rlc_ul_data_block_info -> gprs_rlc_data_block_info
Sponsored-by: On-Waves ehf
|
|
Sponsored-by: On-Waves ehf
|
|
Use a signed integer instead of an unsigned one for num_chunks
which can set to a negative value on error.
Ensure that chunks is not dereferenced if it is NULL. In fact
that will not happen currently, since num_chunks is now always
<= 0 if chunks == NULL.
Fixes: Coverity CID 1347433, 1347434, 1347435
Sponsored-by: On-Waves ehf
|
|
This commit adds new RLC block decoder functions that support both
GPRS and EGPRS. The code path is selected based on the value of the
GprsCodingScheme cs object.
- rlc_parse_ul_data_header
parses the header of an RLC data block including the E and FBI/TI
flags (currently supported CS-1 - CS-4, MCS-1 - MCS-4).
- rlc_copy_to_aligned_buffer
copies an RLC data unit to a byte aligned buffer and returns
the unit's length.
- rlc_get_data_aligned
is a convenience wrapper around rlc_copy_to_aligned_buffer
that avoids copying if the data unit is already byte aligned.
Sponsored-by: On-Waves ehf
|
|
The EGPRS MS class ist contained in the MS_RA_capability information.
Its presence indicates, that the MS is able (and willing) to use
EGPRS.
This commit implements basic support for retrieving, storing, and
showing it in the VTY. The information is stored in the MS object.
Sponsored-by: On-Waves ehf
|
|
|
|
We want to match up rbb decoding and encoding so it helps to use the
same chars.
|
|
Move the parsing of the bitbmap out of the TBF code into Decoding.
Move the updating of the V_B into the V_B class. Add some comments
about handling the mod_sns, mod_sns_half parameters by using template
code.
|
|
Move the dispatch into the PDCH. This needs to be split up
further into understandable blocks.
|
|
Move the method into the PDCH. Extract the finding of TLLI into a
new class called Decoding. Move the assemble and forward LLC frames
into the TBF as it is poking in the internals of the TBF.
|