aboutsummaryrefslogtreecommitdiff
path: root/libqcdm/src
AgeCommit message (Collapse)Author
2016-07-21qcdm: avoid upsetting the compiler with wrong aliasingLubomir Rintel
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.
2016-07-20libqcdm: add HDR Pilot Sets V2 log item structuresDan Williams
Apparently I was looking at this in 2012: https://blogs.gnome.org/dcbw/2012/11/14/got-evdo-help-me-out/ So why not at least get the structures into libqcdm and figure out a rough correlation between pilot energy and EC/IO.
2015-11-27Do not use obsolete XCASE terminal mode flagFelix Janda
The XCASE terminal mode flag because is no longer specified by POSIX and has no effect on linux. Because of the latter fact we can remove it. This fixes a compilation error with musl libc.
2015-01-11build: add code coverage supportJakub Sitnicki
Build all targets, except for CLI tools (mmcli, uml290), with special flags needed for collecting code coverage information when the build has been configured with --enable-code-coverage. Three new targets are available in the top build directory: - `check-code-coverage' runs the test suite and generates a code coverage report, - `code-coverage-capture' generates a code coverage report from already collected data, which can come in handy when one wants to see code paths touched by a particular test, - `code-coverage-clean' removes the collected coverage data and the generated reports.
2014-02-06libqcdm: use NULL instead of 0 for empty pointerYunlian Jiang
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
2013-12-05qcdm: add IPv6 nvram settingBjørn Mork
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>
2013-04-25qcdm: remove unnecessary NULL check on free()Ben Chan
This patch removes a few unnecessary NULL checks on free(), which also fixes the following clang warnings: result.c:59:27: error: if statement has empty body [-Werror,-Wempty-body] if (v->u.u8_array); ^ result.c:59:27: note: put the semicolon on a separate line to silence this warning result.c:62:28: error: if statement has empty body [-Werror,-Wempty-body] if (v->u.u16_array); ^ result.c:62:28: note: put the semicolon on a separate line to silence this warning Bug reported on https://code.google.com/p/chromium/issues/detail?id=219280 Patched by Yunlian Jiang <yunlian@chromium.org>
2013-04-17qcdm: fix CDMA1x Pilot Sets pilot handlingDan Williams
The helper functions got the return code of qcdm_result_* wrong and thus failed all requests for pilot sets.
2013-04-05qcdm: add unsolicited signal level indication from Samsung Z810Dan Williams
2013-04-02qcdm: fix IM*I buffer sizes for GSM and WCDMA state info requestsDan Williams
Found by Enrico Murador.
2013-03-12qcdm: fix up NV Mode Pref item handlingDan Williams
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.
2013-02-08qcdm: fix handling of active pilot setDan Williams
Typo caused candidate or remaining sets to be treated as the active pilot set.
2013-02-06qcdm: add Novatel ERI subsystem supportDan Williams
Returns various ERI information like Indicator ID/Index, Icon ID/Index, Icon Mode, and banner.
2013-02-06qcdm: rename Novatel subsystem definesDan Williams
2013-01-14qcdm: various LTE-related NV mode pref and sysmode updatesDan Williams
2012-11-14qcdm: get/set functions for hybrid preferenceDan Williams
2012-11-14qcdm: trivial cleanup of log item numbersDan Williams
2012-11-14qcdm: clarify log item command length memberDan Williams
2012-09-27qcdm: add qcdm_cmd_control_new() to set operating modeDan Williams
2012-08-15qcdm: add some EVDO log item numbersDan Williams
2012-08-08qcdm: interpret MCC value from StatusSnapshot commandDan Williams
2012-06-04qcdm: fix 1x/HDR mode pref and add GSM/UMTS mode prefsDan Williams
2012-05-30qcdm: namespace stuff properlyDan Williams
2012-02-17qcdm: decode some more log itemsDan Williams
2012-01-21qcdm: clarify IMxI conversions a bit; fix up WCDMA L1 statesDan Williams
2012-01-19qcdm: add some mode prefsDan Williams
2012-01-18qcdm: some devices do implement SW_VERSIONDan Williams
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.
2012-01-18qcdm: GSM MCC, MNC, LAC and CI don't seem to valid in WCDMA modeDan Williams
So don't bother trying to parse them.
2012-01-17qcdm: fill in some GSM and WCDMA stuffDan Williams
2012-01-12qcdm: start filling out log messages and itemsDan Williams
Log messages are enabled by LOG_CONFIG and are then reported as unsolicited responses with code DM_CMD_LOG. Each log type appears to have its own message format which are now being added to log-items.h.
2012-01-11qcdm: fix warning when no log codes are enabledDan Williams
2012-01-11qcdm: only warn on unknown mode pref NV item valuesDan Williams
2012-01-11qcdm: LOG_CONFIG fixupsDan Williams
Fix some buffer overruns. Log codes are also 16-bit not 32.
2012-01-11qcdm: add support for Log Config commandDan Williams
This appears to be a newer version of EXT_LOGMASK that also works with GSM/UMTS and other subsystems.
2012-01-11qcdm: add u16 arrays to resultsDan Williams
2012-01-11qcdm: fix stringification of qcdm_xxx_if_fail() macrosDan Williams
Actually reading about preprocessor concatenation and stringification helps.
2012-01-10qcdm: add some more commandsDan Williams
Found in CodeAurora diagchar_core.c driver.
2012-01-10qcdm: clarify some subsystemsDan Williams
2012-01-10qcdm: don't segfault getting number of log itemsDan Williams
Not sure how this worked before at all.
2012-01-05qcdm: fill out some operating modesDan Williams
2012-01-05qcdm: better handle NV item read/write status codesDan Williams
2012-01-05qcdm: fix up live testcase for recent changesDan Williams
And interpret all the recent mode preferences.
2012-01-03qcdm: remove usage of glibDan Williams
People have asked for this at various times.
2011-10-04qcdm: add more mode prefsDan Williams
It seems that various firmwares just pass values from eg AT^SYSCFG straight through to the firmware so it's pretty easy to map them to the actual response here. Note that the NV mode pref item uses a different mapping than CM state info response. Yay.
2011-05-16qcdm: add some more CDMA band classesDan Williams
2011-01-23qcdm: add some missing system modesDan Williams
2011-01-21qcdm: add call manager subsystem mode define for LTEDan Williams
Seen on the Pantech UML290 and another Qualcomm-based LTE device.
2011-01-06qcdm: add HDR revision preferenceDan Williams
Not sure if that's exactly what the NV item is, but the UML290 uses it for Rev0, RevA, and eHRPD preference.
2011-01-06qcdm: add NV mode pref values for 1X/HDR Only, LTE Only, and 1X/HDR/LTE OnlyDan Williams
Based on responses from Pantech UML290.
2010-09-22qcdm: remove shared-library-specific bits that aren't applicableDan Williams
Since at this time libqcdm is statically linked into ModemManager.