Mario Limonciello
0235b70463
trivial: synapticsmst: Correct the GUID for the WD15
...
The WD15 has a slightly different chip than the TB16/TB18 and this was
not transcribed properly.
2018-09-04 10:00:52 +01:00
Mario Limonciello
cc722dbb2c
dell: Adjust for changes in daemon around USB removal
...
1) Switch to daemon provided vfuncs for USB
2) Set quirks so that the plugin only runs when Realtek NIC shows up
3) Rely on the daemon to process all removals by parent tree
2018-09-04 10:00:52 +01:00
Richard Hughes
1263446b23
trivial: Add a 'setup' vfunc that is used after open()
...
The setup() is the counterpart to probe(), the difference being the former needs
the device open and the latter does not.
This allows objects that derive from FuDevice, and use FuDeviceLocker to use
open() and close() without worrying about the performance implications of
probing the hardware, i.e. open() now simply opens a file or device.
2018-09-03 19:56:26 -05:00
Mario Limonciello
9ef5f741bc
plugins: Set platform IDs for non-USB/non-UDEV plugins
2018-09-02 14:45:39 -05:00
Richard Hughes
3a8d532855
Allow the device list to take care of waiting for the device replug
...
This means that individual plugins do not have to manage thier own GUsbDevice
lifecycle and no longer have to call g_usb_context_wait_for_replug().
2018-08-31 16:41:40 +01:00
Richard Hughes
b1e49e8bdf
unifying: Specify the runtime counterpart GUID
...
This shouldn't have an effect now, but is required when the device list starts
handling the replug, and it seems logically correct.
2018-08-31 09:58:40 +01:00
Richard Hughes
f27f8781cd
unifying: Specify the plugin when in unifying mode
...
A small optimization, which avoids us querying all the USB plugins to find a
match each time.
2018-08-31 09:58:40 +01:00
Richard Hughes
838d91e4ed
Add support for counterpart GUIDs
...
These are GUIDs that are related to the main device, but should not be used for
quirk matching. For instance, we might want to list the GUIDs for a bootloader
mode, but we don't want to import all the quirks for the bootloader when in the
runtime mode.
2018-08-30 16:55:41 +01:00
Richard Hughes
22367e7948
trivial: Refactor out functionality from a mega-method
2018-08-30 16:53:19 +01:00
Richard Hughes
97a3c9651b
dfu: Set the quirk keys using the new vfunc
2018-08-29 14:27:57 +01:00
Richard Hughes
83d79e2e12
trivial: Move the DfuDevice class init to the bottom of the file
2018-08-29 14:27:57 +01:00
Mario Limonciello
812ac02bac
synapticsmst: Allow using a custom flag 'skip-restart'
...
This flag is intended for devices that the restart procedure will
be performed as part of a transactional update by an external
controller.
None of the currently supported devices need this flag.
2018-08-29 07:55:27 +01:00
Mario Limonciello
102074eeea
synapticsmst: Move GUID generation into quirks
...
This should allow trivially adding support for new
Tesla/Leaf/Panamera devices by a quirk.
2018-08-28 15:30:21 -05:00
Mario Limonciello
7555738827
synapticsmst: Set parentage for Dell WD15/TB16/TB18 docks through quirks
2018-08-28 18:30:00 +01:00
Mario Limonciello
926da40a88
thunderbolt: Move setting parentage of TB16 into quirks
2018-08-28 18:30:00 +01:00
Richard Hughes
39a5228331
trivial: Optimize adding DFU devices we know about
...
Explicitly mark known-supported devices in the quirk file so that we don't have
to call fu_plugin_usb_device_added() on all USB plugins.
2018-08-28 18:30:00 +01:00
Richard Hughes
a417d6c82a
trivial: Allow setting the firmware min and max sizes from quirk files
2018-08-28 18:30:00 +01:00
Richard Hughes
a62618303f
trivial: Set the quirks instance on the unifying context object
...
This allows us to match quirks on added GUIDs.
2018-08-28 18:30:00 +01:00
Richard Hughes
6dec401a67
Store the DeviceInstanceId as a GUID in the quirk database
...
This allows us to match non-DeviceID GUIDs, and also GUIDs we don't know how to
generate.
To make this fully useful, search for device quirks when GUIDs are added.
2018-08-28 18:30:00 +01:00
Mario Limonciello
c07ce5b488
thunderbolt-power: Use bolt force power API if available
...
This is new support for bolt supported by
https://gitlab.freedesktop.org/bolt/bolt/merge_requests/101
2018-08-28 09:47:56 -05:00
Richard Hughes
201d0cce54
trivial: Further simplify the fake DFU runtime logic
2018-08-28 15:33:43 +01:00
Richard Hughes
245b595f45
flashrom: Do not use no-longer-exported symbols
...
This was compiling and passing CI as the un-implemented legacy functionality
was still exported in the header.
Remove the prototypes for the missing symbols and fix up the plugin.
2018-08-28 15:26:34 +01:00
Richard Hughes
a0d7977968
dfu: Check the device state before assuming a fake runtime
...
If the device is not in APP_IDLE this doesn't make any sense.
2018-08-28 12:16:30 +01:00
Richard Hughes
04e321274a
dfu: Never add a fake DFU runtime when targets already exist
2018-08-28 12:16:26 +01:00
Richard Hughes
73bf2337c1
trivial: Add fu_common_strtoull() as a shared function
2018-08-28 09:41:10 +01:00
Richard Hughes
c16554252b
flashrom: Add a plugin for updating using the flashrom command line tool
2018-08-28 09:25:36 +01:00
Richard Hughes
e274f6654b
superio: Add support for the W740SU
...
From Thomas Krug, many thanks.
2018-08-27 09:32:49 +01:00
Richard Hughes
6bf9879189
trivial: Use the BaseboardProduct DMI match for superio
...
This will match more EC hardware that uses a customized BIOS.
2018-08-27 09:32:05 +01:00
Richard Hughes
cdb01590e0
nvme: Add a new plugin to update NVMe hardware
2018-08-26 19:42:28 +01:00
Richard Hughes
dd5b43f63b
udev: Use the new FuUdevDevice abstraction
2018-08-26 19:42:28 +01:00
Richard Hughes
95227a919d
trivial: Move gudev to the core plugin deps
2018-08-26 19:38:58 +01:00
Richard Hughes
07ed2f00fa
trivial: Use the new subclassed device methods
...
This just reduces our API surface a little, no behaviour change.
2018-08-24 21:48:59 +01:00
Richard Hughes
16e85aa8cf
superio: Add a new plugin to enumerate EC firmware
2018-08-24 20:37:27 +01:00
Richard Hughes
6d794e2de6
trivial: Fix linking when using Ubuntu 18.04
...
Apparently the linker complains when dlopen'ing a plugin that's linked against
the libfwupdprivate library the daemon is using. This only seems to happen when
using distro packages...
2018-08-23 17:29:31 +01:00
Richard Hughes
29129ed4f4
uefi: Allow upgrades using a self-signed fwupd.efi binary
...
This doesn't require shim, so for this uncommon case add a configure option.
Fixes https://github.com/hughsie/fwupd/issues/669
2018-08-23 14:30:04 +01:00
Richard Hughes
9d72954cc1
trivial: Fix linking problems with the recent FuChunk move
2018-08-23 09:11:15 +01:00
Mario Limonciello
df60f69814
uefi: Add special handling for /efi ( Closes #680 )
...
This is a similar problem to #627 (which was fixed by 9bdbbc5ca
).
Add special handling to allow writing to /efi/EFI
2018-08-22 16:43:20 -05:00
Thomas Hindoe Paaboel Andersen
a09f2212ec
wacomhid: fix allow trunc flag check
...
The size check would always short circuit as
FU_WAC_DEVICE_FEATURE_FLAG_ALLOW_TRUNC == 0
is never true. The error message was thus never
written even if a difference was found.
With this patch we check if ALLOW_TRUNC is set in flags
instead, and only write the error if it is not.
2018-08-22 19:53:28 +01:00
Thomas Hindoe Paaboel Andersen
24c6eb758f
unifying: remove duplicate && line
2018-08-22 19:53:28 +01:00
Richard Hughes
f22bd6e424
trivial: Move out the byte-array chunking to libfwupdprivate
...
Five plugins (soon to be 7) are linking to the DFU plugin just for this simple
segment-aware chunking functionality. Move this into common code to make
building simpler.
2018-08-22 15:14:12 +01:00
Richard Hughes
54879c6b9a
altos: Use the new FuDevice:probe vfunc
2018-08-22 13:32:29 +01:00
Mario Limonciello
e3f581297f
upower: Allow forcing installation even if no AC power is applied
2018-08-21 13:49:38 -05:00
Mario Limonciello
e3b1a3f558
Plumb through support to set FwupdInstallFlags for update_prepare/update_cleanup
...
This will be used by other future commits.
2018-08-21 13:49:38 -05:00
Richard Hughes
0971192575
trivial: Remove duplicate dependency() for json-glib
2018-08-21 09:43:08 +01:00
Mario Limonciello
25b49b6a6f
uefi: Add 'autofs' to supported filesystems ( Closes : #660 )
...
systemd-automount will unmount the ESP when not in use for some
people. This causes automatic ESP detection to fail.
In this case the ESP will need to be added to the conf file and
then this commit will let it keep working.
2018-08-20 07:44:17 -05:00
Mario Limonciello
f19222414c
trivial: synapticsmst: Let device finalize close remaining fd
2018-08-13 11:11:27 -05:00
Mario Limonciello
9818692336
synapticsmst: Use FuDeviceLocker for all instances of remote control
...
This will make sure that remote control requests are always paired with
a close.
2018-08-13 11:11:27 -05:00
Mario Limonciello
8bba1ed2ef
synapticsmst: Plumb error handling everywhere return codes are used
...
This makes the code more consistent, easier to debug and to reuse
in other plugins.
2018-08-13 11:11:27 -05:00
Mario Limonciello
32ac99c6dd
trivial: synapticsmst: remove unnecessary includes
2018-08-13 11:11:27 -05:00
Richard Hughes
4721112601
uefi: Don't assert when run as non-root
2018-08-13 11:29:37 +01:00