Commit Graph

5620 Commits

Author SHA1 Message Date
Richard Hughes
35d37f8d2c logitech-hidpp: Only shutdown the IO channel if it was created 2021-05-18 11:07:02 +01:00
Richard Hughes
6174425ee1 altos: Only shutdown the IO channel if it was created 2021-05-18 11:07:02 +01:00
Richard Hughes
3ba0b29ba3 trivial: Fix critical warning when running fwupd as non-root 2021-05-18 11:06:51 +01:00
Sergii Dmytruk
1a328fd3ad Branch explicitly per OS type
Signed-off-by: Sergii Dmytruk <sergii.dmytruk@3mdeb.com>
2021-05-18 06:49:47 +01:00
Sergii Dmytruk
3d0e624ed3 Include <efivar-dp.h> explicitly
On FreeBSD <efivar.h> doesn't include <efivar-dp.h>.

Signed-off-by: Sergii Dmytruk <sergii.dmytruk@3mdeb.com>
2021-05-18 06:49:47 +01:00
Sergii Dmytruk
113a91985b Handle missing defaults in fu-uefi-devpath.c
FreeBSD's libefivar native implementation doesn't provide these defines.

Signed-off-by: Sergii Dmytruk <sergii.dmytruk@3mdeb.com>
2021-05-18 06:49:47 +01:00
Richard Hughes
49d28276b8 Only lock fwupdtool when loading the engine
Some actions like firmware-parse should not need an OFD lock.
2021-05-17 22:05:52 -05:00
Richard Hughes
2dc42e6c97 colorhug: Ignore the failure to get the reply on device reset
Reading the response works on Linux, but fails on FreeBSD.
2021-05-17 16:47:12 +01:00
Richard Hughes
8bdd868c58 Do not build fwupdcethelper if noinline,noclone fails 2021-05-17 16:42:58 +01:00
Richard Hughes
7a8c61a5c3 rts54hub: Allow updating the RTD21xx devices in background mode
Original code by Ricky Wu <ricky_wu@realtek.com>
2021-05-17 16:38:29 +01:00
Richard Hughes
6bc2d155a9 trivial: Remove a build warning by including Json properly 2021-05-17 09:27:54 +01:00
Richard Hughes
b94a7b507b trivial: Do not generate fwupdplugin.vapi
We don't want applications to use libfwupdplugin, and we don't want to
support plugins written in Vala either.
2021-05-17 09:27:54 +01:00
Richard Hughes
8792afa894 trivial: Fixup some documentation to use the correct type 2021-05-17 09:27:54 +01:00
Richard Hughes
0aaf060105 Follow HTTP 3XX redirects when downloading files
This allows us to punt some smaller files onto the CDN.
2021-05-14 18:48:47 +01:00
Richard Hughes
ca2e1cc08c trivial: Add back pesign to the fwupd docker images
This is needed as fwupd-efi uses the fwupd images, and pesign is a
build-time dep of the Fedora package.
2021-05-14 17:10:32 +01:00
Aleksander Morgado
3bcd4cf44a trivial: remove QMI_REQUIRED_VERSION
We use MM_REQUIRED_VERSION to compare the running ModemManager version
with the one we require. But we don't need QMI_REQUIRED_VERSION for
anything, just remove it.

These symbols were similar to GLIB_REQUIRED_VERSION, but neither
ModemManager nor libqmi implement them in the same way as GLib does.
For the purpose of skipping deprecated APIs, ModemManager and libqmi
use the older MM_DISABLE_DEPRECATED and QMI_DISABLE_DEPRECATED macros.
2021-05-14 14:08:44 +02:00
Aleksander Morgado
dcbd979b8f trivial: fix libqmi build dependency
The build dependency of libqmi was attempted to be updated in
commit 6db69de725, but wasn't properly done, as
only the QMI_REQUIRED_VERSION symbol was updated, not the actual
pkgconfig required version.
2021-05-14 14:08:44 +02:00
Richard Hughes
dd415ab396 Add fwupd_remote_setup() to split out the 'parsing' from the 'validation' 2021-05-14 06:02:56 +01:00
Richard Hughes
2e6fee186e trivial: Fix several potential leaks when parsing remotes
This fixes several issues when calling fwupd_remote_load_from_filename()
multiple times on the same FwupdRemote.
2021-05-14 06:02:56 +01:00
Richard Hughes
6c706c74d6 trivial: Export fwupd_remote_set_filename_source() for possible future usage 2021-05-14 06:02:56 +01:00
Richard Hughes
769cbbf8af Add support for the PHAT table
On Alterlake and newer hardware the Platform Health Assessment Record
data can be used by the IHV to debug why a specific capsule update
failed. Any custom firmware loaded by the OEM can be identified and
used to further debug the root cause.
2021-05-12 12:02:33 +01:00
Richard Hughes
54d9de9290 Force the device locker to ->close() an aborted ->open()
Fixes https://github.com/fwupd/fwupd/issues/3187
2021-05-12 10:10:57 +01:00
Richard Hughes
ddc40ab595 fastboot: Add some trivial error prefix for the getvar failure 2021-05-12 10:10:57 +01:00
Richard Hughes
dbd57ebc43 trivial: Always include the newline for fu_common_string_append_kv() 2021-05-11 21:01:33 +01:00
Richard Hughes
ff5a90548f trivial: Show the remote filename source 2021-05-11 21:01:27 +01:00
Richard Hughes
355fd54e15 upower: Fix critical warning introduced recently 2021-05-11 20:10:58 +01:00
Richard Hughes
e9cc87d740 trivial: Add some more missing GObjectIntrospection markup 2021-05-11 16:55:53 +01:00
Richard Hughes
69a643d7e1 trivial: Work around a GObjectIntrospection warning
We broke this rule: https://gi.readthedocs.io/en/latest/writingbindableapis.html?highlight=boxed#don-t-have-properties-and-methods-with-the-same-name
2021-05-11 16:55:53 +01:00
Richard Hughes
38f82b10f8 trivial: Remove warnings from the GObjectIntrospection output 2021-05-11 16:55:53 +01:00
Richard Hughes
88aff562d2 trivial: More GObjectIntrospection fixes 2021-05-11 16:55:53 +01:00
Richard Hughes
8fe6a1dd0c trivial: Make FuSrecFirmwareRecord usable from non-C languages 2021-05-11 13:15:27 +01:00
Richard Hughes
e8f95bc26d Do not prevent firmware updates on desktop hardware
Fixes https://github.com/fwupd/fwupd/issues/3236
2021-05-10 14:36:51 +01:00
Richard Hughes
cb5aa1a254 trivial: Convert FwupdRelease to use @self 2021-05-10 14:35:10 +01:00
Richard Hughes
3f0340c3a7 trivial: Convert FwupdPlugin to use @self 2021-05-10 14:35:10 +01:00
Richard Hughes
8246e43174 trivial: Convert FwupdDevice to use @self 2021-05-10 14:35:10 +01:00
Richard Hughes
20ef071b3c trivial: Style fixes to lots of gtk-doc 2021-05-10 14:35:10 +01:00
Richard Hughes
45f834f0e2 trivial: Fix up flatpak docs to reflect reality 2021-05-10 13:58:32 +01:00
JackZhang-Primax
6e2ee2113c Update pixart-rf.quirk
Add black Mocha vendor & product id in pixart-rf qurik.
2021-05-06 09:48:46 -05:00
Daniel Campello
a4fbe2a6f4 Switch lock directory from /var/run to /run/lock
This allows for proper locking between executions of fwupdtool in
Chromium OS minijail environment. It is needed after commit
9cf5f8f7ff was introduced.

Change-Id: I37b33c8d1fbe97ec9baddc5f77ea94e2f4ff1fa4
2021-05-05 13:34:49 -06:00
Mario Limonciello
b125361e20 trivial: move circleci for windows build to fedora 33 2021-05-05 18:30:45 +01:00
Richard Hughes
608992e25d Add 4 new runtime requirements to the win32 build
I guess we know how many people are using 1.6.0 on Windows now...
2021-05-04 12:51:52 +01:00
Richard Hughes
70e195d18b trivial: Add an error prefix to show the full path 2021-05-04 09:45:03 +01:00
Richard Hughes
0ad70b9be4 trivial: Skip the swap tests when the system bus cannot be started 2021-05-04 09:45:03 +01:00
Richard Hughes
ffcaf14021 trivial: Skip the fmap tests when memmem is not available 2021-05-04 09:45:03 +01:00
Richard Hughes
29e04f926d trivial: Skip the efivar tests on Windows 2021-05-04 09:45:03 +01:00
Richard Hughes
7b7eb9e9b5 trivial: Skip the lockdown tests on Windows 2021-05-04 09:45:03 +01:00
Aleksander Morgado
3417128704 modem-manager: add generic support for PCI based modems
No longer rely on the modems being USB based, we can also support PCI
based devices with the same protocols.
2021-05-01 15:43:38 +01:00
Jason Gerecke
99b4475777 wacom_usb: Fail parsing if wac firmware sections are not in sorted order
The code currently assumes that the firmware sections are in sorted
order (e.g. using images_cnt as the current index). This seems to
be the case with real firmware images, but is not actually guaranteed
by anything. Rewriting the code to use the actual index from the WA
header is a little difficult so just assert this condition for now.
2021-04-30 20:42:28 +01:00
Jason Gerecke
1ddac4447b wacom_usb: Read current firmware index before finding image to write
The value of `self->firmware_index` is not valid until we call
`fu_wac_device_ensure_firmware_index`. Because of this, we would always
request the firmware for index 0. If that slot is currently active then
our attempt to program it will fail since the pages are write-protected.
Annoyingly the only signs that something has gone wrong are that the
flash completes almost instantly and the firmware version never changes.

To fix this we re-order our usage of the variable to be after it
becomes valid. We also add a noisy failure message that is triggered
if no blocks are written.

Fixes: 7afd7cba0d ("Use FuFirmware as a container for firmware images")
2021-04-30 20:42:28 +01:00
Jason Gerecke
50a4ec70e6 wacom_usb: Firmware versions are packed BCD, not "decimal"
Version numbers used by Wacom firmware are typically coded as packed BCD
numbers. The minor version numbers are typically rendered with leading
zeros in the wild, though it appears fwupd doesn't follow this same
visual convention.

Some example versions:

  * { 0x00, 0x05 } --> 0.05 (Wacom rendering) / 0.5 (fwupd rendering)
  * { 0x01, 0x01 } --> 1.01 (Wacom rendering) / 1.1 (fwupd rendering)
  * { 0x01, 0x23 } --> 1.23 (Wacom rendering) / 1.23 (fwupd rendering)

Fixes: 872ec1b68f (Add an experimental plugin to update some new Wacom tablets)
2021-04-30 20:42:28 +01:00