From a74cee2d86fc6cfe8afbdfd2323e94d636129cdb Mon Sep 17 00:00:00 2001 From: Mario Limonciello Date: Thu, 19 Aug 2021 12:08:54 -0500 Subject: [PATCH] Refresh debian/ based on 1.7.0 --- debian/changelog | 10 +- debian/control | 42 +- debian/copyright | 28 + debian/libfwupd2.symbols | 41 ++ ...lugin1.symbols => libfwupdplugin4.symbols} | 321 ++++++++---- ...gression-where-activate-stopped-work.patch | 33 -- ...on-t-allow-device-updates-while-need.patch | 49 -- ...-trivial-add-linker-script-for-armhf.patch | 94 ---- ...-Specify-the-section-flags-for-.sbat.patch | 34 -- .../patches/0005-fix-vendor-sbat-string.patch | 27 - ...c-linker-scripts-with-latest-used-by.patch | 332 ------------ ...lude-crt0-for-arm-and-aarch64-that-a.patch | 485 ------------------ debian/patches/series | 7 - 13 files changed, 321 insertions(+), 1182 deletions(-) rename debian/{libfwupdplugin1.symbols => libfwupdplugin4.symbols} (66%) delete mode 100644 debian/patches/0001-fu-tool-fix-a-regression-where-activate-stopped-work.patch delete mode 100644 debian/patches/0001-libfwupdplugin-don-t-allow-device-updates-while-need.patch delete mode 100644 debian/patches/0001-trivial-add-linker-script-for-armhf.patch delete mode 100644 debian/patches/0003-uefi-capsule-Specify-the-section-flags-for-.sbat.patch delete mode 100644 debian/patches/0005-fix-vendor-sbat-string.patch delete mode 100644 debian/patches/0006-uefi-capsule-Sync-linker-scripts-with-latest-used-by.patch delete mode 100644 debian/patches/0007-uefi-capsule-Include-crt0-for-arm-and-aarch64-that-a.patch diff --git a/debian/changelog b/debian/changelog index dae41f3c1..e0a8d29f8 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,11 @@ +fwupd (1.7.0-1) UNRELEASED; urgency=medium + + * New upstream version (1.7.0) + * Update debian/control and debian/copyright for changes upstream + * Drop all patches, upstream + + -- Mario Limonciello Mon, 25 Oct 2021 10:58:15 -0500 + fwupd (1.5.7-5) unstable; urgency=medium * Change dependency versioning strategy for the signed fwupd @@ -778,7 +786,7 @@ fwupd (0.9.6-1) unstable; urgency=medium * trivial: debian: add missing dh-strip-nondeterminism dependency * trivial: debian: update standards version * trivial: debian: remove transient items on purge (Closes: #868464, #868465) - * trivial: debian: recusively cleanup on purge + * trivial: debian: recursively cleanup on purge * trivial: fix various spelling errors * debian: run lintian as part of CI * Add capability to enable test suite via /etc/fwupd.conf diff --git a/debian/control b/debian/control index d1ad73fdc..0448c4eb6 100644 --- a/debian/control +++ b/debian/control @@ -19,7 +19,6 @@ Build-Depends: gnutls-dev, gobject-introspection, gtk-doc-tools, - help2man, libarchive-dev, libcairo-dev, libcairo-gobject2, @@ -36,8 +35,11 @@ Build-Depends: libgusb-dev (>= 0.3.5), libjcat-dev, libjson-glib-dev (>= 1.1.1), + libmbim-glib-dev, libmm-glib-dev, + libpci-dev, libpolkit-gobject-1-dev, + libprotobuf-c-dev, libqmi-glib-dev, libsmbios-dev [i386 amd64], libsqlite3-dev, @@ -50,9 +52,12 @@ Build-Depends: mingw-w64-tools [amd64 arm64 armhf i386], pkg-config, policykit-1 (>> 0.105-14), + protobuf-c-compiler, python3-gi-cairo, - python3-pil, + python3-jinja2, python3-requests, + python3-toml, + python3-typogrify, shared-mime-info, systemd (>= 231), udev, @@ -66,7 +71,7 @@ Homepage: https://github.com/fwupd/fwupd Vcs-Git: https://salsa.debian.org/efi-team/fwupd.git Vcs-Browser: https://salsa.debian.org/efi-team/fwupd -Package: libfwupdplugin1 +Package: libfwupdplugin4 Section: libs Architecture: linux-any Depends: ${misc:Depends}, @@ -106,6 +111,7 @@ Recommends: python3, dbus, secureboot-db, udisks2, + fwupd-unsigned, fwupd-signed Suggests: gir1.2-fwupd-2.0 Provides: fwupdate @@ -206,7 +212,7 @@ Description: GObject introspection data for libfwupd Package: libfwupdplugin-dev Architecture: linux-any Multi-Arch: same -Depends: libfwupdplugin1 (= ${binary:Version}), +Depends: libfwupdplugin4 (= ${binary:Version}), gir1.2-fwupdplugin-1.0 (= ${binary:Version}), libarchive-dev, libcurl4-gnutls-dev, @@ -241,31 +247,3 @@ Description: GObject introspection data for libfwupdplugin . It can be used by packages using the GIRepository format to generate dynamic bindings. - -Package: fwupd-amd64-signed-template -Architecture: amd64 -Depends: ${shlibs:Depends}, ${misc:Depends}, make | build-essential | dpkg-dev -Description: Template for signed fwupd package - This package is used to control code signing by the Debian signing - service. - -Package: fwupd-i386-signed-template -Architecture: i386 -Depends: ${shlibs:Depends}, ${misc:Depends}, make | build-essential | dpkg-dev -Description: Template for signed fwupd package - This package is used to control code signing by the Debian signing - service. - -Package: fwupd-armhf-signed-template -Architecture: armhf -Depends: ${shlibs:Depends}, ${misc:Depends}, make | build-essential | dpkg-dev -Description: Template for signed fwupd package - This package is used to control code signing by the Debian signing - service. - -Package: fwupd-arm64-signed-template -Architecture: arm64 -Depends: ${shlibs:Depends}, ${misc:Depends}, make | build-essential | dpkg-dev -Description: Template for signed fwupd package - This package is used to control code signing by the Debian signing - service. diff --git a/debian/copyright b/debian/copyright index 643e1d7aa..ecbc40a15 100644 --- a/debian/copyright +++ b/debian/copyright @@ -4,33 +4,52 @@ Source: https://github.com/fwupd/fwupd Files: * Copyright: + Norbert Kaminski + Norbert Kamiński + Rafal Wojtczuk + 3mdeb Embedded Systems Consulting 9elements Agency GmbH Aleix Pol Aleksander Morgado Andrew Duggan + Apollo Ling Benson Leung Christian J. Kellner Cypress Semiconductor Corporation. + Daniel Campello Dell Inc. Dell, Inc. Evan Lojewski + Free Software Foundation, Inc. Fresco Logic + George Popoola Google, Inc. H.J. Lu Intel Corporation. Intel, Inc. + Jarvis Jiang Javier Martinez Canillas Jeremy Soller Jimmy Yu Kalev Lember + Lars Gustaebel Lennart Poettering + Mario Limonciello + Mario Limonciello Mario Limonciello + Mario Limonciello Matthias Klumpp Max Ehrlich maxehr@gmail.com + Michael Cheng + Michał Kopeć + Norbert Kamiński Peichen Huang Peter Jones + Peter Marheine Philip Withnall Philip Withnall + Python Software Foundation. + Quectel Wireless Solutions Co., Ltd. Realtek Corporation Realtek Semiconductor Corporation Red Hat, Inc. @@ -38,11 +57,20 @@ Copyright: Richard Hughes Ricky Wu Ryan Chang + Sean Rhodes + Sergii Dmytruk Synaptics Synaptics Inc Synaptics Inc. Synaptics Incorporated + Synaptics Incorporated + TUXEDO Computers GmbH + The Android Open Source Project + The Python Software Foundation. + Twain Byrnes VIA Corporation + Vinay Sajip. + Xiaotian Cui boger wang License: LGPL-2.1+ diff --git a/debian/libfwupd2.symbols b/debian/libfwupd2.symbols index 43454eac1..1e96d89e1 100644 --- a/debian/libfwupd2.symbols +++ b/debian/libfwupd2.symbols @@ -46,6 +46,11 @@ libfwupd.so.2 libfwupd2 #MINVER# LIBFWUPD_1.5.3@LIBFWUPD_1.5.3 1.5.3 LIBFWUPD_1.5.5@LIBFWUPD_1.5.5 1.5.5 LIBFWUPD_1.5.6@LIBFWUPD_1.5.6 1.5.6 + LIBFWUPD_1.5.8@LIBFWUPD_1.5.8 1.5.8 + LIBFWUPD_1.6.0@LIBFWUPD_1.6.0 1.6.0 + LIBFWUPD_1.6.1@LIBFWUPD_1.6.1 1.6.1 + LIBFWUPD_1.6.2@LIBFWUPD_1.6.2 1.6.2 + LIBFWUPD_1.7.0@LIBFWUPD_1.7.0 1.7.0 fwupd_build_history_report_json@LIBFWUPD_1.0.4 1.0.4 fwupd_build_machine_id@LIBFWUPD_1.0.4 1.0.4 fwupd_build_user_agent@LIBFWUPD_1.0.3 1.0.3 @@ -188,6 +193,7 @@ libfwupd.so.2 libfwupd2 #MINVER# fwupd_device_add_guid@LIBFWUPD_0.9.3 1.0.0 fwupd_device_add_icon@LIBFWUPD_0.9.8 1.0.0 fwupd_device_add_instance_id@LIBFWUPD_1.2.5 1.2.5 + fwupd_device_add_protocol@LIBFWUPD_1.5.8 1.5.8 fwupd_device_add_release@LIBFWUPD_0.9.8 1.0.0 fwupd_device_add_vendor_id@LIBFWUPD_1.5.5 1.5.5 fwupd_device_array_ensure_parents@LIBFWUPD_1.3.7 1.3.7 @@ -199,6 +205,7 @@ libfwupd.so.2 libfwupd2 #MINVER# fwupd_device_get_branch@LIBFWUPD_1.5.0 1.5.0 fwupd_device_get_checksums@LIBFWUPD_0.9.3 1.0.0 fwupd_device_get_children@LIBFWUPD_1.3.7 1.3.7 + fwupd_device_get_composite_id@LIBFWUPD_1.6.0 1.6.0 fwupd_device_get_created@LIBFWUPD_0.9.3 1.0.0 fwupd_device_get_description@LIBFWUPD_0.9.3 1.0.0 fwupd_device_get_flags@LIBFWUPD_0.9.3 1.0.0 @@ -215,6 +222,7 @@ libfwupd.so.2 libfwupd2 #MINVER# fwupd_device_get_parent_id@LIBFWUPD_1.0.8 1.0.8 fwupd_device_get_plugin@LIBFWUPD_1.0.0 1.0.0 fwupd_device_get_protocol@LIBFWUPD_1.3.6 1.3.6 + fwupd_device_get_protocols@LIBFWUPD_1.5.8 1.5.8 fwupd_device_get_release_default@LIBFWUPD_0.9.8 1.0.0 fwupd_device_get_releases@LIBFWUPD_0.9.8 1.0.0 fwupd_device_get_serial@LIBFWUPD_1.1.2 1.1.2 @@ -231,19 +239,24 @@ libfwupd.so.2 libfwupd2 #MINVER# fwupd_device_get_version@LIBFWUPD_0.9.3 1.0.0 fwupd_device_get_version_bootloader@LIBFWUPD_0.9.3 1.0.0 fwupd_device_get_version_bootloader_raw@LIBFWUPD_1.4.0 1.4.0 + fwupd_device_get_version_build_date@LIBFWUPD_1.6.2 1.6.2 fwupd_device_get_version_format@LIBFWUPD_1.2.9 1.2.9 fwupd_device_get_version_lowest@LIBFWUPD_0.9.3 1.0.0 fwupd_device_get_version_lowest_raw@LIBFWUPD_1.4.0 1.4.0 fwupd_device_get_version_raw@LIBFWUPD_1.3.6 1.3.6 fwupd_device_has_flag@LIBFWUPD_0.9.3 1.0.0 fwupd_device_has_guid@LIBFWUPD_0.9.3 1.0.0 + fwupd_device_has_icon@LIBFWUPD_1.6.2 1.6.2 fwupd_device_has_instance_id@LIBFWUPD_1.2.5 1.2.5 + fwupd_device_has_protocol@LIBFWUPD_1.5.8 1.5.8 fwupd_device_has_vendor_id@LIBFWUPD_1.5.5 1.5.5 fwupd_device_id_is_valid@LIBFWUPD_1.4.1 1.4.1 fwupd_device_incorporate@LIBFWUPD_1.1.0 1.1.0 fwupd_device_new@LIBFWUPD_0.9.3 1.0.0 + fwupd_device_remove_child@LIBFWUPD_1.6.2 1.6.2 fwupd_device_remove_flag@LIBFWUPD_0.9.3 1.0.0 fwupd_device_set_branch@LIBFWUPD_1.5.0 1.5.0 + fwupd_device_set_composite_id@LIBFWUPD_1.6.0 1.6.0 fwupd_device_set_created@LIBFWUPD_0.9.3 1.0.0 fwupd_device_set_description@LIBFWUPD_0.9.3 1.0.0 fwupd_device_set_flags@LIBFWUPD_0.9.3 1.0.0 @@ -268,6 +281,7 @@ libfwupd.so.2 libfwupd2 #MINVER# fwupd_device_set_version@LIBFWUPD_0.9.3 1.0.0 fwupd_device_set_version_bootloader@LIBFWUPD_0.9.3 1.0.0 fwupd_device_set_version_bootloader_raw@LIBFWUPD_1.4.0 1.4.0 + fwupd_device_set_version_build_date@LIBFWUPD_1.6.2 1.6.2 fwupd_device_set_version_format@LIBFWUPD_1.2.9 1.2.9 fwupd_device_set_version_lowest@LIBFWUPD_0.9.3 1.0.0 fwupd_device_set_version_lowest_raw@LIBFWUPD_1.4.0 1.4.0 @@ -421,12 +435,36 @@ libfwupd.so.2 libfwupd2 #MINVER# fwupd_remote_load_signature_bytes@LIBFWUPD_1.4.5 1.4.5 fwupd_remote_new@LIBFWUPD_0.9.3 1.0.0 fwupd_remote_set_agreement@LIBFWUPD_1.0.7 1.0.7 + fwupd_remote_set_filename_source@LIBFWUPD_1.6.1 1.6.1 fwupd_remote_set_keyring_kind@LIBFWUPD_1.5.3 1.5.3 fwupd_remote_set_mtime@LIBFWUPD_0.9.5 1.0.0 fwupd_remote_set_priority@LIBFWUPD_0.9.5 1.0.0 fwupd_remote_set_remotes_dir@LIBFWUPD_1.3.1 1.3.1 + fwupd_remote_setup@LIBFWUPD_1.6.1 1.6.1 + fwupd_remote_to_json@LIBFWUPD_1.6.2 1.6.2 fwupd_remote_to_variant@LIBFWUPD_1.0.0 1.0.0 + fwupd_request_from_variant@LIBFWUPD_1.6.2 1.6.2 + fwupd_request_get_created@LIBFWUPD_1.6.2 1.6.2 + fwupd_request_get_device_id@LIBFWUPD_1.6.2 1.6.2 + fwupd_request_get_id@LIBFWUPD_1.6.2 1.6.2 + fwupd_request_get_image@LIBFWUPD_1.6.2 1.6.2 + fwupd_request_get_kind@LIBFWUPD_1.6.2 1.6.2 + fwupd_request_get_message@LIBFWUPD_1.6.2 1.6.2 + fwupd_request_get_type@LIBFWUPD_1.6.2 1.6.2 + fwupd_request_kind_from_string@LIBFWUPD_1.6.2 1.6.2 + fwupd_request_kind_to_string@LIBFWUPD_1.6.2 1.6.2 + fwupd_request_new@LIBFWUPD_1.6.2 1.6.2 + fwupd_request_set_created@LIBFWUPD_1.6.2 1.6.2 + fwupd_request_set_device_id@LIBFWUPD_1.6.2 1.6.2 + fwupd_request_set_id@LIBFWUPD_1.6.2 1.6.2 + fwupd_request_set_image@LIBFWUPD_1.6.2 1.6.2 + fwupd_request_set_kind@LIBFWUPD_1.6.2 1.6.2 + fwupd_request_set_message@LIBFWUPD_1.6.2 1.6.2 + fwupd_request_to_string@LIBFWUPD_1.6.2 1.6.2 + fwupd_request_to_variant@LIBFWUPD_1.6.2 1.6.2 fwupd_security_attr_add_flag@LIBFWUPD_1.5.0 1.5.0 + fwupd_security_attr_add_guid@LIBFWUPD_1.7.0 1.7.0 + fwupd_security_attr_add_guids@LIBFWUPD_1.7.0 1.7.0 fwupd_security_attr_add_metadata@LIBFWUPD_1.5.0 1.5.0 fwupd_security_attr_add_obsolete@LIBFWUPD_1.5.0 1.5.0 fwupd_security_attr_array_from_variant@LIBFWUPD_1.5.0 1.5.0 @@ -435,6 +473,7 @@ libfwupd.so.2 libfwupd2 #MINVER# fwupd_security_attr_from_variant@LIBFWUPD_1.5.0 1.5.0 fwupd_security_attr_get_appstream_id@LIBFWUPD_1.5.0 1.5.0 fwupd_security_attr_get_flags@LIBFWUPD_1.5.0 1.5.0 + fwupd_security_attr_get_guids@LIBFWUPD_1.7.0 1.7.0 fwupd_security_attr_get_level@LIBFWUPD_1.5.0 1.5.0 fwupd_security_attr_get_metadata@LIBFWUPD_1.5.0 1.5.0 fwupd_security_attr_get_name@LIBFWUPD_1.5.0 1.5.0 @@ -444,6 +483,7 @@ libfwupd.so.2 libfwupd2 #MINVER# fwupd_security_attr_get_type@LIBFWUPD_1.5.0 1.5.0 fwupd_security_attr_get_url@LIBFWUPD_1.5.0 1.5.0 fwupd_security_attr_has_flag@LIBFWUPD_1.5.0 1.5.0 + fwupd_security_attr_has_guid@LIBFWUPD_1.7.0 1.7.0 fwupd_security_attr_has_obsolete@LIBFWUPD_1.5.0 1.5.0 fwupd_security_attr_new@LIBFWUPD_1.5.0 1.5.0 fwupd_security_attr_result_to_string@LIBFWUPD_1.5.0 1.5.0 @@ -465,3 +505,4 @@ libfwupd.so.2 libfwupd2 #MINVER# fwupd_update_state_to_string@LIBFWUPD_0.7.0 1.0.0 fwupd_version_format_from_string@LIBFWUPD_1.2.9 1.2.9 fwupd_version_format_to_string@LIBFWUPD_1.2.9 1.2.9 + fwupd_version_string@LIBFWUPD_1.6.1 1.6.1 diff --git a/debian/libfwupdplugin1.symbols b/debian/libfwupdplugin4.symbols similarity index 66% rename from debian/libfwupdplugin1.symbols rename to debian/libfwupdplugin4.symbols index 693a32227..0ee81349e 100644 --- a/debian/libfwupdplugin1.symbols +++ b/debian/libfwupdplugin4.symbols @@ -1,12 +1,9 @@ -libfwupdplugin.so.1 libfwupdplugin1 #MINVER# -* Build-Depends-Package: libfwupdplugin-dev +libfwupdplugin.so.4 libfwupdplugin4 #MINVER# LIBFWUPDPLUGIN_0.1.0@LIBFWUPDPLUGIN_0.1.0 0.1.0 - LIBFWUPDPLUGIN_0.3.5@LIBFWUPDPLUGIN_0.3.5 0.3.5 LIBFWUPDPLUGIN_0.6.1@LIBFWUPDPLUGIN_0.6.1 0.6.1 LIBFWUPDPLUGIN_0.7.1@LIBFWUPDPLUGIN_0.7.1 0.7.1 LIBFWUPDPLUGIN_0.7.2@LIBFWUPDPLUGIN_0.7.2 0.7.2 LIBFWUPDPLUGIN_0.8.0@LIBFWUPDPLUGIN_0.8.0 0.8.0 - LIBFWUPDPLUGIN_0.9.1@LIBFWUPDPLUGIN_0.9.1 0.9.1 LIBFWUPDPLUGIN_0.9.3@LIBFWUPDPLUGIN_0.9.3 0.9.3 LIBFWUPDPLUGIN_0.9.5@LIBFWUPDPLUGIN_0.9.5 0.9.5 LIBFWUPDPLUGIN_0.9.7@LIBFWUPDPLUGIN_0.9.7 0.9.7 @@ -18,7 +15,6 @@ libfwupdplugin.so.1 libfwupdplugin1 #MINVER# LIBFWUPDPLUGIN_1.0.4@LIBFWUPDPLUGIN_1.0.4 1.0.4 LIBFWUPDPLUGIN_1.0.5@LIBFWUPDPLUGIN_1.0.5 1.0.5 LIBFWUPDPLUGIN_1.0.6@LIBFWUPDPLUGIN_1.0.6 1.0.6 - LIBFWUPDPLUGIN_1.0.7@LIBFWUPDPLUGIN_1.0.7 1.0.7 LIBFWUPDPLUGIN_1.0.8@LIBFWUPDPLUGIN_1.0.8 1.0.8 LIBFWUPDPLUGIN_1.0.9@LIBFWUPDPLUGIN_1.0.9 1.0.9 LIBFWUPDPLUGIN_1.1.0@LIBFWUPDPLUGIN_1.1.0 1.1.0 @@ -51,24 +47,80 @@ libfwupdplugin.so.1 libfwupdplugin1 #MINVER# LIBFWUPDPLUGIN_1.5.5@LIBFWUPDPLUGIN_1.5.5 1.5.5 LIBFWUPDPLUGIN_1.5.6@LIBFWUPDPLUGIN_1.5.6 1.5.6 LIBFWUPDPLUGIN_1.5.7@LIBFWUPDPLUGIN_1.5.7 1.5.7 + LIBFWUPDPLUGIN_1.5.8@LIBFWUPDPLUGIN_1.5.8 1.5.8 + LIBFWUPDPLUGIN_1.6.0@LIBFWUPDPLUGIN_1.6.0 1.6.0 + LIBFWUPDPLUGIN_1.6.1@LIBFWUPDPLUGIN_1.6.1 1.6.1 + LIBFWUPDPLUGIN_1.6.2@LIBFWUPDPLUGIN_1.6.2 1.6.2 + LIBFWUPDPLUGIN_1.7.0@LIBFWUPDPLUGIN_1.7.0 1.7.0 fu_archive_get_type@LIBFWUPDPLUGIN_1.2.2 1.2.2 fu_archive_iterate@LIBFWUPDPLUGIN_1.3.4 1.3.4 fu_archive_lookup_by_fn@LIBFWUPDPLUGIN_1.2.2 1.2.2 fu_archive_new@LIBFWUPDPLUGIN_1.2.2 1.2.2 + fu_backend_coldplug@LIBFWUPDPLUGIN_1.6.1 1.6.1 + fu_backend_device_added@LIBFWUPDPLUGIN_1.6.1 1.6.1 + fu_backend_device_changed@LIBFWUPDPLUGIN_1.6.1 1.6.1 + fu_backend_device_removed@LIBFWUPDPLUGIN_1.6.1 1.6.1 + fu_backend_get_context@LIBFWUPDPLUGIN_1.6.1 1.6.1 + fu_backend_get_devices@LIBFWUPDPLUGIN_1.6.1 1.6.1 + fu_backend_get_enabled@LIBFWUPDPLUGIN_1.6.1 1.6.1 + fu_backend_get_name@LIBFWUPDPLUGIN_1.6.1 1.6.1 + fu_backend_get_type@LIBFWUPDPLUGIN_1.6.1 1.6.1 + fu_backend_lookup_by_id@LIBFWUPDPLUGIN_1.6.1 1.6.1 + fu_backend_set_enabled@LIBFWUPDPLUGIN_1.6.1 1.6.1 + fu_backend_setup@LIBFWUPDPLUGIN_1.6.1 1.6.1 + fu_battery_state_to_string@LIBFWUPDPLUGIN_1.6.0 1.6.0 fu_bluez_device_get_type@LIBFWUPDPLUGIN_1.5.7 1.5.7 + fu_bluez_device_notify_start@LIBFWUPDPLUGIN_1.5.8 1.5.8 + fu_bluez_device_notify_stop@LIBFWUPDPLUGIN_1.5.8 1.5.8 fu_bluez_device_read@LIBFWUPDPLUGIN_1.5.7 1.5.7 fu_bluez_device_read_string@LIBFWUPDPLUGIN_1.5.7 1.5.7 fu_bluez_device_write@LIBFWUPDPLUGIN_1.5.7 1.5.7 + fu_byte_array_align_up@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_byte_array_append_bytes@LIBFWUPDPLUGIN_1.5.8 1.5.8 fu_byte_array_append_uint16@LIBFWUPDPLUGIN_1.3.1 1.3.1 fu_byte_array_append_uint32@LIBFWUPDPLUGIN_1.3.1 1.3.1 + fu_byte_array_append_uint64@LIBFWUPDPLUGIN_1.5.8 1.5.8 fu_byte_array_append_uint8@LIBFWUPDPLUGIN_1.3.1 1.3.1 fu_byte_array_set_size@LIBFWUPDPLUGIN_1.5.0 1.5.0 + fu_byte_array_set_size_full@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_bytes_get_data_safe@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_cabinet_add_file@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_cabinet_export@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_cabinet_get_file@LIBFWUPDPLUGIN_1.6.0 1.6.0 fu_cabinet_get_silo@LIBFWUPDPLUGIN_1.4.0 1.4.0 fu_cabinet_get_type@LIBFWUPDPLUGIN_1.4.0 1.4.0 fu_cabinet_new@LIBFWUPDPLUGIN_1.4.0 1.4.0 fu_cabinet_parse@LIBFWUPDPLUGIN_1.4.0 1.4.0 fu_cabinet_set_jcat_context@LIBFWUPDPLUGIN_1.4.0 1.4.0 fu_cabinet_set_size_max@LIBFWUPDPLUGIN_1.4.0 1.4.0 + fu_cabinet_sign@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_cfu_device_offer_to_string@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_cfu_device_reject_to_string@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_cfu_device_status_to_string@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_cfu_offer_get_bank@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_cfu_offer_get_component_id@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_cfu_offer_get_force_ignore_version@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_cfu_offer_get_force_immediate_reset@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_cfu_offer_get_hw_variant@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_cfu_offer_get_milestone@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_cfu_offer_get_product_id@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_cfu_offer_get_protocol_revision@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_cfu_offer_get_segment_number@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_cfu_offer_get_token@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_cfu_offer_get_type@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_cfu_offer_new@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_cfu_offer_set_bank@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_cfu_offer_set_component_id@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_cfu_offer_set_force_ignore_version@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_cfu_offer_set_force_immediate_reset@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_cfu_offer_set_hw_variant@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_cfu_offer_set_milestone@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_cfu_offer_set_product_id@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_cfu_offer_set_protocol_revision@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_cfu_offer_set_segment_number@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_cfu_offer_set_token@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_cfu_payload_get_type@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_cfu_payload_new@LIBFWUPDPLUGIN_1.7.0 1.7.0 fu_chunk_array_mutable_new@LIBFWUPDPLUGIN_1.5.6 1.5.6 fu_chunk_array_new@LIBFWUPDPLUGIN_1.1.2 1.1.2 fu_chunk_array_new_from_bytes@LIBFWUPDPLUGIN_1.1.2 1.1.2 @@ -87,7 +139,8 @@ libfwupdplugin.so.1 libfwupdplugin1 #MINVER# fu_chunk_set_bytes@LIBFWUPDPLUGIN_1.5.6 1.5.6 fu_chunk_set_idx@LIBFWUPDPLUGIN_1.5.6 1.5.6 fu_chunk_set_page@LIBFWUPDPLUGIN_1.5.6 1.5.6 - fu_chunk_to_string@LIBFWUPDPLUGIN_1.1.2 1.4.6 + fu_chunk_to_string@LIBFWUPDPLUGIN_1.1.2 1.1.2 + fu_common_align_up@LIBFWUPDPLUGIN_1.6.0 1.6.0 fu_common_bytes_align@LIBFWUPDPLUGIN_1.2.4 1.2.4 fu_common_bytes_compare@LIBFWUPDPLUGIN_1.2.6 1.2.6 fu_common_bytes_compare_raw@LIBFWUPDPLUGIN_1.3.2 1.3.2 @@ -95,8 +148,10 @@ libfwupdplugin.so.1 libfwupdplugin1 #MINVER# fu_common_bytes_new_offset@LIBFWUPDPLUGIN_1.5.4 1.5.4 fu_common_bytes_pad@LIBFWUPDPLUGIN_1.3.1 1.3.1 fu_common_cab_build_silo@LIBFWUPDPLUGIN_1.2.0 1.2.0 + fu_common_check_kernel_version@LIBFWUPDPLUGIN_1.6.2 1.6.2 fu_common_cpuid@LIBFWUPDPLUGIN_1.5.0 1.5.0 fu_common_crc16@LIBFWUPDPLUGIN_1.5.0 1.5.0 + fu_common_crc16_full@LIBFWUPDPLUGIN_1.6.2 1.6.2 fu_common_crc32@LIBFWUPDPLUGIN_1.5.0 1.5.0 fu_common_crc32_full@LIBFWUPDPLUGIN_1.5.0 1.5.0 fu_common_crc8@LIBFWUPDPLUGIN_1.5.0 1.5.0 @@ -115,13 +170,13 @@ libfwupdplugin.so.1 libfwupdplugin1 #MINVER# fu_common_get_esp_default@LIBFWUPDPLUGIN_1.4.6 1.4.6 fu_common_get_esp_for_path@LIBFWUPDPLUGIN_1.4.6 1.4.6 fu_common_get_files_recursive@LIBFWUPDPLUGIN_1.0.6 1.0.6 + fu_common_get_firmware_search_path@LIBFWUPDPLUGIN_1.6.2 1.6.2 fu_common_get_memory_size@LIBFWUPDPLUGIN_1.5.6 1.5.6 fu_common_get_path@LIBFWUPDPLUGIN_1.0.8 1.0.8 fu_common_get_volume_by_device@LIBFWUPDPLUGIN_1.5.1 1.5.1 fu_common_get_volume_by_devnum@LIBFWUPDPLUGIN_1.5.1 1.5.1 fu_common_get_volumes_by_kind@LIBFWUPDPLUGIN_1.4.6 1.4.6 fu_common_guid_is_plausible@LIBFWUPDPLUGIN_1.2.5 1.2.5 - fu_common_is_cpu_intel@LIBFWUPDPLUGIN_1.5.0 1.5.0 fu_common_is_live_media@LIBFWUPDPLUGIN_1.4.6 1.4.6 fu_common_kernel_locked_down@LIBFWUPDPLUGIN_1.3.8 1.3.8 fu_common_mkdir_parent@LIBFWUPDPLUGIN_0.9.7 0.9.7 @@ -129,10 +184,14 @@ libfwupdplugin.so.1 libfwupdplugin1 #MINVER# fu_common_read_uint16_safe@LIBFWUPDPLUGIN_1.3.3 1.3.3 fu_common_read_uint32@LIBFWUPDPLUGIN_1.0.3 1.0.3 fu_common_read_uint32_safe@LIBFWUPDPLUGIN_1.3.3 1.3.3 + fu_common_read_uint64@LIBFWUPDPLUGIN_1.5.8 1.5.8 + fu_common_read_uint64_safe@LIBFWUPDPLUGIN_1.5.8 1.5.8 fu_common_read_uint8_safe@LIBFWUPDPLUGIN_1.3.3 1.3.3 fu_common_realpath@LIBFWUPDPLUGIN_1.2.6 1.2.6 + fu_common_reset_firmware_search_path@LIBFWUPDPLUGIN_1.6.2 1.6.2 fu_common_rmtree@LIBFWUPDPLUGIN_0.9.7 0.9.7 fu_common_set_contents_bytes@LIBFWUPDPLUGIN_0.9.5 0.9.5 + fu_common_set_firmware_search_path@LIBFWUPDPLUGIN_1.6.2 1.6.2 fu_common_spawn_sync@LIBFWUPDPLUGIN_0.9.7 0.9.7 fu_common_string_append_kb@LIBFWUPDPLUGIN_1.2.4 1.2.4 fu_common_string_append_ku@LIBFWUPDPLUGIN_1.2.4 1.2.4 @@ -141,44 +200,89 @@ libfwupdplugin.so.1 libfwupdplugin1 #MINVER# fu_common_string_replace@LIBFWUPDPLUGIN_1.2.0 1.2.0 fu_common_strjoin_array@LIBFWUPDPLUGIN_1.5.6 1.5.6 fu_common_strnsplit@LIBFWUPDPLUGIN_1.3.1 1.3.1 + fu_common_strnsplit_full@LIBFWUPDPLUGIN_1.7.0 1.7.0 fu_common_strsafe@LIBFWUPDPLUGIN_1.5.5 1.5.5 fu_common_strstrip@LIBFWUPDPLUGIN_1.1.2 1.1.2 fu_common_strtoull@LIBFWUPDPLUGIN_1.1.2 1.1.2 fu_common_strwidth@LIBFWUPDPLUGIN_1.3.2 1.3.2 fu_common_uri_get_scheme@LIBFWUPDPLUGIN_1.5.6 1.5.6 - fu_common_vercmp@LIBFWUPDPLUGIN_0.3.5 0.3.5 fu_common_vercmp_full@LIBFWUPDPLUGIN_1.3.9 1.3.9 fu_common_version_ensure_semver@LIBFWUPDPLUGIN_1.2.9 1.2.9 fu_common_version_from_uint16@LIBFWUPDPLUGIN_1.2.0 1.2.0 fu_common_version_from_uint32@LIBFWUPDPLUGIN_1.2.0 1.2.0 fu_common_version_from_uint64@LIBFWUPDPLUGIN_1.3.6 1.3.6 fu_common_version_guess_format@LIBFWUPDPLUGIN_1.2.0 1.2.0 - fu_common_version_parse@LIBFWUPDPLUGIN_1.2.0 1.2.0 fu_common_version_parse_from_format@LIBFWUPDPLUGIN_1.3.3 1.3.3 fu_common_version_verify_format@LIBFWUPDPLUGIN_1.2.9 1.2.9 fu_common_write_uint16@LIBFWUPDPLUGIN_1.0.3 1.0.3 + fu_common_write_uint16_safe@LIBFWUPDPLUGIN_1.5.8 1.5.8 fu_common_write_uint32@LIBFWUPDPLUGIN_1.0.3 1.0.3 + fu_common_write_uint32_safe@LIBFWUPDPLUGIN_1.5.8 1.5.8 + fu_common_write_uint64@LIBFWUPDPLUGIN_1.5.8 1.5.8 + fu_common_write_uint64_safe@LIBFWUPDPLUGIN_1.5.8 1.5.8 + fu_common_write_uint8_safe@LIBFWUPDPLUGIN_1.5.8 1.5.8 + fu_context_add_compile_version@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_add_firmware_gtype@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_add_quirk_key@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_add_runtime_version@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_add_udev_subsystem@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_get_battery_level@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_get_battery_state@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_get_battery_threshold@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_get_firmware_gtype_by_id@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_get_firmware_gtype_ids@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_get_hwid_guids@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_get_hwid_replace_value@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_get_hwid_value@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_get_smbios_data@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_get_smbios_integer@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_get_smbios_string@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_get_type@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_get_udev_subsystems@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_has_hwid_guid@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_load_hwinfo@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_load_quirks@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_lookup_quirk_by_id@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_lookup_quirk_by_id_iter@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_new@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_security_changed@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_set_battery_level@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_set_battery_state@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_set_battery_threshold@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_set_compile_versions@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_context_set_runtime_versions@LIBFWUPDPLUGIN_1.6.0 1.6.0 fu_device_activate@LIBFWUPDPLUGIN_1.2.6 1.2.6 fu_device_add_child@LIBFWUPDPLUGIN_1.0.8 1.0.8 fu_device_add_counterpart_guid@LIBFWUPDPLUGIN_1.1.2 1.1.2 fu_device_add_flag@LIBFWUPDPLUGIN_0.1.0 0.1.0 fu_device_add_guid@LIBFWUPDPLUGIN_0.7.2 0.7.2 + fu_device_add_guid_full@LIBFWUPDPLUGIN_1.6.2 1.6.2 fu_device_add_instance_id@LIBFWUPDPLUGIN_1.2.5 1.2.5 fu_device_add_instance_id_full@LIBFWUPDPLUGIN_1.2.9 1.2.9 fu_device_add_internal_flag@LIBFWUPDPLUGIN_1.5.5 1.5.5 fu_device_add_parent_guid@LIBFWUPDPLUGIN_1.0.8 1.0.8 + fu_device_add_parent_physical_id@LIBFWUPDPLUGIN_1.6.2 1.6.2 fu_device_add_possible_plugin@LIBFWUPDPLUGIN_1.5.1 1.5.1 + fu_device_add_private_flag@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_device_add_security_attrs@LIBFWUPDPLUGIN_1.6.0 1.6.0 fu_device_attach@LIBFWUPDPLUGIN_1.0.8 1.0.8 + fu_device_attach_full@LIBFWUPDPLUGIN_1.7.0 1.7.0 fu_device_bind_driver@LIBFWUPDPLUGIN_1.5.0 1.5.0 fu_device_cleanup@LIBFWUPDPLUGIN_1.3.3 1.3.3 fu_device_close@LIBFWUPDPLUGIN_1.1.2 1.1.2 fu_device_convert_instance_ids@LIBFWUPDPLUGIN_1.2.5 1.2.5 fu_device_detach@LIBFWUPDPLUGIN_1.0.8 1.0.8 + fu_device_detach_full@LIBFWUPDPLUGIN_1.7.0 1.7.0 fu_device_dump_firmware@LIBFWUPDPLUGIN_1.5.0 1.5.0 + fu_device_emit_request@LIBFWUPDPLUGIN_1.6.2 1.6.2 fu_device_ensure_id@LIBFWUPDPLUGIN_1.1.2 1.1.2 fu_device_get_alternate@LIBFWUPDPLUGIN_0.7.2 0.7.2 fu_device_get_alternate_id@LIBFWUPDPLUGIN_1.1.0 1.1.0 + fu_device_get_backend_id@LIBFWUPDPLUGIN_1.5.8 1.5.8 + fu_device_get_battery_level@LIBFWUPDPLUGIN_1.5.8 1.5.8 + fu_device_get_battery_threshold@LIBFWUPDPLUGIN_1.6.0 1.6.0 fu_device_get_children@LIBFWUPDPLUGIN_1.0.8 1.0.8 + fu_device_get_context@LIBFWUPDPLUGIN_1.6.0 1.6.0 fu_device_get_custom_flags@LIBFWUPDPLUGIN_1.1.0 1.1.0 fu_device_get_equivalent_id@LIBFWUPDPLUGIN_0.6.1 0.6.1 fu_device_get_firmware_size_max@LIBFWUPDPLUGIN_1.2.6 1.2.6 @@ -191,27 +295,30 @@ libfwupdplugin.so.1 libfwupdplugin1 #MINVER# fu_device_get_order@LIBFWUPDPLUGIN_1.0.8 1.0.8 fu_device_get_parent@LIBFWUPDPLUGIN_1.0.8 1.0.8 fu_device_get_parent_guids@LIBFWUPDPLUGIN_1.0.8 1.0.8 + fu_device_get_parent_physical_ids@LIBFWUPDPLUGIN_1.6.2 1.6.2 fu_device_get_physical_id@LIBFWUPDPLUGIN_1.1.2 1.1.2 fu_device_get_possible_plugins@LIBFWUPDPLUGIN_1.3.3 1.3.3 fu_device_get_priority@LIBFWUPDPLUGIN_1.1.1 1.1.1 - fu_device_get_progress@LIBFWUPDPLUGIN_1.0.3 1.0.3 - fu_device_get_protocol@LIBFWUPDPLUGIN_1.3.5 1.3.5 + fu_device_get_private_flags@LIBFWUPDPLUGIN_1.6.2 1.6.2 fu_device_get_proxy@LIBFWUPDPLUGIN_1.4.1 1.4.1 fu_device_get_proxy_guid@LIBFWUPDPLUGIN_1.4.1 1.4.1 - fu_device_get_quirks@LIBFWUPDPLUGIN_1.0.3 1.0.3 + fu_device_get_proxy_with_fallback@LIBFWUPDPLUGIN_1.6.2 1.6.2 fu_device_get_release_default@LIBFWUPDPLUGIN_1.0.5 1.0.5 fu_device_get_remove_delay@LIBFWUPDPLUGIN_1.0.2 1.0.2 + fu_device_get_request_cnt@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_device_get_results@LIBFWUPDPLUGIN_1.6.2 1.6.2 fu_device_get_root@LIBFWUPDPLUGIN_1.4.0 1.4.0 fu_device_get_specialized_gtype@LIBFWUPDPLUGIN_1.3.3 1.3.3 - fu_device_get_status@LIBFWUPDPLUGIN_1.0.3 1.0.3 fu_device_get_type@LIBFWUPDPLUGIN_0.1.0 0.1.0 - fu_device_has_custom_flag@LIBFWUPDPLUGIN_1.1.0 1.1.0 fu_device_has_guid@LIBFWUPDPLUGIN_1.2.2 1.2.2 fu_device_has_internal_flag@LIBFWUPDPLUGIN_1.5.5 1.5.5 fu_device_has_parent_guid@LIBFWUPDPLUGIN_1.0.8 1.0.8 + fu_device_has_parent_physical_id@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_device_has_private_flag@LIBFWUPDPLUGIN_1.6.2 1.6.2 fu_device_incorporate@LIBFWUPDPLUGIN_1.1.0 1.1.0 fu_device_incorporate_flag@LIBFWUPDPLUGIN_1.3.5 1.3.5 fu_device_incorporate_from_component@LIBFWUPDPLUGIN_1.2.4 1.2.4 + fu_device_inhibit@LIBFWUPDPLUGIN_1.6.0 1.6.0 fu_device_internal_flag_from_string@LIBFWUPDPLUGIN_1.5.5 1.5.5 fu_device_internal_flag_to_string@LIBFWUPDPLUGIN_1.5.5 1.5.5 fu_device_locker_close@LIBFWUPDPLUGIN_1.4.0 1.4.0 @@ -219,6 +326,7 @@ libfwupdplugin.so.1 libfwupdplugin1 #MINVER# fu_device_locker_new@LIBFWUPDPLUGIN_1.0.0 1.0.0 fu_device_locker_new_full@LIBFWUPDPLUGIN_1.0.0 1.0.0 fu_device_new@LIBFWUPDPLUGIN_0.1.0 0.1.0 + fu_device_new_with_context@LIBFWUPDPLUGIN_1.6.2 1.6.2 fu_device_open@LIBFWUPDPLUGIN_1.1.2 1.1.2 fu_device_poll@LIBFWUPDPLUGIN_1.1.2 1.1.2 fu_device_prepare@LIBFWUPDPLUGIN_1.3.3 1.3.3 @@ -226,9 +334,13 @@ libfwupdplugin.so.1 libfwupdplugin1 #MINVER# fu_device_probe@LIBFWUPDPLUGIN_1.1.2 1.1.2 fu_device_probe_invalidate@LIBFWUPDPLUGIN_1.1.2 1.1.2 fu_device_read_firmware@LIBFWUPDPLUGIN_1.0.8 1.0.8 + fu_device_register_private_flag@LIBFWUPDPLUGIN_1.6.2 1.6.2 fu_device_reload@LIBFWUPDPLUGIN_1.3.3 1.3.3 + fu_device_remove_child@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_device_remove_flag@LIBFWUPDPLUGIN_1.6.0 1.6.0 fu_device_remove_internal_flag@LIBFWUPDPLUGIN_1.5.5 1.5.5 fu_device_remove_metadata@LIBFWUPDPLUGIN_1.3.3 1.3.3 + fu_device_remove_private_flag@LIBFWUPDPLUGIN_1.6.2 1.6.2 fu_device_report_metadata_post@LIBFWUPDPLUGIN_1.5.0 1.5.0 fu_device_report_metadata_pre@LIBFWUPDPLUGIN_1.5.0 1.5.0 fu_device_rescan@LIBFWUPDPLUGIN_1.3.1 1.3.1 @@ -238,6 +350,10 @@ libfwupdplugin.so.1 libfwupdplugin1 #MINVER# fu_device_retry_set_delay@LIBFWUPDPLUGIN_1.4.0 1.4.0 fu_device_set_alternate@LIBFWUPDPLUGIN_0.7.2 0.7.2 fu_device_set_alternate_id@LIBFWUPDPLUGIN_1.1.0 1.1.0 + fu_device_set_backend_id@LIBFWUPDPLUGIN_1.5.8 1.5.8 + fu_device_set_battery_level@LIBFWUPDPLUGIN_1.5.8 1.5.8 + fu_device_set_battery_threshold@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_device_set_context@LIBFWUPDPLUGIN_1.6.0 1.6.0 fu_device_set_custom_flags@LIBFWUPDPLUGIN_1.1.0 1.1.0 fu_device_set_equivalent_id@LIBFWUPDPLUGIN_0.6.1 0.6.1 fu_device_set_firmware_size@LIBFWUPDPLUGIN_1.2.6 1.2.6 @@ -254,22 +370,21 @@ libfwupdplugin.so.1 libfwupdplugin1 #MINVER# fu_device_set_physical_id@LIBFWUPDPLUGIN_1.1.2 1.1.2 fu_device_set_poll_interval@LIBFWUPDPLUGIN_1.1.2 1.1.2 fu_device_set_priority@LIBFWUPDPLUGIN_1.1.1 1.1.1 - fu_device_set_progress@LIBFWUPDPLUGIN_1.0.3 1.0.3 - fu_device_set_progress_full@LIBFWUPDPLUGIN_1.0.3 1.0.3 - fu_device_set_protocol@LIBFWUPDPLUGIN_1.3.5 1.3.5 + fu_device_set_private_flags@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_device_set_progress@LIBFWUPDPLUGIN_1.7.0 1.7.0 fu_device_set_proxy@LIBFWUPDPLUGIN_1.4.1 1.4.1 fu_device_set_proxy_guid@LIBFWUPDPLUGIN_1.4.1 1.4.1 - fu_device_set_quirks@LIBFWUPDPLUGIN_1.0.3 1.0.3 fu_device_set_remove_delay@LIBFWUPDPLUGIN_1.0.2 1.0.2 - fu_device_set_status@LIBFWUPDPLUGIN_1.0.3 1.0.3 + fu_device_set_update_state@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_device_set_vendor@LIBFWUPDPLUGIN_1.6.2 1.6.2 fu_device_set_version@LIBFWUPDPLUGIN_1.2.9 1.2.9 fu_device_set_version_bootloader@LIBFWUPDPLUGIN_1.4.0 1.4.0 fu_device_set_version_format@LIBFWUPDPLUGIN_1.4.0 1.4.0 fu_device_set_version_lowest@LIBFWUPDPLUGIN_1.4.0 1.4.0 fu_device_setup@LIBFWUPDPLUGIN_1.1.2 1.1.2 - fu_device_sleep_with_progress@LIBFWUPDPLUGIN_1.5.0 1.5.0 fu_device_to_string@LIBFWUPDPLUGIN_0.9.8 0.9.8 fu_device_unbind_driver@LIBFWUPDPLUGIN_1.5.0 1.5.0 + fu_device_uninhibit@LIBFWUPDPLUGIN_1.6.0 1.6.0 fu_device_write_firmware@LIBFWUPDPLUGIN_1.0.8 1.0.8 fu_dfu_firmware_get_pid@LIBFWUPDPLUGIN_1.3.3 1.3.3 fu_dfu_firmware_get_release@LIBFWUPDPLUGIN_1.3.3 1.3.3 @@ -283,6 +398,15 @@ libfwupdplugin.so.1 libfwupdplugin1 #MINVER# fu_dfu_firmware_set_vid@LIBFWUPDPLUGIN_1.3.3 1.3.3 fu_dfuse_firmware_get_type@LIBFWUPDPLUGIN_1.5.6 1.5.6 fu_dfuse_firmware_new@LIBFWUPDPLUGIN_1.5.6 1.5.6 + fu_efi_firmware_file_get_type@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_efi_firmware_file_new@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_efi_firmware_filesystem_get_type@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_efi_firmware_filesystem_new@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_efi_firmware_section_get_type@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_efi_firmware_section_new@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_efi_firmware_volume_get_type@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_efi_firmware_volume_new@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_efi_guid_to_name@LIBFWUPDPLUGIN_1.6.2 1.6.2 fu_efi_signature_get_kind@LIBFWUPDPLUGIN_1.5.5 1.5.5 fu_efi_signature_get_owner@LIBFWUPDPLUGIN_1.5.5 1.5.5 fu_efi_signature_get_type@LIBFWUPDPLUGIN_1.5.5 1.5.5 @@ -302,47 +426,35 @@ libfwupdplugin.so.1 libfwupdplugin1 #MINVER# fu_efivar_set_data_bytes@LIBFWUPDPLUGIN_1.5.0 1.5.0 fu_efivar_space_used@LIBFWUPDPLUGIN_1.5.1 1.5.1 fu_efivar_supported@LIBFWUPDPLUGIN_1.4.0 1.4.0 + fu_firmware_add_chunk@LIBFWUPDPLUGIN_1.6.0 1.6.0 fu_firmware_add_flag@LIBFWUPDPLUGIN_1.5.0 1.5.0 fu_firmware_add_image@LIBFWUPDPLUGIN_1.3.1 1.3.1 fu_firmware_build@LIBFWUPDPLUGIN_1.5.0 1.5.0 + fu_firmware_build_from_xml@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_firmware_export@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_firmware_export_to_xml@LIBFWUPDPLUGIN_1.6.0 1.6.0 fu_firmware_flag_from_string@LIBFWUPDPLUGIN_1.5.0 1.5.0 fu_firmware_flag_to_string@LIBFWUPDPLUGIN_1.5.0 1.5.0 + fu_firmware_get_addr@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_firmware_get_alignment@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_firmware_get_bytes@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_firmware_get_checksum@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_firmware_get_chunks@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_firmware_get_filename@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_firmware_get_id@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_firmware_get_idx@LIBFWUPDPLUGIN_1.6.0 1.6.0 fu_firmware_get_image_by_checksum@LIBFWUPDPLUGIN_1.5.5 1.5.5 fu_firmware_get_image_by_id@LIBFWUPDPLUGIN_1.3.1 1.3.1 fu_firmware_get_image_by_id_bytes@LIBFWUPDPLUGIN_1.3.1 1.3.1 fu_firmware_get_image_by_idx@LIBFWUPDPLUGIN_1.3.1 1.3.1 fu_firmware_get_image_by_idx_bytes@LIBFWUPDPLUGIN_1.3.1 1.3.1 - fu_firmware_get_image_default@LIBFWUPDPLUGIN_1.3.1 1.3.1 - fu_firmware_get_image_default_bytes@LIBFWUPDPLUGIN_1.3.1 1.3.1 fu_firmware_get_images@LIBFWUPDPLUGIN_1.3.1 1.3.1 + fu_firmware_get_offset@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_firmware_get_size@LIBFWUPDPLUGIN_1.6.0 1.6.0 fu_firmware_get_type@LIBFWUPDPLUGIN_1.3.1 1.3.1 fu_firmware_get_version@LIBFWUPDPLUGIN_1.3.3 1.3.3 fu_firmware_get_version_raw@LIBFWUPDPLUGIN_1.5.7 1.5.7 fu_firmware_has_flag@LIBFWUPDPLUGIN_1.5.0 1.5.0 - fu_firmware_image_add_chunk@LIBFWUPDPLUGIN_1.5.6 1.5.6 - fu_firmware_image_build@LIBFWUPDPLUGIN_1.5.0 1.5.0 - fu_firmware_image_get_addr@LIBFWUPDPLUGIN_1.3.1 1.3.1 - fu_firmware_image_get_bytes@LIBFWUPDPLUGIN_1.5.0 1.5.0 - fu_firmware_image_get_checksum@LIBFWUPDPLUGIN_1.5.5 1.5.5 - fu_firmware_image_get_chunks@LIBFWUPDPLUGIN_1.5.6 1.5.6 - fu_firmware_image_get_filename@LIBFWUPDPLUGIN_1.5.0 1.5.0 - fu_firmware_image_get_id@LIBFWUPDPLUGIN_1.3.1 1.3.1 - fu_firmware_image_get_idx@LIBFWUPDPLUGIN_1.3.1 1.3.1 - fu_firmware_image_get_offset@LIBFWUPDPLUGIN_1.5.0 1.5.0 - fu_firmware_image_get_type@LIBFWUPDPLUGIN_1.3.1 1.3.1 - fu_firmware_image_get_version@LIBFWUPDPLUGIN_1.3.4 1.3.4 - fu_firmware_image_new@LIBFWUPDPLUGIN_1.3.1 1.3.1 - fu_firmware_image_parse@LIBFWUPDPLUGIN_1.5.0 1.5.0 - fu_firmware_image_set_addr@LIBFWUPDPLUGIN_1.3.1 1.3.1 - fu_firmware_image_set_bytes@LIBFWUPDPLUGIN_1.3.1 1.3.1 - fu_firmware_image_set_filename@LIBFWUPDPLUGIN_1.5.0 1.5.0 - fu_firmware_image_set_id@LIBFWUPDPLUGIN_1.3.1 1.3.1 - fu_firmware_image_set_idx@LIBFWUPDPLUGIN_1.3.1 1.3.1 - fu_firmware_image_set_offset@LIBFWUPDPLUGIN_1.5.0 1.5.0 - fu_firmware_image_set_version@LIBFWUPDPLUGIN_1.3.4 1.3.4 - fu_firmware_image_to_string@LIBFWUPDPLUGIN_1.3.1 1.3.1 - fu_firmware_image_write@LIBFWUPDPLUGIN_1.3.3 1.3.3 - fu_firmware_image_write_chunk@LIBFWUPDPLUGIN_1.3.1 1.3.1 fu_firmware_new@LIBFWUPDPLUGIN_1.3.1 1.3.1 fu_firmware_new_from_bytes@LIBFWUPDPLUGIN_1.3.1 1.3.1 fu_firmware_new_from_gtypes@LIBFWUPDPLUGIN_1.5.6 1.5.6 @@ -352,21 +464,25 @@ libfwupdplugin.so.1 libfwupdplugin1 #MINVER# fu_firmware_remove_image@LIBFWUPDPLUGIN_1.5.0 1.5.0 fu_firmware_remove_image_by_id@LIBFWUPDPLUGIN_1.5.0 1.5.0 fu_firmware_remove_image_by_idx@LIBFWUPDPLUGIN_1.5.0 1.5.0 + fu_firmware_set_addr@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_firmware_set_alignment@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_firmware_set_bytes@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_firmware_set_filename@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_firmware_set_id@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_firmware_set_idx@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_firmware_set_offset@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_firmware_set_size@LIBFWUPDPLUGIN_1.6.0 1.6.0 fu_firmware_set_version@LIBFWUPDPLUGIN_1.3.3 1.3.3 fu_firmware_set_version_raw@LIBFWUPDPLUGIN_1.5.7 1.5.7 - fu_firmware_strparse_uint16@LIBFWUPDPLUGIN_1.3.1 1.3.1 fu_firmware_strparse_uint16_safe@LIBFWUPDPLUGIN_1.5.6 1.5.6 - fu_firmware_strparse_uint24@LIBFWUPDPLUGIN_1.3.1 1.3.1 fu_firmware_strparse_uint24_safe@LIBFWUPDPLUGIN_1.5.6 1.5.6 - fu_firmware_strparse_uint32@LIBFWUPDPLUGIN_1.3.1 1.3.1 fu_firmware_strparse_uint32_safe@LIBFWUPDPLUGIN_1.5.6 1.5.6 - fu_firmware_strparse_uint4@LIBFWUPDPLUGIN_1.3.1 1.3.1 fu_firmware_strparse_uint4_safe@LIBFWUPDPLUGIN_1.5.6 1.5.6 - fu_firmware_strparse_uint8@LIBFWUPDPLUGIN_1.3.1 1.3.1 fu_firmware_strparse_uint8_safe@LIBFWUPDPLUGIN_1.5.6 1.5.6 fu_firmware_to_string@LIBFWUPDPLUGIN_1.3.1 1.3.1 fu_firmware_tokenize@LIBFWUPDPLUGIN_1.3.2 1.3.2 fu_firmware_write@LIBFWUPDPLUGIN_1.3.1 1.3.1 + fu_firmware_write_chunk@LIBFWUPDPLUGIN_1.6.0 1.6.0 fu_firmware_write_file@LIBFWUPDPLUGIN_1.3.3 1.3.3 fu_fmap_firmware_get_type@LIBFWUPDPLUGIN_1.5.0 1.5.0 fu_fmap_firmware_new@LIBFWUPDPLUGIN_1.5.0 1.5.0 @@ -388,9 +504,30 @@ libfwupdplugin.so.1 libfwupdplugin1 #MINVER# fu_hwids_has_guid@LIBFWUPDPLUGIN_0.9.3 0.9.3 fu_hwids_new@LIBFWUPDPLUGIN_0.9.3 0.9.3 fu_hwids_setup@LIBFWUPDPLUGIN_0.9.3 0.9.3 + fu_i2c_device_get_bus_number@LIBFWUPDPLUGIN_1.6.1 1.6.1 + fu_i2c_device_get_type@LIBFWUPDPLUGIN_1.6.1 1.6.1 + fu_i2c_device_read@LIBFWUPDPLUGIN_1.6.1 1.6.1 + fu_i2c_device_read_full@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_i2c_device_set_bus_number@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_i2c_device_write@LIBFWUPDPLUGIN_1.6.1 1.6.1 + fu_i2c_device_write_full@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_ifd_access_to_string@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_ifd_bios_get_type@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_ifd_bios_new@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_ifd_firmware_check_jedec_cmd@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_ifd_firmware_get_type@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_ifd_firmware_new@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_ifd_image_get_access@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_ifd_image_get_type@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_ifd_image_new@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_ifd_image_set_access@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_ifd_region_to_access@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_ifd_region_to_name@LIBFWUPDPLUGIN_1.6.2 1.6.2 + fu_ifd_region_to_string@LIBFWUPDPLUGIN_1.6.2 1.6.2 fu_ihex_firmware_get_records@LIBFWUPDPLUGIN_1.3.4 1.3.4 fu_ihex_firmware_get_type@LIBFWUPDPLUGIN_1.3.1 1.3.1 fu_ihex_firmware_new@LIBFWUPDPLUGIN_1.3.1 1.3.1 + fu_ihex_firmware_set_padding_value@LIBFWUPDPLUGIN_1.6.0 1.6.0 fu_io_channel_get_type@LIBFWUPDPLUGIN_1.2.2 1.2.2 fu_io_channel_new_file@LIBFWUPDPLUGIN_1.2.2 1.2.2 fu_io_channel_read_byte_array@LIBFWUPDPLUGIN_1.3.2 1.3.2 @@ -402,95 +539,94 @@ libfwupdplugin.so.1 libfwupdplugin1 #MINVER# fu_io_channel_write_byte_array@LIBFWUPDPLUGIN_1.3.2 1.3.2 fu_io_channel_write_bytes@LIBFWUPDPLUGIN_1.2.2 1.2.2 fu_io_channel_write_raw@LIBFWUPDPLUGIN_1.2.2 1.2.2 + fu_kenv_get_string@LIBFWUPDPLUGIN_1.6.1 1.6.1 fu_memcpy_safe@LIBFWUPDPLUGIN_1.3.1 1.3.1 fu_memdup_safe@LIBFWUPDPLUGIN_1.5.6 1.5.6 - fu_plugin_add_compile_version@LIBFWUPDPLUGIN_1.0.7 1.0.7 + fu_plugin_add_device_gtype@LIBFWUPDPLUGIN_1.6.0 1.6.0 fu_plugin_add_firmware_gtype@LIBFWUPDPLUGIN_1.3.3 1.3.3 fu_plugin_add_report_metadata@LIBFWUPDPLUGIN_1.0.4 1.0.4 fu_plugin_add_rule@LIBFWUPDPLUGIN_1.0.0 1.0.0 - fu_plugin_add_runtime_version@LIBFWUPDPLUGIN_1.0.7 1.0.7 - fu_plugin_add_udev_subsystem@LIBFWUPDPLUGIN_1.1.2 1.1.2 + fu_plugin_add_udev_subsystem@LIBFWUPDPLUGIN_1.6.2 1.6.2 fu_plugin_alloc_data@LIBFWUPDPLUGIN_0.8.0 0.8.0 fu_plugin_cache_add@LIBFWUPDPLUGIN_0.8.0 0.8.0 fu_plugin_cache_lookup@LIBFWUPDPLUGIN_0.8.0 0.8.0 fu_plugin_cache_remove@LIBFWUPDPLUGIN_0.8.0 0.8.0 - fu_plugin_check_hwid@LIBFWUPDPLUGIN_0.9.1 0.9.1 fu_plugin_device_add@LIBFWUPDPLUGIN_0.8.0 0.8.0 fu_plugin_device_register@LIBFWUPDPLUGIN_0.9.7 0.9.7 fu_plugin_device_remove@LIBFWUPDPLUGIN_0.8.0 0.8.0 fu_plugin_get_build_hash@LIBFWUPDPLUGIN_1.2.4 1.2.4 fu_plugin_get_config_value@LIBFWUPDPLUGIN_1.0.6 1.0.6 fu_plugin_get_config_value_boolean@LIBFWUPDPLUGIN_1.4.0 1.4.0 + fu_plugin_get_context@LIBFWUPDPLUGIN_1.6.0 1.6.0 fu_plugin_get_data@LIBFWUPDPLUGIN_0.8.0 0.8.0 fu_plugin_get_devices@LIBFWUPDPLUGIN_1.5.6 1.5.6 - fu_plugin_get_dmi_value@LIBFWUPDPLUGIN_0.9.7 0.9.7 - fu_plugin_get_enabled@LIBFWUPDPLUGIN_0.8.0 0.8.0 - fu_plugin_get_hwid_replace_value@LIBFWUPDPLUGIN_1.3.3 1.3.3 - fu_plugin_get_hwids@LIBFWUPDPLUGIN_1.1.1 1.1.1 fu_plugin_get_name@LIBFWUPDPLUGIN_0.8.0 0.8.0 fu_plugin_get_order@LIBFWUPDPLUGIN_1.0.0 1.0.0 fu_plugin_get_priority@LIBFWUPDPLUGIN_1.1.1 1.1.1 - fu_plugin_get_quirks@LIBFWUPDPLUGIN_1.0.1 1.0.1 fu_plugin_get_report_metadata@LIBFWUPDPLUGIN_1.0.4 1.0.4 fu_plugin_get_rules@LIBFWUPDPLUGIN_1.0.0 1.0.0 - fu_plugin_get_smbios_data@LIBFWUPDPLUGIN_0.9.8 0.9.8 - fu_plugin_get_smbios_string@LIBFWUPDPLUGIN_0.9.8 0.9.8 fu_plugin_get_type@LIBFWUPDPLUGIN_0.8.0 0.8.0 - fu_plugin_get_usb_context@LIBFWUPDPLUGIN_0.8.0 0.8.0 fu_plugin_guess_name_from_fn@LIBFWUPDPLUGIN_1.0.8 1.0.8 fu_plugin_has_custom_flag@LIBFWUPDPLUGIN_1.3.1 1.3.1 fu_plugin_has_rule@LIBFWUPDPLUGIN_1.0.0 1.0.0 fu_plugin_is_open@LIBFWUPDPLUGIN_1.3.5 1.3.5 - fu_plugin_lookup_quirk_by_id@LIBFWUPDPLUGIN_1.0.1 1.0.1 - fu_plugin_lookup_quirk_by_id_as_uint64@LIBFWUPDPLUGIN_1.1.2 1.1.2 fu_plugin_name_compare@LIBFWUPDPLUGIN_1.0.8 1.0.8 fu_plugin_new@LIBFWUPDPLUGIN_0.8.0 0.8.0 fu_plugin_open@LIBFWUPDPLUGIN_0.8.0 0.8.0 fu_plugin_order_compare@LIBFWUPDPLUGIN_1.0.8 1.0.8 - fu_plugin_request_recoldplug@LIBFWUPDPLUGIN_0.8.0 0.8.0 fu_plugin_runner_activate@LIBFWUPDPLUGIN_1.2.6 1.2.6 fu_plugin_runner_add_security_attrs@LIBFWUPDPLUGIN_1.5.0 1.5.0 + fu_plugin_runner_attach@LIBFWUPDPLUGIN_1.7.0 1.7.0 fu_plugin_runner_backend_device_added@LIBFWUPDPLUGIN_1.5.6 1.5.6 fu_plugin_runner_backend_device_changed@LIBFWUPDPLUGIN_1.5.6 1.5.6 + fu_plugin_runner_cleanup@LIBFWUPDPLUGIN_1.7.0 1.7.0 fu_plugin_runner_clear_results@LIBFWUPDPLUGIN_0.8.0 0.8.0 fu_plugin_runner_coldplug@LIBFWUPDPLUGIN_0.8.0 0.8.0 fu_plugin_runner_coldplug_cleanup@LIBFWUPDPLUGIN_0.8.0 0.8.0 fu_plugin_runner_coldplug_prepare@LIBFWUPDPLUGIN_0.8.0 0.8.0 fu_plugin_runner_composite_cleanup@LIBFWUPDPLUGIN_1.0.9 1.0.9 fu_plugin_runner_composite_prepare@LIBFWUPDPLUGIN_1.0.9 1.0.9 + fu_plugin_runner_detach@LIBFWUPDPLUGIN_1.7.0 1.7.0 fu_plugin_runner_device_added@LIBFWUPDPLUGIN_1.5.0 1.5.0 fu_plugin_runner_device_created@LIBFWUPDPLUGIN_1.4.0 1.4.0 fu_plugin_runner_device_register@LIBFWUPDPLUGIN_0.9.7 0.9.7 fu_plugin_runner_device_removed@LIBFWUPDPLUGIN_1.1.2 1.1.2 fu_plugin_runner_get_results@LIBFWUPDPLUGIN_0.8.0 0.8.0 - fu_plugin_runner_recoldplug@LIBFWUPDPLUGIN_1.0.4 1.0.4 + fu_plugin_runner_prepare@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_plugin_runner_reload@LIBFWUPDPLUGIN_1.7.0 1.7.0 fu_plugin_runner_startup@LIBFWUPDPLUGIN_0.8.0 0.8.0 - fu_plugin_runner_udev_device_added@LIBFWUPDPLUGIN_1.0.2 1.0.2 - fu_plugin_runner_udev_device_changed@LIBFWUPDPLUGIN_1.0.2 1.0.2 fu_plugin_runner_unlock@LIBFWUPDPLUGIN_0.8.0 0.8.0 - fu_plugin_runner_update@LIBFWUPDPLUGIN_0.8.0 0.8.0 - fu_plugin_runner_update_attach@LIBFWUPDPLUGIN_1.1.2 1.1.2 - fu_plugin_runner_update_cleanup@LIBFWUPDPLUGIN_1.1.2 1.1.2 - fu_plugin_runner_update_detach@LIBFWUPDPLUGIN_1.1.2 1.1.2 - fu_plugin_runner_update_prepare@LIBFWUPDPLUGIN_1.1.2 1.1.2 - fu_plugin_runner_update_reload@LIBFWUPDPLUGIN_1.1.2 1.1.2 - fu_plugin_runner_usb_device_added@LIBFWUPDPLUGIN_1.0.2 1.0.2 fu_plugin_runner_verify@LIBFWUPDPLUGIN_0.8.0 0.8.0 - fu_plugin_security_changed@LIBFWUPDPLUGIN_1.5.0 1.5.0 + fu_plugin_runner_write_firmware@LIBFWUPDPLUGIN_1.7.0 1.7.0 fu_plugin_set_build_hash@LIBFWUPDPLUGIN_1.2.4 1.2.4 - fu_plugin_set_coldplug_delay@LIBFWUPDPLUGIN_0.8.0 0.8.0 - fu_plugin_set_compile_versions@LIBFWUPDPLUGIN_1.0.7 1.0.7 - fu_plugin_set_device_gtype@LIBFWUPDPLUGIN_1.3.3 1.3.3 - fu_plugin_set_enabled@LIBFWUPDPLUGIN_0.8.0 0.8.0 - fu_plugin_set_hwids@LIBFWUPDPLUGIN_0.9.7 0.9.7 + fu_plugin_set_config_value@LIBFWUPDPLUGIN_1.7.0 1.7.0 fu_plugin_set_name@LIBFWUPDPLUGIN_0.8.0 0.8.0 fu_plugin_set_order@LIBFWUPDPLUGIN_1.0.0 1.0.0 fu_plugin_set_priority@LIBFWUPDPLUGIN_1.0.0 1.0.0 - fu_plugin_set_quirks@LIBFWUPDPLUGIN_1.0.1 1.0.1 - fu_plugin_set_runtime_versions@LIBFWUPDPLUGIN_1.0.7 1.0.7 - fu_plugin_set_smbios@LIBFWUPDPLUGIN_1.0.0 1.0.0 - fu_plugin_set_udev_subsystems@LIBFWUPDPLUGIN_1.1.2 1.1.2 - fu_plugin_set_usb_context@LIBFWUPDPLUGIN_0.8.0 0.8.0 + fu_progress_add_flag@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_progress_add_step@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_progress_finished@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_progress_flag_from_string@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_progress_flag_to_string@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_progress_get_child@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_progress_get_id@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_progress_get_percentage@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_progress_get_status@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_progress_get_steps@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_progress_get_type@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_progress_has_flag@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_progress_new@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_progress_remove_flag@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_progress_reset@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_progress_set_id@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_progress_set_percentage@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_progress_set_percentage_full@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_progress_set_profile@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_progress_set_status@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_progress_set_steps@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_progress_sleep@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_progress_step_done@LIBFWUPDPLUGIN_1.7.0 1.7.0 + fu_quirks_add_possible_key@LIBFWUPDPLUGIN_1.5.8 1.5.8 fu_quirks_get_type@LIBFWUPDPLUGIN_1.0.1 1.0.1 fu_quirks_load@LIBFWUPDPLUGIN_1.0.1 1.0.1 fu_quirks_lookup_by_id@LIBFWUPDPLUGIN_1.0.1 1.0.1 @@ -511,13 +647,16 @@ libfwupdplugin.so.1 libfwupdplugin1 #MINVER# fu_smbios_new@LIBFWUPDPLUGIN_1.0.0 1.0.0 fu_smbios_setup@LIBFWUPDPLUGIN_1.0.0 1.0.0 fu_smbios_setup_from_file@LIBFWUPDPLUGIN_1.0.0 1.0.0 + fu_smbios_setup_from_kernel@LIBFWUPDPLUGIN_1.6.2 1.6.2 fu_smbios_setup_from_path@LIBFWUPDPLUGIN_1.0.0 1.0.0 fu_smbios_to_string@LIBFWUPDPLUGIN_1.0.0 1.0.0 fu_srec_firmware_get_records@LIBFWUPDPLUGIN_1.3.2 1.3.2 fu_srec_firmware_get_type@LIBFWUPDPLUGIN_1.3.2 1.3.2 fu_srec_firmware_new@LIBFWUPDPLUGIN_1.3.2 1.3.2 + fu_srec_firmware_record_get_type@LIBFWUPDPLUGIN_1.6.1 1.6.1 fu_srec_firmware_record_new@LIBFWUPDPLUGIN_1.3.2 1.3.2 fu_udev_device_emit_changed@LIBFWUPDPLUGIN_1.1.2 1.1.2 + fu_udev_device_get_children_with_subsystem@LIBFWUPDPLUGIN_1.6.2 1.6.2 fu_udev_device_get_dev@LIBFWUPDPLUGIN_1.1.2 1.1.2 fu_udev_device_get_device_file@LIBFWUPDPLUGIN_1.3.1 1.3.1 fu_udev_device_get_devtype@LIBFWUPDPLUGIN_1.4.5 1.4.5 @@ -527,6 +666,7 @@ libfwupdplugin.so.1 libfwupdplugin1 #MINVER# fu_udev_device_get_number@LIBFWUPDPLUGIN_1.5.0 1.5.0 fu_udev_device_get_parent_name@LIBFWUPDPLUGIN_1.4.5 1.4.5 fu_udev_device_get_revision@LIBFWUPDPLUGIN_1.1.2 1.1.2 + fu_udev_device_get_siblings_with_subsystem@LIBFWUPDPLUGIN_1.6.0 1.6.0 fu_udev_device_get_slot_depth@LIBFWUPDPLUGIN_1.2.4 1.2.4 fu_udev_device_get_subsystem@LIBFWUPDPLUGIN_1.1.2 1.1.2 fu_udev_device_get_subsystem_model@LIBFWUPDPLUGIN_1.5.0 1.5.0 @@ -541,10 +681,11 @@ libfwupdplugin.so.1 libfwupdplugin1 #MINVER# fu_udev_device_pread_full@LIBFWUPDPLUGIN_1.4.5 1.4.5 fu_udev_device_pwrite@LIBFWUPDPLUGIN_1.3.3 1.3.3 fu_udev_device_pwrite_full@LIBFWUPDPLUGIN_1.4.5 1.4.5 + fu_udev_device_set_dev@LIBFWUPDPLUGIN_1.6.2 1.6.2 fu_udev_device_set_fd@LIBFWUPDPLUGIN_1.3.3 1.3.3 fu_udev_device_set_flags@LIBFWUPDPLUGIN_1.3.6 1.3.6 + fu_udev_device_set_logical_id@LIBFWUPDPLUGIN_1.5.8 1.5.8 fu_udev_device_set_physical_id@LIBFWUPDPLUGIN_1.1.2 1.1.2 - fu_udev_device_set_readonly@LIBFWUPDPLUGIN_1.3.3 1.3.3 fu_udev_device_write_sysfs@LIBFWUPDPLUGIN_1.4.5 1.4.5 fu_usb_device_find_udev_device@LIBFWUPDPLUGIN_1.3.2 1.3.2 fu_usb_device_get_dev@LIBFWUPDPLUGIN_1.0.2 1.0.2 @@ -556,6 +697,7 @@ libfwupdplugin.so.1 libfwupdplugin1 #MINVER# fu_usb_device_is_open@LIBFWUPDPLUGIN_1.0.3 1.0.3 fu_usb_device_new@LIBFWUPDPLUGIN_1.0.2 1.0.2 fu_usb_device_set_dev@LIBFWUPDPLUGIN_1.0.2 1.0.2 + fu_version_string@LIBFWUPDPLUGIN_1.6.1 1.6.1 fu_volume_check_free_space@LIBFWUPDPLUGIN_1.4.6 1.4.6 fu_volume_get_id@LIBFWUPDPLUGIN_1.4.6 1.4.6 fu_volume_get_id_type@LIBFWUPDPLUGIN_1.5.2 1.5.2 @@ -567,3 +709,6 @@ libfwupdplugin.so.1 libfwupdplugin1 #MINVER# fu_volume_locker@LIBFWUPDPLUGIN_1.4.6 1.4.6 fu_volume_mount@LIBFWUPDPLUGIN_1.4.6 1.4.6 fu_volume_unmount@LIBFWUPDPLUGIN_1.4.6 1.4.6 + fu_xmlb_builder_insert_kb@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_xmlb_builder_insert_kv@LIBFWUPDPLUGIN_1.6.0 1.6.0 + fu_xmlb_builder_insert_kx@LIBFWUPDPLUGIN_1.6.0 1.6.0 diff --git a/debian/patches/0001-fu-tool-fix-a-regression-where-activate-stopped-work.patch b/debian/patches/0001-fu-tool-fix-a-regression-where-activate-stopped-work.patch deleted file mode 100644 index a830f80a5..000000000 --- a/debian/patches/0001-fu-tool-fix-a-regression-where-activate-stopped-work.patch +++ /dev/null @@ -1,33 +0,0 @@ -From c229e992230dd9ca2460b8ae4a31e36a26820a1d Mon Sep 17 00:00:00 2001 -From: Mario Limonciello -Date: Wed, 10 Mar 2021 16:07:48 -0600 -Subject: [PATCH] fu-tool: fix a regression where activate stopped working in - c7d870aa9 - -Activate was no longer calling coldplug meaning even if devices were -in the pending database they wouldn't activate. ---- - src/fu-tool.c | 7 ++++++- - 1 file changed, 6 insertions(+), 1 deletion(-) - -diff --git a/src/fu-tool.c b/src/fu-tool.c -index 64ac0f36..75912616 100644 ---- a/src/fu-tool.c -+++ b/src/fu-tool.c -@@ -1549,7 +1549,12 @@ fu_util_activate (FuUtilPrivate *priv, gchar **values, GError **error) - return FALSE; - - /* load engine */ -- if (!fu_util_start_engine (priv, FU_ENGINE_LOAD_FLAG_READONLY, error)) -+ if (!fu_util_start_engine (priv, -+ FU_ENGINE_LOAD_FLAG_READONLY | -+ FU_ENGINE_LOAD_FLAG_COLDPLUG | -+ FU_ENGINE_LOAD_FLAG_REMOTES | -+ FU_ENGINE_LOAD_FLAG_HWINFO, -+ error)) - return FALSE; - - /* parse arguments */ --- -2.25.1 - diff --git a/debian/patches/0001-libfwupdplugin-don-t-allow-device-updates-while-need.patch b/debian/patches/0001-libfwupdplugin-don-t-allow-device-updates-while-need.patch deleted file mode 100644 index fb19fe9c9..000000000 --- a/debian/patches/0001-libfwupdplugin-don-t-allow-device-updates-while-need.patch +++ /dev/null @@ -1,49 +0,0 @@ -From 3df7dd370888b49670e374f8c213f35430ad7b42 Mon Sep 17 00:00:00 2001 -From: Mario Limonciello -Date: Tue, 2 Mar 2021 19:53:31 -0600 -Subject: [PATCH] libfwupdplugin: don't allow device updates while needing - activation - ---- - libfwupdplugin/fu-device.c | 7 +++++++ - libfwupdplugin/fu-plugin.c | 6 ++++++ - 2 files changed, 13 insertions(+) - -diff --git a/libfwupdplugin/fu-device.c b/libfwupdplugin/fu-device.c -index 112246c0..c8a28246 100644 ---- a/libfwupdplugin/fu-device.c -+++ b/libfwupdplugin/fu-device.c -@@ -2270,6 +2270,13 @@ fu_device_add_flag (FuDevice *self, FwupdDeviceFlags flag) - if (flag & FWUPD_DEVICE_FLAG_INSTALL_ALL_RELEASES) - flag |= FWUPD_DEVICE_FLAG_VERSION_CHECK_REQUIRED; - fwupd_device_add_flag (FWUPD_DEVICE (self), flag); -+ -+ /* activatable devices shouldn't be allowed to update again until activated */ -+ /* don't let devices be updated until activated */ -+ if (flag & FWUPD_DEVICE_FLAG_NEEDS_ACTIVATION) { -+ fwupd_device_remove_flag (FWUPD_DEVICE (self), FWUPD_DEVICE_FLAG_UPDATABLE); -+ fwupd_device_add_flag (FWUPD_DEVICE (self), FWUPD_DEVICE_FLAG_UPDATABLE_HIDDEN); -+ } - } - - static void -diff --git a/libfwupdplugin/fu-plugin.c b/libfwupdplugin/fu-plugin.c -index 919a2996..3327de8c 100644 ---- a/libfwupdplugin/fu-plugin.c -+++ b/libfwupdplugin/fu-plugin.c -@@ -2312,6 +2312,12 @@ fu_plugin_runner_activate (FuPlugin *self, FuDevice *device, GError **error) - - /* update with correct flags */ - fu_device_remove_flag (device, FWUPD_DEVICE_FLAG_NEEDS_ACTIVATION); -+ -+ /* allow it to be updatable again */ -+ if (fu_device_has_flag (device, FWUPD_DEVICE_FLAG_UPDATABLE_HIDDEN)) { -+ fu_device_remove_flag (device, FWUPD_DEVICE_FLAG_UPDATABLE_HIDDEN); -+ fu_device_add_flag (device, FWUPD_DEVICE_FLAG_UPDATABLE); -+ } - fu_device_set_modified (device, (guint64) g_get_real_time () / G_USEC_PER_SEC); - return TRUE; - } --- -2.25.1 - diff --git a/debian/patches/0001-trivial-add-linker-script-for-armhf.patch b/debian/patches/0001-trivial-add-linker-script-for-armhf.patch deleted file mode 100644 index 2e40df277..000000000 --- a/debian/patches/0001-trivial-add-linker-script-for-armhf.patch +++ /dev/null @@ -1,94 +0,0 @@ -From f699fae1a354432468c1835fc6978cdb6e641ae6 Mon Sep 17 00:00:00 2001 -From: Mario Limonciello -Date: Tue, 23 Feb 2021 16:41:30 -0600 -Subject: [PATCH] trivial: add linker script for armhf - -fixes FTBFS in Debian: -https://buildd.debian.org/status/fetch.php?pkg=fwupd&arch=armhf&ver=1.5.7-1&stamp=1614100547&raw=0 ---- - plugins/uefi-capsule/efi/lds/elf_arm_efi.lds | 73 ++++++++++++++++++++ - 1 file changed, 73 insertions(+) - create mode 100644 plugins/uefi-capsule/efi/lds/elf_arm_efi.lds - -diff --git a/plugins/uefi-capsule/efi/lds/elf_arm_efi.lds b/plugins/uefi-capsule/efi/lds/elf_arm_efi.lds -new file mode 100644 -index 00000000..80cce416 ---- /dev/null -+++ b/plugins/uefi-capsule/efi/lds/elf_arm_efi.lds -@@ -0,0 +1,73 @@ -+OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm") -+OUTPUT_ARCH(arm) -+ENTRY(_start) -+SECTIONS -+{ -+ .text 0x0 : { -+ _text = .; -+ *(.text.head) -+ *(.text) -+ *(.text.*) -+ *(.gnu.linkonce.t.*) -+ *(.srodata) -+ *(.rodata*) -+ . = ALIGN(16); -+ } -+ _etext = .; -+ _text_size = . - _text; -+ .dynamic : { *(.dynamic) } -+ .data : -+ { -+ _data = .; -+ *(.sdata) -+ *(.data) -+ *(.data1) -+ *(.data.*) -+ *(.got.plt) -+ *(.got) -+ -+ /* the EFI loader doesn't seem to like a .bss section, so we stick -+ it all into .data: */ -+ . = ALIGN(16); -+ _bss = .; -+ *(.sbss) -+ *(.scommon) -+ *(.dynbss) -+ *(.bss) -+ *(.bss.*) -+ *(COMMON) -+ . = ALIGN(16); -+ _bss_end = .; -+ } -+ -+ . = ALIGN(4096); -+ .sbat : -+ { -+ _sbat = .; -+ *(.sbat) -+ *(.sbat.*) -+ _esbat = .; -+ } -+ -+ . = ALIGN(4096); -+ .rel.dyn : { *(.rel.dyn) } -+ .rel.plt : { *(.rel.plt) } -+ .rel.got : { *(.rel.got) } -+ .rel.data : { *(.rel.data) *(.rel.data*) } -+ _edata = .; -+ _data_size = . - _etext; -+ -+ . = ALIGN(4096); -+ .dynsym : { *(.dynsym) } -+ . = ALIGN(4096); -+ .dynstr : { *(.dynstr) } -+ . = ALIGN(4096); -+ .note.gnu.build-id : { *(.note.gnu.build-id) } -+ /DISCARD/ : -+ { -+ *(.rel.reloc) -+ *(.eh_frame) -+ *(.note.GNU-stack) -+ } -+ .comment 0 : { *(.comment) } -+} --- -2.25.1 - diff --git a/debian/patches/0003-uefi-capsule-Specify-the-section-flags-for-.sbat.patch b/debian/patches/0003-uefi-capsule-Specify-the-section-flags-for-.sbat.patch deleted file mode 100644 index ef2e33a70..000000000 --- a/debian/patches/0003-uefi-capsule-Specify-the-section-flags-for-.sbat.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 2f3f2b243fcfc155dd1c779dbee59b826ac726b1 Mon Sep 17 00:00:00 2001 -From: Gary Lin -Date: Tue, 9 Mar 2021 15:26:20 +0800 -Subject: [PATCH] uefi-capsule: Specify the section flags for .sbat - -When using "objcopy -O binary" to generate AArch64 EFI images, it -silently drops the sections without "alloc" or "load" or the sections -with "unload", and this caused the content of .sbat was skipped in the -final EFI image. - -This commit sets the common read-only data section flags to .sbat to -make sure the content will be copied. - -Signed-off-by: Gary Lin ---- - plugins/uefi-capsule/efi/generate_sbat.py | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/plugins/uefi-capsule/efi/generate_sbat.py b/plugins/uefi-capsule/efi/generate_sbat.py -index 227bc841..18f7c4c7 100755 ---- a/plugins/uefi-capsule/efi/generate_sbat.py -+++ b/plugins/uefi-capsule/efi/generate_sbat.py -@@ -70,6 +70,8 @@ def _generate_sbat(args): - args.objcopy, - "--add-section", - ".sbat={}".format(sfd.name), -+ "--set-section-flags", -+ ".sbat=contents,alloc,load,readonly,data", - args.outfile, - ] - subprocess.run(argv, check=True) --- -2.20.1 - diff --git a/debian/patches/0005-fix-vendor-sbat-string.patch b/debian/patches/0005-fix-vendor-sbat-string.patch deleted file mode 100644 index c9e23f929..000000000 --- a/debian/patches/0005-fix-vendor-sbat-string.patch +++ /dev/null @@ -1,27 +0,0 @@ -Patch to fix SBAT format. -Already snet upstream and accepted there. - -commit 50348e1104a97db27253ddd1d5e8522fa7aa63bc -Author: Steve McIntyre <93sam@debian.org> -Date: Fri Mar 26 15:06:08 2021 +0000 - - Tweak the SBAT output for a vendor string - - The format is meant to be "." with a period as a - separator. - - Signed-off-by: Steve McIntyre <93sam@debian.org> - -diff --git a/plugins/uefi-capsule/efi/generate_sbat.py b/plugins/uefi-capsule/efi/generate_sbat.py -index 18f7c4c7..1f12ca11 100755 ---- a/plugins/uefi-capsule/efi/generate_sbat.py -+++ b/plugins/uefi-capsule/efi/generate_sbat.py -@@ -51,7 +51,7 @@ def _generate_sbat(args): - - # distro specifics, falling back to the project defaults - sfd.write( -- "{0}-{1},{2},{3},{4},{5},{6}\n".format( -+ "{0}.{1},{2},{3},{4},{5},{6}\n".format( - args.project_name, - args.sbat_distro_id, - args.sbat_distro_generation or args.sbat_generation, diff --git a/debian/patches/0006-uefi-capsule-Sync-linker-scripts-with-latest-used-by.patch b/debian/patches/0006-uefi-capsule-Sync-linker-scripts-with-latest-used-by.patch deleted file mode 100644 index 8ce34b3b2..000000000 --- a/debian/patches/0006-uefi-capsule-Sync-linker-scripts-with-latest-used-by.patch +++ /dev/null @@ -1,332 +0,0 @@ -From 1e52f8f71bc068e037c52c016cc8a8726895d6da Mon Sep 17 00:00:00 2001 -From: Javier Martinez Canillas -Date: Tue, 30 Mar 2021 11:15:29 +0200 -Subject: [PATCH] uefi-capsule: Sync linker scripts with latest used by shim - -The linker scripts used in the project were copied from the shim project, -but there were a few fixes made after this original copy. - -Until binutils have proper pei-aarch64 support, the linker scripts should -be kept in sync to make sure that the PE32+ binaries are built correctly. - -The fixes included in this change are the following: - - * Include missing .text sections in PE/COFF binary (Chris Coulson) - * Put .sbat after _edata (Peter Jones) - * Fix some PE headers for arm and aarch64 (Peter Jones) - * Include the aligned part in SizeOfRawData of sbat for arm and aarch64 (Gary Lin) - * Swizzle some sections to make old sbsign happier for arm and aarch64 (Peter Jones) - * Put .rel* and .dyn* in .rodata for arm and aarch64 (Peter Jones) ---- - .../uefi-capsule/efi/lds/elf_aarch64_efi.lds | 68 ++++++++++++------- - plugins/uefi-capsule/efi/lds/elf_arm_efi.lds | 66 +++++++++++++----- - plugins/uefi-capsule/efi/lds/elf_ia32_efi.lds | 17 +++-- - .../uefi-capsule/efi/lds/elf_x86_64_efi.lds | 18 +++-- - 4 files changed, 115 insertions(+), 54 deletions(-) - -diff --git a/plugins/uefi-capsule/efi/lds/elf_aarch64_efi.lds b/plugins/uefi-capsule/efi/lds/elf_aarch64_efi.lds -index c2c925df..353b24a0 100644 ---- a/plugins/uefi-capsule/efi/lds/elf_aarch64_efi.lds -+++ b/plugins/uefi-capsule/efi/lds/elf_aarch64_efi.lds -@@ -9,24 +9,12 @@ SECTIONS - *(.text) - *(.text.*) - *(.gnu.linkonce.t.*) -- *(.srodata) -- *(.rodata*) -- . = ALIGN(16); -- _etext = .; -- } -- -- . = ALIGN(4096); -- .dynamic : { *(.dynamic) } -- -- . = ALIGN(4096); -- .note.gnu.build-id : { -- *(.note.gnu.build-id) -- } -- -- . = ALIGN(4096); -- .data.ident : { -- *(.data.ident) -+ _evtext = .; -+ . = ALIGN(4096); - } -+ _etext = .; -+ _text_size = . - _text; -+ _text_vsize = _evtext - _text; - - . = ALIGN(4096); - .data : -@@ -39,6 +27,8 @@ SECTIONS - *(.got.plt) - *(.got) - -+ *(.dynamic) -+ - /* the EFI loader doesn't seem to like a .bss section, so we stick - it all into .data: */ - . = ALIGN(16); -@@ -48,10 +38,21 @@ SECTIONS - *(.dynbss) - *(.bss) - *(COMMON) -- . = ALIGN(16); -+ _evdata = .; -+ . = ALIGN(4096); - _bss_end = .; - } -+ _edata = .; -+ _data_vsize = _evdata - _data; -+ _data_size = . - _data; - -+ /* -+ * Note that _sbat must be the beginning of the data, and _esbat must be the -+ * end and must be before any section padding. The sbat self-check uses -+ * _esbat to find the bounds of the data, and if the padding is included, the -+ * CSV parser (correctly) rejects the data as having NUL values in one of the -+ * required columns. -+ */ - . = ALIGN(4096); - .sbat : - { -@@ -59,24 +60,39 @@ SECTIONS - *(.sbat) - *(.sbat.*) - _esbat = .; -+ . = ALIGN(4096); -+ _epsbat = .; - } -+ _sbat_size = _epsbat - _sbat; -+ _sbat_vsize = _esbat - _sbat; -+ - . = ALIGN(4096); -- .rela : -+ .rodata : - { -+ _rodata = .; - *(.rela.dyn) - *(.rela.plt) - *(.rela.got) - *(.rela.data) - *(.rela.data*) -+ -+ *(.rodata*) -+ *(.srodata) -+ *(.dynsym) -+ *(.dynstr) -+ . = ALIGN(16); -+ *(.note.gnu.build-id) -+ . = ALIGN(4096); -+ *(.vendor_cert) -+ *(.data.ident) -+ _evrodata = .; -+ . = ALIGN(4096); - } -- _edata = .; -- _data_size = . - _data; -+ _erodata = .; -+ _rodata_size = . - _rodata; -+ _rodata_vsize = _evrodata - _rodata; -+ _alldata_size = . - _data; - -- . = ALIGN(4096); -- .dynsym : { *(.dynsym) } -- . = ALIGN(4096); -- .dynstr : { *(.dynstr) } -- . = ALIGN(4096); - /DISCARD/ : - { - *(.rel.reloc) -diff --git a/plugins/uefi-capsule/efi/lds/elf_arm_efi.lds b/plugins/uefi-capsule/efi/lds/elf_arm_efi.lds -index 80cce416..e4e29bdf 100644 ---- a/plugins/uefi-capsule/efi/lds/elf_arm_efi.lds -+++ b/plugins/uefi-capsule/efi/lds/elf_arm_efi.lds -@@ -9,13 +9,14 @@ SECTIONS - *(.text) - *(.text.*) - *(.gnu.linkonce.t.*) -- *(.srodata) -- *(.rodata*) -- . = ALIGN(16); -+ _evtext = .; -+ . = ALIGN(4096); - } - _etext = .; - _text_size = . - _text; -- .dynamic : { *(.dynamic) } -+ _text_vsize = _evtext - _text; -+ -+ . = ALIGN(4096); - .data : - { - _data = .; -@@ -26,6 +27,8 @@ SECTIONS - *(.got.plt) - *(.got) - -+ *(.dynamic) -+ - /* the EFI loader doesn't seem to like a .bss section, so we stick - it all into .data: */ - . = ALIGN(16); -@@ -34,12 +37,22 @@ SECTIONS - *(.scommon) - *(.dynbss) - *(.bss) -- *(.bss.*) - *(COMMON) -- . = ALIGN(16); -+ _evdata = .; -+ . = ALIGN(4096); - _bss_end = .; - } -+ _edata = .; -+ _data_vsize = _evdata - _data; -+ _data_size = . - _data; - -+ /* -+ * Note that _sbat must be the beginning of the data, and _esbat must be the -+ * end and must be before any section padding. The sbat self-check uses -+ * _esbat to find the bounds of the data, and if the padding is included, the -+ * CSV parser (correctly) rejects the data as having NUL values in one of the -+ * required columns. -+ */ - . = ALIGN(4096); - .sbat : - { -@@ -47,22 +60,39 @@ SECTIONS - *(.sbat) - *(.sbat.*) - _esbat = .; -+ . = ALIGN(4096); -+ _epsbat = .; - } -+ _sbat_size = _epsbat - _sbat; -+ _sbat_vsize = _esbat - _sbat; - - . = ALIGN(4096); -- .rel.dyn : { *(.rel.dyn) } -- .rel.plt : { *(.rel.plt) } -- .rel.got : { *(.rel.got) } -- .rel.data : { *(.rel.data) *(.rel.data*) } -- _edata = .; -- _data_size = . - _etext; -+ .rodata : -+ { -+ _rodata = .; -+ *(.rel.dyn) -+ *(.rel.plt) -+ *(.rel.got) -+ *(.rel.data) -+ *(.rel.data*) -+ -+ *(.rodata*) -+ *(.srodata) -+ *(.dynsym) -+ *(.dynstr) -+ . = ALIGN(16); -+ *(.note.gnu.build-id) -+ . = ALIGN(4096); -+ *(.vendor_cert) -+ *(.data.ident) -+ _evrodata = .; -+ . = ALIGN(4096); -+ } -+ _erodata = .; -+ _rodata_size = . - _rodata; -+ _rodata_vsize = _evrodata - _rodata; -+ _alldata_size = . - _data; - -- . = ALIGN(4096); -- .dynsym : { *(.dynsym) } -- . = ALIGN(4096); -- .dynstr : { *(.dynstr) } -- . = ALIGN(4096); -- .note.gnu.build-id : { *(.note.gnu.build-id) } - /DISCARD/ : - { - *(.rel.reloc) -diff --git a/plugins/uefi-capsule/efi/lds/elf_ia32_efi.lds b/plugins/uefi-capsule/efi/lds/elf_ia32_efi.lds -index bafd1d37..742e0a47 100644 ---- a/plugins/uefi-capsule/efi/lds/elf_ia32_efi.lds -+++ b/plugins/uefi-capsule/efi/lds/elf_ia32_efi.lds -@@ -49,12 +49,9 @@ SECTIONS - } - - . = ALIGN(4096); -- .sbat : -+ .vendor_cert : - { -- _sbat = .; -- *(.sbat) -- *(.sbat.*) -- _esbat = .; -+ *(.vendor_cert) - } - . = ALIGN(4096); - .dynamic : { *(.dynamic) } -@@ -72,6 +69,16 @@ SECTIONS - } - _edata = .; - _data_size = . - _data; -+ . = ALIGN(4096); -+ .sbat : -+ { -+ _sbat = .; -+ *(.sbat) -+ *(.sbat.*) -+ } -+ _esbat = .; -+ _sbat_size = . - _sbat; -+ - . = ALIGN(4096); - .dynsym : { *(.dynsym) } - . = ALIGN(4096); -diff --git a/plugins/uefi-capsule/efi/lds/elf_x86_64_efi.lds b/plugins/uefi-capsule/efi/lds/elf_x86_64_efi.lds -index 69a46184..bcc65270 100644 ---- a/plugins/uefi-capsule/efi/lds/elf_x86_64_efi.lds -+++ b/plugins/uefi-capsule/efi/lds/elf_x86_64_efi.lds -@@ -17,6 +17,8 @@ SECTIONS - { - _text = .; - *(.text) -+ *(.text.*) -+ *(.gnu.linkonce.t.*) - _etext = .; - } - . = ALIGN(4096); -@@ -54,12 +56,9 @@ SECTIONS - } - - . = ALIGN(4096); -- .sbat : -+ .vendor_cert : - { -- _sbat = .; -- *(.sbat) -- *(.sbat.*) -- _esbat = .; -+ *(.vendor_cert) - } - . = ALIGN(4096); - .dynamic : { *(.dynamic) } -@@ -72,6 +71,15 @@ SECTIONS - } - _edata = .; - _data_size = . - _data; -+ . = ALIGN(4096); -+ .sbat : -+ { -+ _sbat = .; -+ *(.sbat) -+ *(.sbat.*) -+ } -+ _esbat = .; -+ _sbat_size = . - _sbat; - - . = ALIGN(4096); - .dynsym : { *(.dynsym) } --- -2.20.1 - diff --git a/debian/patches/0007-uefi-capsule-Include-crt0-for-arm-and-aarch64-that-a.patch b/debian/patches/0007-uefi-capsule-Include-crt0-for-arm-and-aarch64-that-a.patch deleted file mode 100644 index 044319d60..000000000 --- a/debian/patches/0007-uefi-capsule-Include-crt0-for-arm-and-aarch64-that-a.patch +++ /dev/null @@ -1,485 +0,0 @@ -From cb2c3c3584749a15f365d7cd61f80eca62f9eff6 Mon Sep 17 00:00:00 2001 -From: Javier Martinez Canillas -Date: Wed, 31 Mar 2021 13:03:15 +0200 -Subject: [PATCH] uefi-capsule: Include crt0 for arm and aarch64 that add a - SBAT section - -Due the lack of pei-aarch64 support in binutils, the gnu-efi crt0 harcodes -the PE32+ sections among other things. These crt0 aren't aware of the SBAT -section and so custom ones have to be used. - -In the same vein as commit cfd1f2f42aa ("uefi-capsule: Ensure SBAT metadata -is added correctly") included custom linker scripts, this change add a set -of crt0 for arm and aarch64 that hardcode a SBAT section in the PE headers. - -These are the crt0 from gnu-efi plus the following fixes from Peter Jones: - -* Include .sbat in section headers -* Fix some PE headers -* Calculate the VirtualSize of .sbat separately -* Put .rel* and .dyn* in .rodata ---- - .../uefi-capsule/efi/crt0/crt0-efi-aarch64.S | 166 +++++++++++++++ - plugins/uefi-capsule/efi/crt0/crt0-efi-arm.S | 193 ++++++++++++++++++ - plugins/uefi-capsule/efi/crt0/meson.build | 5 + - plugins/uefi-capsule/efi/generate_binary.py | 2 +- - plugins/uefi-capsule/efi/meson.build | 26 ++- - 5 files changed, 389 insertions(+), 3 deletions(-) - create mode 100644 plugins/uefi-capsule/efi/crt0/crt0-efi-aarch64.S - create mode 100644 plugins/uefi-capsule/efi/crt0/crt0-efi-arm.S - create mode 100644 plugins/uefi-capsule/efi/crt0/meson.build - -diff --git a/plugins/uefi-capsule/efi/crt0/crt0-efi-aarch64.S b/plugins/uefi-capsule/efi/crt0/crt0-efi-aarch64.S -new file mode 100644 -index 00000000..a96b5eb8 ---- /dev/null -+++ b/plugins/uefi-capsule/efi/crt0/crt0-efi-aarch64.S -@@ -0,0 +1,166 @@ -+/* -+ * crt0-efi-aarch64.S - PE/COFF header for AArch64 EFI applications -+ * -+ * Copright (C) 2014 Linaro Ltd. -+ * -+ * Redistribution and use in source and binary forms, with or without -+ * modification, are permitted provided that the following conditions -+ * are met: -+ * 1. Redistributions of source code must retain the above copyright -+ * notice and this list of conditions, without modification. -+ * 2. The name of the author may not be used to endorse or promote products -+ * derived from this software without specific prior written permission. -+ * -+ * Alternatively, this software may be distributed under the terms of the -+ * GNU General Public License as published by the Free Software Foundation; -+ * either version 2 of the License, or (at your option) any later version. -+ */ -+ -+ .section .text.head -+ -+ /* -+ * Magic "MZ" signature for PE/COFF -+ */ -+ .globl ImageBase -+ImageBase: -+ .ascii "MZ" -+ .skip 58 // 'MZ' + pad + offset == 64 -+ .long pe_header - ImageBase // Offset to the PE header. -+pe_header: -+ .ascii "PE" -+ .short 0 -+coff_header: -+ .short 0xaa64 // AArch64 -+ .short 4 // nr_sections -+ .long 0 // TimeDateStamp -+ .long 0 // PointerToSymbolTable -+ .long 1 // NumberOfSymbols -+ .short section_table - optional_header // SizeOfOptionalHeader -+ .short 0x206 // Characteristics. -+ // IMAGE_FILE_DEBUG_STRIPPED | -+ // IMAGE_FILE_EXECUTABLE_IMAGE | -+ // IMAGE_FILE_LINE_NUMS_STRIPPED -+optional_header: -+ .short 0x20b // PE32+ format -+ .byte 0x02 // MajorLinkerVersion -+ .byte 0x14 // MinorLinkerVersion -+ .long _text_size // SizeOfCode -+ .long _alldata_size // SizeOfInitializedData -+ .long 0 // SizeOfUninitializedData -+ .long _start - ImageBase // AddressOfEntryPoint -+ .long _start - ImageBase // BaseOfCode -+ -+extra_header_fields: -+ .quad 0 // ImageBase -+ .long 0x1000 // SectionAlignment -+ .long 0x200 // FileAlignment -+ .short 0 // MajorOperatingSystemVersion -+ .short 0 // MinorOperatingSystemVersion -+ .short 0 // MajorImageVersion -+ .short 0 // MinorImageVersion -+ .short 0 // MajorSubsystemVersion -+ .short 0 // MinorSubsystemVersion -+ .long 0 // Win32VersionValue -+ -+ .long _erodata - ImageBase // SizeOfImage -+ -+ // Everything before the kernel image is considered part of the header -+ .long _start - ImageBase // SizeOfHeaders -+ .long 0 // CheckSum -+ .short EFI_SUBSYSTEM // Subsystem -+ .short 0 // DllCharacteristics -+ .quad 0 // SizeOfStackReserve -+ .quad 0 // SizeOfStackCommit -+ .quad 0 // SizeOfHeapReserve -+ .quad 0 // SizeOfHeapCommit -+ .long 0 // LoaderFlags -+ .long 0x6 // NumberOfRvaAndSizes -+ -+ .quad 0 // ExportTable -+ .quad 0 // ImportTable -+ .quad 0 // ResourceTable -+ .quad 0 // ExceptionTable -+ .quad 0 // CertificationTable -+ .quad 0 // BaseRelocationTable -+ -+ // Section table -+section_table: -+ .ascii ".text\0\0\0" -+ .long _evtext - _start // VirtualSize -+ .long _start - ImageBase // VirtualAddress -+ .long _etext - _start // SizeOfRawData -+ .long _start - ImageBase // PointerToRawData -+ -+ .long 0 // PointerToRelocations (0 for executables) -+ .long 0 // PointerToLineNumbers (0 for executables) -+ .short 0 // NumberOfRelocations (0 for executables) -+ .short 0 // NumberOfLineNumbers (0 for executables) -+ /* -+ * EFI_IMAGE_SCN_MEM_READ | EFI_IMAGE_SCN_MEM_EXECUTE | EFI_IMAGE_SCN_CNT_CODE -+ */ -+ .long 0x60000020 // Characteristics (section flags) -+ -+ .ascii ".data\0\0\0" -+ .long _data_vsize // VirtualSize -+ .long _data - ImageBase // VirtualAddress -+ .long _data_size // SizeOfRawData -+ .long _data - ImageBase // PointerToRawData -+ -+ .long 0 // PointerToRelocations (0 for executables) -+ .long 0 // PointerToLineNumbers (0 for executables) -+ .short 0 // NumberOfRelocations (0 for executables) -+ .short 0 // NumberOfLineNumbers (0 for executables) -+ /* -+ * EFI_IMAGE_SCN_MEM_WRITE | EFI_IMAGE_SCN_MEM_READ | EFI_IMAGE_SCN_CNT_INITIALIZED_DATA -+ */ -+ .long 0xc0000040 // Characteristics (section flags) -+ -+ .ascii ".sbat\0\0\0" -+ .long _sbat_vsize // VirtualSize -+ .long _sbat - ImageBase // VirtualAddress -+ .long _sbat_size // SizeOfRawData -+ .long _sbat - ImageBase // PointerToRawData -+ -+ .long 0 // PointerToRelocations (0 for executables) -+ .long 0 // PointerToLineNumbers (0 for executables) -+ .short 0 // NumberOfRelocations (0 for executables) -+ .short 0 // NumberOfLineNumbers (0 for executables) -+ /* -+ * EFI_IMAGE_SCN_MEM_READ | EFI_IMAGE_SCN_ALIGN_8BYTES | EFI_IMAGE_SCN_CNT_INITIALIZED_DATA -+ */ -+ .long 0x40400040 // Characteristics (section flags) -+ -+ .ascii ".rodata\0" -+ .long _rodata_vsize // VirtualSize -+ .long _rodata - ImageBase // VirtualAddress -+ .long _rodata_size // SizeOfRawData -+ .long _rodata - ImageBase // PointerToRawData -+ -+ .long 0 // PointerToRelocations (0 for executables) -+ .long 0 // PointerToLineNumbers (0 for executables) -+ .short 0 // NumberOfRelocations (0 for executables) -+ .short 0 // NumberOfLineNumbers (0 for executables) -+ /* -+ * EFI_IMAGE_SCN_MEM_READ | EFI_IMAGE_SCN_ALIGN_8BYTES | EFI_IMAGE_SCN_CNT_INITIALIZED_DATA -+ */ -+ .long 0x40400040 // Characteristics (section flags) -+ -+ .align 12 -+_start: -+ stp x29, x30, [sp, #-32]! -+ mov x29, sp -+ -+ stp x0, x1, [sp, #16] -+ mov x2, x0 -+ mov x3, x1 -+ adr x0, ImageBase -+ adrp x1, _DYNAMIC -+ add x1, x1, #:lo12:_DYNAMIC -+ bl _relocate -+ cbnz x0, 0f -+ -+ ldp x0, x1, [sp, #16] -+ bl efi_main -+ -+0: ldp x29, x30, [sp], #32 -+ ret -diff --git a/plugins/uefi-capsule/efi/crt0/crt0-efi-arm.S b/plugins/uefi-capsule/efi/crt0/crt0-efi-arm.S -new file mode 100644 -index 00000000..1efc21c3 ---- /dev/null -+++ b/plugins/uefi-capsule/efi/crt0/crt0-efi-arm.S -@@ -0,0 +1,193 @@ -+/* -+ * crt0-efi-arm.S - PE/COFF header for ARM EFI applications -+ * -+ * Copright (C) 2014 Linaro Ltd. -+ * -+ * Redistribution and use in source and binary forms, with or without -+ * modification, are permitted provided that the following conditions -+ * are met: -+ * 1. Redistributions of source code must retain the above copyright -+ * notice and this list of conditions, without modification. -+ * 2. The name of the author may not be used to endorse or promote products -+ * derived from this software without specific prior written permission. -+ * -+ * Alternatively, this software may be distributed under the terms of the -+ * GNU General Public License as published by the Free Software Foundation; -+ * either version 2 of the License, or (at your option) any later version. -+ */ -+ -+ .section .text.head -+ -+ /* -+ * Magic "MZ" signature for PE/COFF -+ */ -+ .globl ImageBase -+ImageBase: -+ .ascii "MZ" -+ .skip 58 // 'MZ' + pad + offset == 64 -+ .long pe_header - ImageBase // Offset to the PE header. -+pe_header: -+ .ascii "PE" -+ .short 0 -+coff_header: -+ .short 0x1c2 // Mixed ARM/Thumb -+ .short 4 // nr_sections -+ .long 0 // TimeDateStamp -+ .long 0 // PointerToSymbolTable -+ .long 1 // NumberOfSymbols -+ .short section_table - optional_header // SizeOfOptionalHeader -+ .short 0x306 // Characteristics. -+ // IMAGE_FILE_32BIT_MACHINE | -+ // IMAGE_FILE_DEBUG_STRIPPED | -+ // IMAGE_FILE_EXECUTABLE_IMAGE | -+ // IMAGE_FILE_LINE_NUMS_STRIPPED -+optional_header: -+ .short 0x10b // PE32+ format -+ .byte 0x02 // MajorLinkerVersion -+ .byte 0x14 // MinorLinkerVersion -+ .long _text_size // SizeOfCode -+ .long _alldata_size // SizeOfInitializedData -+ .long 0 // SizeOfUninitializedData -+ .long _start - ImageBase // AddressOfEntryPoint -+ .long _start - ImageBase // BaseOfCode -+ .long _data - ImageBase // BaseOfData -+ -+extra_header_fields: -+ .long 0 // ImageBase -+ .long 0x800 // SectionAlignment -+ .long 0x200 // FileAlignment -+ .short 0 // MajorOperatingSystemVersion -+ .short 0 // MinorOperatingSystemVersion -+ .short 0 // MajorImageVersion -+ .short 0 // MinorImageVersion -+ .short 0 // MajorSubsystemVersion -+ .short 0 // MinorSubsystemVersion -+ .long 0 // Win32VersionValue -+ -+ .long _erodata - ImageBase // SizeOfImage -+ -+ // Everything before the kernel image is considered part of the header -+ .long _start - ImageBase // SizeOfHeaders -+ .long 0 // CheckSum -+ .short EFI_SUBSYSTEM // Subsystem -+ .short 0 // DllCharacteristics -+ .long 0 // SizeOfStackReserve -+ .long 0 // SizeOfStackCommit -+ .long 0 // SizeOfHeapReserve -+ .long 0 // SizeOfHeapCommit -+ .long 0 // LoaderFlags -+ .long 0x6 // NumberOfRvaAndSizes -+ -+ .quad 0 // ExportTable -+ .quad 0 // ImportTable -+ .quad 0 // ResourceTable -+ .quad 0 // ExceptionTable -+ .quad 0 // CertificationTable -+ .quad 0 // BaseRelocationTable -+ -+ // Section table -+section_table: -+ -+#if 0 -+ /* -+ * The EFI application loader requires a relocation section -+ * because EFI applications must be relocatable. This is a -+ * dummy section as far as we are concerned. -+ */ -+ .ascii ".reloc" -+ .byte 0 -+ .byte 0 // end of 0 padding of section name -+ .long 0 -+ .long 0 -+ .long 0 // SizeOfRawData -+ .long 0 // PointerToRawData -+ .long 0 // PointerToRelocations -+ .long 0 // PointerToLineNumbers -+ .short 0 // NumberOfRelocations -+ .short 0 // NumberOfLineNumbers -+ .long 0x42100040 // Characteristics (section flags) -+#endif -+ -+ .ascii ".text\0\0\0" -+ .long _evtext - _start // VirtualSize -+ .long _start - ImageBase // VirtualAddress -+ .long _etext - _start // SizeOfRawData -+ .long _start - ImageBase // PointerToRawData -+ -+ .long 0 // PointerToRelocations (0 for executables) -+ .long 0 // PointerToLineNumbers (0 for executables) -+ .short 0 // NumberOfRelocations (0 for executables) -+ .short 0 // NumberOfLineNumbers (0 for executables) -+ /* -+ * EFI_IMAGE_SCN_MEM_READ | EFI_IMAGE_SCN_MEM_EXECUTE | EFI_IMAGE_SCN_CNT_CODE -+ */ -+ .long 0x60000020 // Characteristics (section flags) -+ -+ .ascii ".data\0\0\0" -+ .long _data_vsize // VirtualSize -+ .long _data - ImageBase // VirtualAddress -+ .long _data_size // SizeOfRawData -+ .long _data - ImageBase // PointerToRawData -+ -+ .long 0 // PointerToRelocations (0 for executables) -+ .long 0 // PointerToLineNumbers (0 for executables) -+ .short 0 // NumberOfRelocations (0 for executables) -+ .short 0 // NumberOfLineNumbers (0 for executables) -+ /* -+ * EFI_IMAGE_SCN_MEM_WRITE | EFI_IMAGE_SCN_MEM_READ | EFI_IMAGE_SCN_CNT_INITIALIZED_DATA -+ */ -+ .long 0xc0000040 // Characteristics (section flags) -+ -+ .ascii ".sbat\0\0\0" -+ .long _sbat_vsize // VirtualSize -+ .long _sbat - ImageBase // VirtualAddress -+ .long _sbat_size // SizeOfRawData -+ .long _sbat - ImageBase // PointerToRawData -+ -+ .long 0 // PointerToRelocations (0 for executables) -+ .long 0 // PointerToLineNumbers (0 for executables) -+ .short 0 // NumberOfRelocations (0 for executables) -+ .short 0 // NumberOfLineNumbers (0 for executables) -+ /* -+ * EFI_IMAGE_SCN_MEM_READ | EFI_IMAGE_SCN_ALIGN_8BYTES | EFI_IMAGE_SCN_CNT_INITIALIZED_DATA -+ */ -+ .long 0x40400040 // Characteristics (section flags) -+ -+ .ascii ".rodata\0" -+ .long _rodata_vsize // VirtualSize -+ .long _rodata - ImageBase // VirtualAddress -+ .long _rodata_size // SizeOfRawData -+ .long _rodata - ImageBase // PointerToRawData -+ -+ .long 0 // PointerToRelocations (0 for executables) -+ .long 0 // PointerToLineNumbers (0 for executables) -+ .short 0 // NumberOfRelocations (0 for executables) -+ .short 0 // NumberOfLineNumbers (0 for executables) -+ /* -+ * EFI_IMAGE_SCN_MEM_READ | EFI_IMAGE_SCN_ALIGN_8BYTES | EFI_IMAGE_SCN_CNT_INITIALIZED_DATA -+ */ -+ .long 0x40400040 // Characteristics (section flags) -+ -+ -+ .align 11 -+_start: -+ stmfd sp!, {r0-r2, lr} -+ -+ mov r2, r0 -+ mov r3, r1 -+ adr r1, .L_DYNAMIC -+ ldr r0, [r1] -+ add r1, r0, r1 -+ adr r0, ImageBase -+ bl _relocate -+ teq r0, #0 -+ bne 0f -+ -+ ldmfd sp, {r0-r1} -+ bl efi_main -+ -+0: add sp, sp, #12 -+ ldr pc, [sp], #4 -+ -+.L_DYNAMIC: -+ .word _DYNAMIC - . -diff --git a/plugins/uefi-capsule/efi/crt0/meson.build b/plugins/uefi-capsule/efi/crt0/meson.build -new file mode 100644 -index 00000000..bb25576d ---- /dev/null -+++ b/plugins/uefi-capsule/efi/crt0/meson.build -@@ -0,0 +1,5 @@ -+o_crt0 = custom_target('efi_crt0', -+ input : arch_crt_source, -+ output : arch_crt, -+ command : [efi_cc, '-c', '@INPUT@', '-o', '@OUTPUT@'] -+ + compile_args) -diff --git a/plugins/uefi-capsule/efi/generate_binary.py b/plugins/uefi-capsule/efi/generate_binary.py -index 3d1c44c3..449d8abb 100755 ---- a/plugins/uefi-capsule/efi/generate_binary.py -+++ b/plugins/uefi-capsule/efi/generate_binary.py -@@ -27,7 +27,7 @@ def _run_objcopy(args): - "-j", - ".dynamic", - "-j", -- ".dynsym", -+ ".rodata", - "-j", - ".rel*", - args.infile, -diff --git a/plugins/uefi-capsule/efi/meson.build b/plugins/uefi-capsule/efi/meson.build -index 49b1dbc2..99654184 100644 ---- a/plugins/uefi-capsule/efi/meson.build -+++ b/plugins/uefi-capsule/efi/meson.build -@@ -72,6 +72,20 @@ if get_option('efi_sbat_distro_id') != '' - endif - endif - -+# is the system crt0 for arm and aarch64 new enough to know about SBAT? -+if host_cpu == 'aarch64' or host_cpu == 'arm' -+ if get_option('efi_sbat_distro_id') != '' -+ arch_crt_source = 'crt0-efi-@0@.S'.format(gnu_efi_path_arch) -+ cmd = run_command('grep', '-q', 'sbat', join_paths(efi_crtdir, arch_crt_source)) -+ if cmd.returncode() != 0 -+ warning('Cannot find SBAT section in @0@, using local copy'.format(join_paths(efi_crtdir, arch_crt_source))) -+ # The gnuefi libraries are still needed -+ efi_libdir = efi_crtdir -+ efi_crtdir = join_paths(meson.current_build_dir(), 'crt0') -+ endif -+ endif -+endif -+ - message('efi-libdir: "@0@"'.format(efi_libdir)) - message('efi-ldsdir: "@0@"'.format(efi_ldsdir)) - message('efi-crtdir: "@0@"'.format(efi_crtdir)) -@@ -178,12 +192,20 @@ o_file5 = custom_target('fwup-sbat.o', - '--sbat-distro-url', get_option('efi_sbat_distro_url'), - ]) - -+fwupd_so_deps = [] -+if efi_crtdir == join_paths(meson.current_build_dir(), 'crt0') -+ # A custom crt0 is needed -+ subdir('crt0') -+ fwupd_so_deps += [o_crt0] -+endif -+ - so = custom_target('fwup.so', - input : [o_file1, o_file2, o_file3, o_file4, o_file5], - output : 'fwup.so', - command : [efi_ld, '-o', '@OUTPUT@'] + - efi_ldflags + ['@INPUT@'] + -- ['-lefi', '-lgnuefi', libgcc_file_name]) -+ ['-lefi', '-lgnuefi', libgcc_file_name], -+ depends: fwupd_so_deps) - - # sanity check the packager set this to *SOMETHING* - if get_option('efi_sbat_distro_id') == '' and get_option('supported_build') -@@ -210,7 +232,7 @@ dbg = custom_target('efi_debug', - '-j', '.sdata', - '-j', '.data', - '-j', '.dynamic', -- '-j', '.dynsym', -+ '-j', '.rodata', - '-j', '.rel*', - '-j', '.rela*', - '-j', '.reloc', --- -2.20.1 - diff --git a/debian/patches/series b/debian/patches/series index 6538281a5..e69de29bb 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,7 +0,0 @@ -0001-trivial-add-linker-script-for-armhf.patch -0001-libfwupdplugin-don-t-allow-device-updates-while-need.patch -0003-uefi-capsule-Specify-the-section-flags-for-.sbat.patch -0001-fu-tool-fix-a-regression-where-activate-stopped-work.patch -0005-fix-vendor-sbat-string.patch -0006-uefi-capsule-Sync-linker-scripts-with-latest-used-by.patch -0007-uefi-capsule-Include-crt0-for-arm-and-aarch64-that-a.patch