Richard Hughes
090a7c8b9a
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-23 13:04:11 -06:00
Richard Hughes
058dc2301a
Include the plugin README text in the generated docs
2023-01-10 14:58:30 +00:00
Richard Hughes
427e5cec7a
trivial: Add new convenience API to make plugins simpler
2022-12-20 20:54:12 +00:00
Richard Hughes
123fac737a
trivial: Fix some g_prefix_error() calls to include the trailing space
2022-11-30 10:13:19 +00:00
Richard Hughes
1c3c5d9892
Allow optionally translating request messages
...
Also add two more request IDs to make these specific enough to be useful.
2022-10-03 20:54:24 +01:00
Richard Hughes
99002a7a18
Build many more plugins as builtin
...
This reduces the plugin directory size by 2.2Mb
2022-09-28 17:01:23 +01:00
Richard Hughes
c4b7f42e43
Only compress one version of the builtin-quirks
...
Saving the quirks in the GResource section worked well, but it made the build
system very complicated and also meant the .data section was duplicated in
both `fwupd` and `fwupdtool` -- negating a lot of the hard-fought savings.
Simplify this feature so that we just `cat` all the quirk files together, then
gzip them into a single file. This means that at startup fwupd only needs to
check the mtime of one file, and weirdly it's actually faster to load a smaller
compressed file from disk that it is to load multiple uncompressed files.
2022-09-27 12:44:04 +01:00
Richard Hughes
0415db6f67
Revert "trivial: Use files() rather than current_source_dir()"
...
This reverts commit b581fa5670
as it breaks
`ninja dist` with `-Dgresource_quirks=enabled`.
2022-09-25 10:31:14 +01:00
Richard Hughes
b581fa5670
trivial: Use files() rather than current_source_dir()
2022-09-24 09:12:14 -05:00
Richard Hughes
e358cc7bde
Set the firmware contents even when subclassing ->parse()
2022-09-10 09:16:05 +01:00
Richard Hughes
0c51630991
Check firmware magic in a more standard way
...
Some parsers are ignoring the magic when using _FLAG_IGNORE_CHECKSUM
(which is wrong; fuzzers have no problem with enforcing a static prefix)
and other either disregard the offset or check the magic in an unsafe
way. Also, use FWUPD_ERROR_INVALID_FILE consistently for magic failure.
Add a vfunc, and move all the clever code into one place.
2022-07-14 14:48:15 +01:00
Richard Hughes
acc66316ec
steelseries: Fix trivial -Wunused-variable issue
2022-07-11 09:58:00 +01:00
Richard Hughes
a61bb37881
Build the quirk files into the daemon as a GResource
...
Interestingly, this increases the `fwupd` binary size by ~30kb but
reduces the installed size of /usr/share/fwupd/quirks.d by ~330kb.
2022-06-30 18:52:24 +01:00
Richard Hughes
0491b07a93
Make the FuFirmware->parse() vfunc more helpful
...
This removes the 100% unused addr_end parameter and explicitly makes
the addr_start into the start offset in more cases.
2022-06-27 15:40:11 -05:00
Gaël PORTAY
299b42fe96
trivial: Make meson.build indentation consistent
2022-06-21 03:27:38 -04:00
Richard Hughes
faa7871b08
Remove duplicate ->probe() calls to speed up startup by 150ms
...
Now incorporate is fixed to copy across the properties we need in the
superclass, we don't need to do the subclass ->probe().
Note, we still need to do the subclassed ->probe() when using
FU_UDEV_DEVICE_FLAG_VENDOR_FROM_PARENT or when looking at properties
on the parent device.
This also removes the spurious 'already set GType to FuVliUsbhubDevice,
ignoring FuVliUsbhubDevice' messages when running the daemon.
2022-06-14 21:01:57 +01:00
Richard Hughes
4105768a01
Remove the 'common' prefix when parsing version numbers
2022-06-14 14:36:52 -05:00
Richard Hughes
7f86ffab6f
Split out the dump helpers to a new source file
2022-06-14 14:36:52 -05:00
Richard Hughes
ed1b13da28
Split out the memory helpers to a new source file
2022-06-14 14:36:52 -05:00
Richard Hughes
4b1313b406
Split out the GByte helpers to a new source file
2022-06-14 14:36:52 -05:00
Richard Hughes
9d33c29e92
Split out the string helpers to a new source file
2022-06-14 14:36:52 -05:00
Richard Hughes
3fe9c0de34
Split out the CRC and sum functions to new source files
2022-06-14 14:36:52 -05:00
Gaël PORTAY
d15f0b1cca
steelseries: fizz: Use fu_common_strsafe()
2022-06-10 10:07:28 -04:00
Gaël PORTAY
8d4d2f2087
steelseries: Add hid support to detect Bluetooth devices
2022-06-10 10:07:28 -04:00
Gaël PORTAY
99f310e11a
steelseries: Add datasz to fu_steelseries_device_cmd()
...
Additionaly, this:
- removes the unused function fu_steelseries_device_get_transfer_size()
- renames function fu_steelseries_device_command_error_to_error() to
fu_steelseries_fizz_command_error_to_error()
2022-06-09 10:57:26 -04:00
Gaël PORTAY
40ba65ce28
steelseries: fizz: Fiz command size
...
The size of a command is 8bits long.
2022-06-09 10:57:26 -04:00
Richard Hughes
dc91d59f8e
Remove the recently added fu_progress_add_step_full()
...
Just break API instead.
2022-06-03 13:47:11 -05:00
Richard Hughes
5ef0ae182d
Add a 'name' attribute to each FuProgress step
...
This allows us to print better warning strings, and in the future
would allow us to profile each operation in a meaningful way.
Also, add context to some of the progress steps as required.
2022-06-01 15:05:43 +01:00
Gaël PORTAY
2e1b7c6438
steelseries: fizz: Rename command functions
2022-05-30 10:24:52 -04:00
Gaël PORTAY
fe3649ee6a
steelseries: fizz: Add missing command definitions
2022-05-30 10:24:52 -04:00
Gaël PORTAY
87f2807dfb
steelseries: fizz: Fix indentation violation
2022-05-30 10:24:52 -04:00
Gaël PORTAY
56a3632331
steelseries: fizz: Set firmware GType
2022-05-30 10:24:52 -04:00
Gaël PORTAY
4d820f0ddb
steelseries: fizz-tunnel: Enable polling
2022-05-30 10:24:52 -04:00
Gaël PORTAY
0b8ff7196a
steelseries: fizz-tunnel: Get battery level
2022-05-30 10:24:52 -04:00
Gaël PORTAY
8992698381
steelseries: fizz-tunnel: Wait for device connected
2022-05-30 10:24:52 -04:00
Gaël PORTAY
6190fc6830
steelseries: fizz-tunnel: Add sub-device if paired only
2022-05-30 10:24:52 -04:00
Gaël PORTAY
714983d82d
steelseries: fizz: Add support for 2.4G connection
2022-05-30 10:24:52 -04:00
Gaël PORTAY
c5defa89e9
steelseries: sonic: Rewrite connect using fu_device_retry_full()
2022-05-27 11:19:51 -04:00
Gaël PORTAY
2f23489c6e
trivial: steelseries: fizz: Add devices in bootloader mode
2022-05-27 11:19:51 -04:00
Gaël PORTAY
29ac547c43
trivial: steelseries: sonic: Adjust timings
2022-05-27 11:19:51 -04:00
Gaël PORTAY
c41c738327
trivial: steelseries: Fix progress status
2022-05-27 11:19:51 -04:00
Gaël PORTAY
9bd8a327d8
trivial: steelseries: Fix indentation violation
2022-05-24 06:43:02 -04:00
Richard Hughes
636786dd6a
steelseries: Fix trivial typo spotted by Coverity
2022-05-24 08:53:30 +01:00
Richard Hughes
4397e9d7e0
steelseries: Don't use 'dongle' to describe hardware
2022-05-23 14:56:45 +01:00
Richard Hughes
f16560b705
Add device icon usb-receiver
2022-05-23 14:56:45 +01:00
Richard Hughes
4ffa70032f
steelseries: Fix a trivial flag issue
2022-05-23 14:13:17 +01:00
Gaël PORTAY
7f7d2759a7
trivial: Update with recent steelseries changes
...
This fixes the commits 7eb053e97a
and
9a5c69417a
.
2022-05-23 14:09:03 +01:00
Richard Hughes
9a5c69417a
steelseries: Add is-dongle as a private flag
...
This allows us to remove quite a bit of code.
2022-05-22 10:43:34 +01:00
Richard Hughes
7068233bf9
steelseries: Add FuSteelseriesDevice as a shared baseclass
...
This deduplicates a lot of code.
2022-05-22 10:43:34 +01:00
Richard Hughes
7eb053e97a
steelseries: Rename FuSteelseriesDevice to FuSteelseriesMouse
...
Also, convert it to a FINAL class.
2022-05-22 10:43:34 +01:00