Age | Commit message (Collapse) | Author |
|
|
|
==748616== 37 bytes in 1 blocks are definitely lost in loss record 2,850 of 4,938
==748616== at 0x48435FF: calloc (vg_replace_malloc.c:1117)
==748616== by 0x249CCF: qcdm_cmd_log_config_new (commands.c:1742)
==748616== by 0x24A321: qcdm_cmd_log_config_set_mask_new (commands.c:1901)
==748616== by 0x1DAE12: modem_cdma_setup_cleanup_unsolicited_events (mm-broadband-modem.c:8643)
==748616== by 0x1DAF21: modem_cdma_setup_unsolicited_events (mm-broadband-modem.c:8671)
==748616== by 0x1AE49F: interface_enabling_step (mm-iface-modem-cdma.c:1627)
==748616== by 0x1AE680: mm_iface_modem_cdma_enable (mm-iface-modem-cdma.c:1693)
==748616== by 0x1E2DF6: enabling_step (mm-broadband-modem.c:11756)
==748616== by 0x1E204E: iface_modem_3gpp_ussd_enable_ready (mm-broadband-modem.c:11606)
==748616== by 0x4F03533: g_task_return_now (gtask.c:1219)
==748616== by 0x4F07078: UnknownInlinedFun (gtask.c:1289)
==748616== by 0x4F07078: g_task_return (gtask.c:1245)
==748616== by 0x1AA323: interface_enabling_step (mm-iface-modem-3gpp-ussd.c:702)
|
|
commands.c: In function ‘qcdm_cmd_pilot_sets_result_get_pilot’:
commands.c:756:33: warning: implicit conversion from ‘float’ to ‘double’ to match other operand of binary expression [-Wdouble-promotion]
756 | *out_db = (float) set->ecio * -0.5;
| ^
|
|
commands.c: In function ‘nv_mode_pref_from_qcdm’:
commands.c:109:5: warning: switch missing default case [-Wswitch-default]
109 | switch (qcdm) {
| ^~~~~~
|
|
|
|
We shouldn't be accessiing u_int8_t * as u_int16_t *. Let's construct
the 16-bit value by or-ing the 8-bit halves directly; avoiding the
endianness conversion too.
|
|
When I use clang 3.5 to build it, I got
commands.c:1444:16: error: expression which evaluates to zero treated as a
null
pointer constant of type 'QcdmResult *' (aka 'struct QcdmResult *')
[-Werror,-Wnon-literal-null-conversion]
return FALSE;
^~~~~
./utils.h:29:15: note: expanded from macro 'FALSE'
#define FALSE ((u_int8_t) 0)
^~~~~~~~~~~~~~
commands.c:1464:20: error: expression which evaluates to zero treated as a
null
pointer constant of type 'QcdmResult *' (aka 'struct QcdmResult *')
[-Werror,-Wnon-literal-null-conversion]
return FALSE;
^~~~~
./utils.h:29:15: note: expanded from macro 'FALSE'
#define FALSE ((u_int8_t) 0)
^~~~~~~~~~~~~~
2 errors generated.
make[3]: *** [libqcdm_la-commands.lo] Error 1
make[3]: *** Waiting for unfinished jobs....
Below is the patch that fixes it
|
|
Some Qualcomm firmwares disable IPv6 unless this flag is set in nvram, at
least for the LTE default bearer. The firmware will happily let you
configure the IPV6 and IPV4V6 PDP types, also including the default
profile, but any attempt to connect will fail.
Signed-off-by: Bjørn Mork <bjorn@mork.no>
|
|
The helper functions got the return code of qcdm_result_* wrong
and thus failed all requests for pilot sets.
|
|
Found by Enrico Murador.
|
|
While the QCDM and DIAG_NV are the same, in reality they shouldn't
be and there should be a mapping between them. That wasn't happening,
so fix that up and add a few missing modes to the NV item defines.
|
|
Typo caused candidate or remaining sets to be treated as the
active pilot set.
|
|
Returns various ERI information like Indicator ID/Index, Icon
ID/Index, Icon Mode, and banner.
|
|
|
|
|
|
|
|
|
|
|
|
Like the MF627 for some reason. Also, the format appears to be
more like the DM_CMD_VERSION_INFO response where at least the
comp_date and comp_time fields are the same size as
VERSION_INFO, just with some padding between.
|
|
So don't bother trying to parse them.
|
|
|
|
|
|
|
|
Fix some buffer overruns. Log codes are also 16-bit not 32.
|
|
This appears to be a newer version of EXT_LOGMASK that also
works with GSM/UMTS and other subsystems.
|
|
Not sure how this worked before at all.
|
|
|
|
And interpret all the recent mode preferences.
|
|
People have asked for this at various times.
|
|
|
|
Not sure if that's exactly what the NV item is, but the UML290 uses
it for Rev0, RevA, and eHRPD preference.
|
|
Doesn't parse any events yet since we don't know what any events
are. We also need to fix up ModemManager to handle unsolicited
responses in the QcdmSerialPort class.
|
|
No code to actually start logging yet, just sets the mask.
|
|
|
|
|
|
|
|
|
|
|
|
Determined from various sources including RTManager and
"Technical Introduction to CDMA" (Course RF100 Chapter 7).
|
|
Found in two sources:
a) Руководство пользования тестером CDMA-450
b) RTManager
|
|
|
|
|
|
|
|
|
|
Use the right buffer size to initialize.
|
|
|
|
|
|
|
|
|
|
Status command not completely working yet.
|