mirror of https://gerrit.osmocom.org/libosmocore
coding: Correctly count bits when decoding EDGE bursts with MCS >= 7.
They consist of two blocks, so we should count both blocks. Change-Id: I560de192212dae4705054a1665726369b83d213a
This commit is contained in:
parent
5594430405
commit
9444326158
|
@ -979,6 +979,9 @@ int gsm0503_pdtch_egprs_decode(uint8_t *l2_data, const sbit_t *bursts, uint16_t
|
|||
if (rc < 0)
|
||||
return -EFAULT;
|
||||
} else {
|
||||
/* Bit counters for the second block */
|
||||
int n_errors2, n_bits_total2;
|
||||
|
||||
/* MCS-7,8,9 block 1 */
|
||||
rc = egprs_decode_data(l2_data, c1, cps.mcs, cps.p[0],
|
||||
0, n_errors, n_bits_total);
|
||||
|
@ -987,7 +990,11 @@ int gsm0503_pdtch_egprs_decode(uint8_t *l2_data, const sbit_t *bursts, uint16_t
|
|||
|
||||
/* MCS-7,8,9 block 2 */
|
||||
rc = egprs_decode_data(l2_data, c2, cps.mcs, cps.p[1],
|
||||
1, n_errors, n_bits_total);
|
||||
1, &n_errors2, &n_bits_total2);
|
||||
if (n_errors)
|
||||
*n_errors += n_errors2;
|
||||
if (n_bits_total)
|
||||
*n_bits_total += n_bits_total2;
|
||||
if (rc < 0)
|
||||
return -EFAULT;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue