Commit Graph

3453 Commits

Author SHA1 Message Date
Mario Limonciello
331e59eb04 trivial: be consistent about the vendor string for AMD 2023-02-16 14:40:51 -06:00
Mario Limonciello
c6731e56f2 trivial: add a plugin to show VBIOS version for AMD APUs
The VBIOS version is actually fetched by udev, this plugin sets
up the relationship so it's displayed in the right place.
2023-02-16 14:40:51 -06:00
Mario Limonciello
2ddda260a6 trivial: uefi-capsule: drop the fallback to removable path flag
It was used for ubuntu-core with a confined fwupd, but now we will
load our own shim as necessary to the ESP.
2023-02-16 11:32:36 -06:00
Mario Limonciello
5266d62611 uefi-capsule: Copy in an updated shim if provided
If a shim is in the fwupd libexec/efi directory, it's intended to
be paired with the fwupd binary.
2023-02-16 11:32:36 -06:00
Richard Hughes
b25e0f3a28 uefi-capsule: Require at least 80MB free in the ESP
See https://github.com/fwupd/firmware-lenovo/issues/257
2023-02-15 16:12:26 +00:00
Richard Hughes
336494190d Allow installing some battery firmware updates when the power is too low
The firmware in this case fixes the battery charging, and as the battery is
*internal* the user isn't able to apply the fix.

Fixes https://github.com/fwupd/firmware-lenovo/issues/315
2023-02-15 16:08:53 +00:00
Richard Hughes
a528793127 ccgx: Make the default image type for FuCcgxDmcDevice to be DMC_COMPOSITE
This means most devices do not need to specify additional quirks.
2023-02-14 08:22:47 +00:00
Mario Limonciello
5444131703 trivial: logitech-hidpp: move the check for CONFIG_HIDRAW into probe
The kernel should have loaded hidraw support by the time that we probe
a device.  This fixes logitech devices not showing up after startup
if they weren't plugged in initially.

Fixes: #5525
2023-02-13 11:30:28 -06:00
Richard Hughes
06c95b22aa trivial: Fix warning: function has a definition with different parameter names 2023-02-13 12:34:46 +00:00
Richard Hughes
828dc5a7bc trivial: Fix warning: return after continue 2023-02-13 12:34:46 +00:00
Richard Hughes
3b53fde5b8 trivial: Fix warning: parameter is const-qualified in the function declaration 2023-02-13 12:34:46 +00:00
Richard Hughes
8290e4d1ef trivial: Fix warning: declared with a const-qualified typedef 2023-02-13 12:34:46 +00:00
Richard Hughes
2950f5fa3b trivial: Fix warning: pointer parameter 'buf' can be pointer to const 2023-02-13 12:34:46 +00:00
Richard Hughes
5dbc91e769 trivial: Fix warning: repeated branch in conditional chain 2023-02-13 12:34:46 +00:00
Richard Hughes
2336f6a345 trivial: Fix warning: do not use 'else' after 'return' 2023-02-13 12:34:46 +00:00
Richard Hughes
d1b99ed5fc trivial: Fix warning: redundant return statement at the end of a function with a void return type 2023-02-13 12:34:46 +00:00
Richard Hughes
296fc0c0e5 trivial: Remove an unused source file 2023-02-13 12:34:46 +00:00
Richard Hughes
e6908c93e4 trivial: Remove an unused self-test file 2023-02-13 12:34:46 +00:00
Richard Hughes
33065a6893 Actually store the SHA384 TPM measurements if found 2023-02-13 12:34:46 +00:00
Richard Hughes
9d313bb3c9 trivial: Include the correct headers to make clang-tidy happy 2023-02-13 12:34:46 +00:00
Richard Hughes
d35f199fb6 trivial: Add some additional docs about CCGX factory mode 2023-02-10 18:29:41 +00:00
Richard Hughes
ac5f9412e0 Add support for emulating and recording devices
Based on patches from Frédéric Danis <frederic.danis@collabora.com>
2023-02-10 14:43:25 +00:00
Richard Hughes
8f2119188d ccgx: Auto-set the remove-delay now we parse the devx components
This is one less thing for vendors to work out.
2023-02-10 14:16:46 +00:00
Mario Limonciello
a4d1639823 trivial: thunderbolt: show integrated USB4 host controllers in tree
USB4 host controllers that can't be updated come from the CPU.
Show them properly in the tree view.
2023-02-10 07:35:08 -06:00
Mario Limonciello
d84fb5bbee trivial: Add relationship for GPIO controller
The GPIO controllers AMDI0030 and AMDI0031 come from the SOC.
Show them appropriately in the tree view.
2023-02-10 07:35:08 -06:00
Richard Hughes
910f58d9ce cros-ec: Fix an uninitialized buffer warning from valgrind 2023-02-10 11:02:34 +00:00
Richard Hughes
eff7bfed8e analogix: Do not check the endpoints before selecting an interface
My Analogix USB device has a Billboard interface, with bNumEndpoints=0.

When emulating the interface is NULL, and in runtime the array can *never* be
NULL, so I think this check was added in error.
2023-02-10 10:52:58 +00:00
Richard Hughes
390796c0d3 ti-tps6598x: Fix a small memory leak when flashing new firmware 2023-02-10 10:52:09 +00:00
Richard Hughes
fb4e8446c1 wacom-usb: Use the device proxy functionality
The wacom-usb plugin was created in a simpler time, before we had the concept
of `FuDevice.proxy`. Switch to the shared code to modernize the code, and also
because setting the proxy conveys other semantics that we need to emulate the
device successfully in the future.
2023-02-09 16:43:52 +00:00
Richard Hughes
41544e62a3 trivial: Remove the now-unused FWUPD_WAC_EMULATE check 2023-02-09 16:43:52 +00:00
Richard Hughes
0e0504cc64 ccgx: Add support for the CalDigit Element Hub 2023-02-09 08:46:52 +00:00
Richard Hughes
58cbb15e64 ccgx: Detect factory mode and set a non-zero version
The Element Hub (and several other docks that use the CCGX5 DMC reference
design) is in "factory mode" out of the box, displaying a version of `0.0.0.0`

Detect factory mode and set a non-zero version -- using the "real" version if
possible by matching the CCG5 devx base firmware firmware.
2023-02-09 08:46:52 +00:00
Richard Hughes
9fdfcfe499 wistron-dock: Use only-wait-for-replug to speed up device replug
Also, set the progress steps correctly.
2023-02-07 11:24:03 +00:00
Richard Hughes
70417a3aee wistron-dock: Fix critical warning during update 2023-02-07 11:24:03 +00:00
Richard Hughes
d4109b9f79 trivial: Fix Fedora CI when it cannot autostart udisks 2023-02-07 11:00:53 +00:00
Richard Hughes
7116ff94c2 cros-ec: Clear the bulk transfer buffer to zero before using
This allow us to emulate the device as the buffer contents are now 100%
predictable and replayable.
2023-02-07 09:30:51 +00:00
Richard Hughes
986b811b3d trivial: Fix a tiny coverity-spotted memory leak on error 2023-02-06 10:24:03 +00:00
Richard Hughes
aef162223f nvme: Detect and warn users with the broken firmware 3B2QGXA7 2023-02-03 17:31:42 +00:00
Richard Hughes
c6a3a6e82c trivial: Fix critical warning when loading an emulated DFU device 2023-02-03 16:53:48 +00:00
Richard Hughes
b3343755a4 ti-tps6598x: Ignore the 'wrong' USB device class before calling ->setup()
No functional change, but a few less i/o operations when inserting the dock.
2023-02-02 08:18:28 +00:00
Richard Hughes
b8631d5e4d dfu: Use more const buffer data when writing to AVR chips 2023-02-01 18:20:26 +00:00
Richard Hughes
add087966d dfu: Clear the buffer before getting the status
This makes emulation of DFU devices work as the control transfer data is then
predictable.
2023-02-01 18:20:26 +00:00
Richard Hughes
99df74f0c2 Add API to wait for a device
This allows us to ignore all the delays when the device is emulated, with the
idea being to do dozens of device emulations in the CI tests.

Also, do not call fu_progress_sleep() when the device is emulated.
2023-02-01 09:42:08 +00:00
Richard Hughes
6e34a90a12 trivial: Add FuProgress to fu_context_load_hwinfo()
TIL: fu_bios_settings_setup() takes over 50ms (10%!) at startup.
2023-01-30 14:47:44 +00:00
Richard Hughes
234ff36cff ti-tps6598x: Assign the DMC as the proxy rather than just the parent
We 'write through' the parent, and by telling fwupd this we can make better
decisions when emulating.
2023-01-30 12:00:04 +00:00
Richard Hughes
854bec2e17 colorhug: Show the flash success value in debugging 2023-01-26 08:55:49 +00:00
Ivan Mikhanchuk
af5fb429c8 modem-manager: remove improper use of assert
FuSaharaLoader being NULL is normal for devices that only
support Firehose and don't use Sahara QDL port.
2023-01-24 20:54:43 -06:00
Jason Gerecke
8076090a00 wacom-usb: Retry set_report on failure
Sometimes the flash process will randomly hang and time-out when sending
data to the device. We currently do not use any retry logic, so if this
happens the flash attempt is treated as a failure. This can be a source
of worry or frustration, especially if subsequent manual retries fail
in a similar way.

Adding FU_HID_DEVICE_FLAG_RETRY_FAILURE to the list of flags used when
calling fu_hid_device_set_report allows fwupd to try sending a block
multiple times if such a time-out (or other error) occurs. This makes
the flash process less prone to failure.

Signed-off-by: Jason Gerecke <jason.gerecke@wacom.com>
2023-01-24 18:09:09 +00:00
Daniil Lunev
8e1715779e emmc: correct legacy GUID generation
It used to be generated with decimal, not hexadecimal values.

Change-Id: I2a6a5bdea50e2d08a7de9f65a1f9a03de29e1591
2023-01-22 20:40:38 -06:00
Aaron Skomra
189686368a wacom-usb: prefix errors that occur when writing to the device
Make it easier to locate errors that occur when writing to the device.
2023-01-18 19:36:45 -06:00