tree 79bdd6b083d51e4bfd8f966e157a68f99b0a088d
parent bfbc026d3f2d7b697f39b409f9aa32e2ff1aa431
parent 8bc90b713159fe8a2415f272bbe9224ab3fd68e9
author Pavan Holla <pholla@chromium.org> 1614702140 +0000
committer Pavan Holla <pholla@chromium.org> 1614702761 +0000

Merge cros/upstream to cros/master

Contains the following commits:
 8bc90b71 broadband-modem-qmi: Enable AT URCs and QMI indications (Dylan Van Assche)
 438ff54d libmm-glib,tests: include string.h explicitly (Aleksander Morgado)
 da0e610f modem-helpers-mbim: include string.h explicitly (Aleksander Morgado)
 a9611c62 utils: import ptr array lookup with GEqualFunc from GLib 2.54 (Aleksander Morgado)
 e1372a71 iface-modem: detect hotswap on all slots (Pavan Holla)
 fbc16360 docs: add api index for 1.18 (Aleksander Morgado)
 a4aba0a6 mmcli,sim: add preferred networks list to SIM properties (Teijo Kinnunen)
 816beeff libmm-glib,modem-helpers,mm-base-sim: implement Sim.PreferredNetworks (Teijo Kinnunen)
 c7d36667 shared-qmi: network registration cancellation logic with asserts disabled (Aleksander Morgado)
 f10e4af9 libmm-glib,bearer-properties: fix 'allow roaming' comparison (Aleksander Morgado)
 297a8c85 examples: sms: resolve PEP8 issues (Yegor Yefremov)
 aba237df broadband-modem-qmi: allow lookup of QMI for data without SIO port (Aleksander Morgado)
 381e2f38 base-modem: separate method to lookup exact port by name (Aleksander Morgado)
 b8e076f9 kernel-device-udev: keep track of the client object (Aleksander Morgado)
 1b35d74c kernel-device: add get_interface_number() method (Aleksander Morgado)
 cc07d214 examples: network-scan: get rid of global variables (Yegor Yefremov)
 62506034 build: improve releasing notes (Aleksander Morgado)
 4a06a027 charsets: detect iconv() support in runtime (Aleksander Morgado)
 8a8e0016 charsets: define common translit fallback character (Aleksander Morgado)
 c84454c1 charsets: remove charset_hex_to_utf8() (Aleksander Morgado)
 0ff3eb7e charsets: remove take_and_convert methods (Aleksander Morgado)
 ab4c31ec cinterion: rework mno decoding to use str_to_utf8() (Aleksander Morgado)
 6bc07b4b cinterion: rework band encoding to use str_to_utf8() (Aleksander Morgado)
 16df1e17 helpers: rework normalize_operator() to use str_to_utf8() (Aleksander Morgado)
 63fa9eee charsets,tests: update take_and_convert tests to str_from/to (Aleksander Morgado)
 3ac248a7 cinterion: move sequence to set bands to private ctx (Aleksander Morgado)
 e5363b54 charsets: use new str_from_utf8() instead of take_and_convert_to_current_charset() (Aleksander Morgado)
 395ab06c charsets: use new bytearray_to_utf8() instead of hex_to_utf8() (Aleksander Morgado)
 5ea4a591 charsets: use new bytearray_to_utf8() instead of byte_array_to_utf8() (Aleksander Morgado)
 033e174e charsets: make charset_gsm_unpacked_to_utf8() private (Aleksander Morgado)
 8bfdfb18 charsets: use new bytearray_from_utf8() instead of byte_array_append() (Aleksander Morgado)
 75b37e16 charsets: make charset_utf8_to_unpacked_gsm() private (Aleksander Morgado)
 9c613d33 charsets: new common APIs to convert from/to charsets and UTF-8 (Aleksander Morgado)
 6f32c8d3 charsets: avoid //TRANSLIT when converting to/from charsets (Aleksander Morgado)
 bc449cbe charsets: make translit optional in utf8_to_unpacked_gsm() (Aleksander Morgado)
 5ce97abd charsets: make translit optional in gsm_unpacked_to_utf8() (Aleksander Morgado)
 5480cb67 libmm-glib,tests: add ishexstr/hexstr2bin/bin2hexstr unit tests (Aleksander Morgado)
 34de613d libmm-glib,common-helpers: make hexstr2bin() return a guint8 array (Aleksander Morgado)
 6d8610d6 libmm-glib,common-helpers: ishexstr() fails on empty input string (Aleksander Morgado)
 8c30a6b6 libmm-glib,common-helpers: hexstr2bin fails on empty input string (Aleksander Morgado)
 a211981d libmm-glib,common-helpers: make hexstr2bin() accept input string length (Aleksander Morgado)
 657cabcf libmm-glib,common-helpers: make hexstr2bin() return a GError (Aleksander Morgado)
 dbdf67e9 charsets: remove unused charset_utf8_to_hex() method (Aleksander Morgado)
 8b590721 charsets: don't allow quoting in byte_array_append() (Aleksander Morgado)
 38a4a9c8 charsets: remove HEX charset type (Aleksander Morgado)
 a025e83e charsets: define charset enum explicitly as flags (Aleksander Morgado)
 19e5d5f9 build: post-release version bump to 1.17.0 (Aleksander Morgado)
 7a5a49b7 release: bump version to 1.16.0 (Aleksander Morgado)
 7a5eae2a NEWS: update for 1.16.0 (Aleksander Morgado)
 bbd3638d build: require libqmi 1.28.0 (Aleksander Morgado)
 a5462014 bearer-mbim: IP type may be reported as deactivated and still have IP settings (Aleksander Morgado)

Cq-Depend: chromium:2729495
Change-Id: Ib418fd49adc23055e82037d69469da794442425e
