Attention is currently required from: pespin.
fixeria has posted comments on this change by fixeria. ( https://gerrit.osmocom.org/c/osmo-bts/+/38301?usp=email )
Change subject: csd_v110: properly set bit E2 for TCH/F4.8 NT ......................................................................
Patch Set 2:
(2 comments)
File src/common/csd_v110.c:
https://gerrit.osmocom.org/c/osmo-bts/+/38301/comment/a1c1e802_cb2ca365?usp=... : PS1, Line 113: if ((i & 1) == 0) { /* executed for Q1/Q3 */
we usually use hex notation to do bitmask. […]
I prefer using hex-notation when dealing with values sent/received over the wire/radio. Here I am just checking for odd values, does `0x0` prefix really improve readability? A quick grep across all osmo-projects shows we're doing `i & 1` in many places...
https://gerrit.osmocom.org/c/osmo-bts/+/38301/comment/538b90cd_298770f6?usp=... : PS1, Line 125: * Q4 | =1 | =1 Yes, we do not execute this code for `i == 3` (i.e. block Q4) and use the value that was set during the previous iteration (i.e. block Q3), which should be 1 according to the table above.
so you use "e2_bit = 0" at the start of the function ...
I am just setting it to a random value (0 looks sane) to make gcc happy and not complain about using uninitialized values (even despite it's not possible here). We have seen this in some cases when it's logically impossible, but gcc is not smart/careful enough...