Richard Hughes
1ac566bc09
Release fwupd 1.3.6
2019-12-30 09:19:41 +00:00
Michael Forney
9bdb96f768
plugins/coreboot: Add missing fu_hash dependency
...
This fixes the build when using samurai in place of ninja.
2019-12-18 08:33:10 +00:00
Mario Limonciello
171758180d
trivial: synaptics-cxaudio: Add Google type C <-> 3.5mm adapter
2019-12-15 20:17:42 -06:00
Mario Limonciello
c23e61296b
fu-engine: don't expose bootloader version errors to users
...
These messages are useful for debugging but not to users. Many issues
get filed because they're cryptic and users can't do anything about them.
Downgrade the actual messages to debugging in the engine, and just send
back a generic message for clients.
Fixes : #1659
Fixes : #1261
2019-12-13 12:46:34 -06:00
Mario Limonciello
a21802acad
trivial: dell-dock: drop unused quirk keyx
2019-12-12 13:59:41 -06:00
Mario Limonciello
fd6ffd6dac
trivial: rename synapticsmst to synaptics-mst
...
This brings the naming nomenclature inline with the other plugins
2019-12-12 13:59:41 -06:00
Mario Limonciello
a906cef924
trivial: actually set vendor ID for synaptics
...
The `README.md` was updated, but this device wasn't actually setting
a vendor ID.
2019-12-12 13:59:41 -06:00
Mario Limonciello
2c6a5f952f
fu-remote-list: Drop fallback path behavior
...
When installed using systemd, the system will try to use the paths
that are for the system wise configuration directory for remotes
and configuration. If those paths don't exist, fallback to the ones
that were configured for the package itself.
So basically if installed into `$PREFIX` `/usr/local` on most systems
if starting from systemd the path `/etc` gets used. Otherwise `/usr/local/etc`
would be used.
2019-12-12 13:23:13 -06:00
Mario Limonciello
695cb5884b
libfwupdplugin: Make sure systemd created environment variables exist
...
If they don't, fall back to the package defined directories.
2019-12-12 13:23:13 -06:00
Mario Limonciello
62b8336383
trivial: fu-remotes-list: drop usage of FU_SELF_TEST_REMOTES_DIR
...
Instead use `CONFIGURATION_DIRECTORY`, which already supported by
`fu-common`.
2019-12-12 13:23:13 -06:00
Mario Limonciello
fc326d9ad4
trivial: synaptics-rmi: hardcode Vendor string
...
Right now vendor string is detected by walking up the udev chain
until a vendor is found. On some systems this is finding incorrect
data such as `Intel Corporation` for the vendor on the touchpad.
As the plugin only supports Synaptics devices, Correct it by hardcoding
vendor to `Synaptics`.
Sample output:
```
└─Touchpad:
Device ID: b26933c085b020ecf84c490812458523aee710ac
Current version: 1.5.2767034
Bootloader Version: 54.0
Vendor: Synaptics (HIDRAW:0x06CB)
GUIDs: f4384034-9243-5334-8075-a534be913e46 ← HIDRAW\VEN_06CB&DEV_76AF&REV_00
424bd00e-9789-5cdf-a12a-3c81bc4676d6 ← HIDRAW\VEN_06CB&DEV_76AF
140f4458-951b-5bb9-85e2-879bd5b02615 ← SYNAPTICS_RMI\TM3038-003
b29d3c85-cd0e-503e-9c7e-f6731c1eaf2d ← SYNAPTICS_RMI\TM3038
Device Flags: • Internal device
• Updatable
```
2019-12-12 09:57:47 -06:00
Mario Limonciello
e2db568490
trivial: Set vendor ID for Dell WD19 to USB:0x413C ( Fixes : #1653 )
...
View after this update:
```
├─WD19TB:
│ │ Device ID: a455a3a21752e5d31c228f1f5b51761dad88a432
│ │ Summary: High performance dock
│ │ Current version: 01.00.00.02
│ │ Minimum Version: 01.00.00.00
│ │ Vendor: Dell Inc. (USB:0x413C)
│ │ Install Duration: 1 minute
│ │ Serial Number: J4T6SV2/3169046018716226
│ │ GUID: cd357cf1-40b2-5d87-b8df-bb2dd82774aa ← USB\VID_413C&PID_B06E&hub&embedded
│ │ Device Flags: • Updatable
│ │ • Requires AC power
│ │ • Supported on remote server
│ │ • Device stages updates
│ │ • Device can recover flash failures
│ │ • Device is usable for the duration of the update
│ │
│ ├─Thunderbolt controller in Dell dock:
│ │ Device ID: 8357922f7f208e1f3b7537141ce17db04bc219d9
│ │ Summary: Thunderbolt controller
│ │ Current version: 43.00
│ │ Vendor: Dell Inc. (TBT:0x00D4)
│ │ Install Duration: 22 seconds
│ │ GUID: c94770ca-1773-592c-b20a-e87243bc7cd0 ← TBT-00d4b070
│ │ Device Flags: • Updatable
│ │ • Requires AC power
│ │ • Supported on remote server
│ │ • Device stages updates
│ │
│ ├─Package level of Dell dock:
│ │ Device ID: 1eca9eabb0c992c136e1deb1f89e3f70c465aa1c
│ │ Summary: A representation of dock update status
│ │ Current version: 01.00.08.01
│ │ Vendor: Dell Inc. (USB:0x413C)
│ │ Install Duration: 5 seconds
│ │ GUID: 8ceeeffd-51b6-580c-9b75-69143227aff8 ← USB\VID_413C&PID_B06E&hub&status
│ │ Device Flags: • Updatable
│ │ • Supported on remote server
│ │ • Device can recover flash failures
│ │ • Device is usable for the duration of the update
│ │
│ ├─RTS5413 in Dell dock:
│ │ Device ID: ca36279eeac13463fd5d974c88794859294fbfb1
│ │ Summary: USB 3.1 Generation 1 Hub
│ │ Current version: 01.21
│ │ Vendor: Dell Inc. (USB:0x413C)
│ │ Install Duration: 14 seconds
│ │ GUIDs: 86fb40c0-8bf5-5a8b-a4ad-3156cf6bfaf4 ← USB\VID_413C&PID_B06F&REV_0101
│ │ b27d25f1-019d-5718-b41a-02ddaefe5577 ← USB\VID_413C&PID_B06F
│ │ ac5b774c-b49d-566b-9255-85f0f7f8a4ed ← USB\VID_413C&PID_B06F&hub
│ │ Device Flags: • Updatable
│ │ • Requires AC power
│ │ • Supported on remote server
│ │ • Device stages updates
│ │ • Device is usable for the duration of the update
│ │
│ ├─RTS5487 in Dell dock:
│ │ Device ID: acb404019656654d44f80922d94735e831d9bb40
│ │ Summary: USB 3.1 Generation 2 Hub
│ │ Current version: 01.47
│ │ Vendor: Dell Inc. (USB:0x413C)
│ │ Install Duration: 3 seconds
│ │ GUIDs: 707c63d2-e597-5c40-84db-9b1bb4c48d96 ← USB\VID_413C&PID_B06E&REV_0101
│ │ acfcd89b-105d-55b9-b85b-08bf8508f38c ← USB\VID_413C&PID_B06E
│ │ 568ffa1e-a0db-5287-9ea3-872b60f7730b ← USB\VID_413C&PID_B06E&hub
│ │ Device Flags: • Updatable
│ │ • Requires AC power
│ │ • Supported on remote server
│ │ • Device stages updates
│ │ • Device is usable for the duration of the update
│ │
│ └─VMM5331 in Dell dock:
│ Device ID: 58931e8c9ef5eead9c007563814f96fcadb1b993
│ Summary: Multi Stream Transport controller
│ Current version: 05.04.00
│ Vendor: Dell Inc. (USB:0x413C)
│ Install Duration: 6 minutes
│ GUID: 89fec0b6-6b76-5008-b82c-5e5c6c164007 ← MST-panamera-vmm5331-259
│ Device Flags: • Updatable
│ • Requires AC power
│ • Supported on remote server
│ • Device stages updates
│ • Device is usable for the duration of the update
```
2019-12-12 09:44:20 -06:00
Richard Hughes
0cc22a5ff6
trivial: Document the use of vendor-id in each plugin
2019-12-11 18:10:44 +00:00
Richard Hughes
d3d64b5b54
superio: Use the baseboard vendor as the vendor ID
2019-12-11 18:10:44 +00:00
Richard Hughes
56700a3db8
uefi: Use the BIOS vendor as the vendor ID
...
This is only set for non-FMP ESRT entries.
2019-12-11 18:10:44 +00:00
Richard Hughes
89425b01bd
coreboot: Use the BIOS vendor as the vendor ID
2019-12-11 18:10:44 +00:00
Richard Hughes
49eeca05d0
flashrom: Use the BIOS vendor as the vendor ID
2019-12-11 18:10:44 +00:00
Richard Hughes
3544ac03b3
dell: Hardcode a plausible vendor ID
2019-12-11 18:10:44 +00:00
Richard Hughes
d1b9bbd842
emmc: Set the correct vendor ID prefix
2019-12-11 18:10:44 +00:00
Mario Limonciello
5d94afae2d
fu-util-common: correct the default prompt for reboot/shutdown ( Fixes : #1617 )
...
Y/n means that Y is the default if you press enter.
y/N means that N is the default if you press enter.
2019-12-11 07:08:17 -06:00
Richard Hughes
d1808aae67
Split out the remote loading from FuConfig
...
It's confusing to have FuConfig load both the daemon.conf file and also keep
track of the enabled remotes. It's also wasteful of memory to keep the GKeyFile
alive the entire time.
Logically these are different pools of information and should be managed by
different objects. This allows us to implement reload() in a sane way and be
less reliant on the inotify event.
2019-12-10 21:40:31 +00:00
Richard Hughes
038d8f463e
vli-usbhub: Fix the quirk for the legacy VIA 813 chip
2019-12-10 14:02:13 +00:00
Mario Limonciello
7e4949c4f8
Clarify error messages when no upgrades available
2019-12-09 10:45:49 -06:00
Richard Hughes
3885789156
trivial: Don't handle a vendor-id requirement error that cannot happen
...
The vendor ID comparison is either 'eq' or 'regex' and 'ge' just doesn't makes
sense in this context.
2019-12-09 12:57:46 +00:00
Richard Hughes
12843af7e2
Only check the vendor ID if the device has one set
...
This means we don't get a weird error if the metadata sets a vendor-id, but the
device does not.
2019-12-09 12:57:46 +00:00
Mario Limonciello
baa9e75ca8
fu-install-task: Enforce that device protocol matches metadata
...
Currently devices with a matching GUID will match any metadata that
has the same GUID.
For Dell in the future there will be a situation that the same GUID
is supported by two different FwupdDevice objects but the payload
required for the different objects will vary.
So start matching the protocol and the GUID both to make sure that
the right Fwupd device gets matched from the metadata.
2019-12-06 09:56:08 -06:00
Richard Hughes
f5c6e1d276
Add a new plugin that can parse the TPM event log
...
Some devices do not have a stable PCR0 for the same firmware version, and I'd
like to collect the TPM event log for affected machines to debug why.
2019-12-06 15:05:16 +00:00
Richard Hughes
dad3597e76
Allow other plugins to contribute report metadata
2019-12-06 15:05:16 +00:00
Mario Limonciello
ad311189d4
trivial: dell: hardcode the physical device ID for tpm to match the tpm plugin
...
This allows the better-than logic to work properly.
2019-12-05 21:05:17 +00:00
Richard Hughes
fbb677bee2
Add a new plugin that exposes the system TPM device firmware version
...
This plugin does not yet allow the device to be upgraded, and is provided for
information only.
2019-12-05 21:05:17 +00:00
Richard Hughes
6c924a69c4
Add fu_udev_device_set_flags()
...
This allows us to specify with more detail how the device is opened.
2019-12-05 14:08:48 -06:00
Richard Hughes
0731b825f4
trivial: Render large values of VersionRaw in a more portable way
2019-12-05 10:56:41 -06:00
Mario Limonciello
bda8bdf0e6
trivial: wacom-raw: mark all Moffett SKUs as self recovery
...
These will all support the recovery feature added by 59970600ad
2019-12-05 08:05:49 -06:00
dkadioglu
1db7e987ae
Throw exit status 0 (instead of 2) if there is no firmware to be updated
...
see #1635
2019-12-04 14:42:13 -06:00
Richard Hughes
f1a7122250
Add a dell-bios
version format
...
Dell does not include the first byte in the ESRT value, ignoring it. Using a
`quad` means we get versions like `0.1.4.0` rather than `1.4.0` which confuses
both users comparing versions to the vendor website, and also anyone trying to
do analysis on the firmware.
2019-12-04 16:22:46 +00:00
Richard Hughes
df049edf0f
Add support for multiple LVFS::VersionFormat tags
...
We painted ourselves into a corner when we added the `LVFS::VersionFormat`
metadata key, as using newer keys like `bcd` would not be recognised by older
versions of the daemon as there was no explicit fallback path.
This allows plugins or devices to 'upgrade' from simpler formats like:
* `pair` -> `bcd`
* `quad` -> `intel-me`
* `triplet` -> `surface`
* `plain` -> `misc-defined-vendor-format`
This means the LVFS can write multiple `LVFS::VersionFormat` keys, although the
'older' version format has to be listed first to preserve compatibility with
older daemon versions that just validate the first matching node.
2019-12-04 16:22:46 +00:00
Richard Hughes
1fbcb1a180
Do not do semver conversion in fu_common_vercmp()
...
We don't know the version format, and so it's impossible to do it reliably --
just do it in the caller where we *do* know the FuDevice version format.
2019-12-04 15:45:30 +00:00
Richard Hughes
df8833e875
trivial: Deprecate fu_common_version_parse()
...
This hardcodes the version format of 'triplet' which isn't always correct for
obvious reasons.
2019-12-04 15:45:30 +00:00
Richard Hughes
f21add626c
trivial: Support 'plain' in fu_common_version_from_uintXX()
2019-12-04 15:45:30 +00:00
Richard Hughes
5ef1862cc5
Add the sysfs 'description' as the one-line device summary
2019-12-04 15:27:09 +00:00
Richard Hughes
3d48c1bbbc
trivial: Also print the parent keys when using FU_UDEV_DEVICE_DEBUG
2019-12-04 15:27:09 +00:00
Richard Hughes
d865d2473e
trivial: Add fu_common_version_from_uint64()
2019-12-04 14:50:41 +00:00
Richard Hughes
da80c1bda3
trivial: Convert the VersionRaw value to a uint64_t for future use
...
This has not been in any tarball release and so isn't a ABI break.
2019-12-03 10:46:17 -06:00
Richard Hughes
45a00738d8
Allow building on Windows with MinGW
...
Add various fixes to enable us to build a selection of useful USB plugins.
Also, skip tests that don't make sense on WIN32 or that will not work.
With much help from Mario Limonciello <mario.limonciello@dell.com> -- Thanks!
2019-12-03 16:33:43 +00:00
Vincent Huang
3e3a0277c9
synaptics-prometheus: Allow incremental version major and minor number
2019-12-03 11:06:52 +00:00
Andreas Scherbaum
e3f1e9fa34
Replace 'scheduing' with 'scheduling'
2019-12-02 06:52:16 +00:00
Richard Hughes
10079e6b8c
Export the raw device version to the client --verbose output
...
It turns out this is really useful for debugging UEFI firmware updates which
typically use the 0x-prefixed version numbers without a version format.
2019-12-02 06:51:25 +00:00
Richard Hughes
297d1598ef
trivial: Only dlopen the test plugin once
...
This causes problems in the self tests when not lazy-loading symbols.
Also use g_build_filename() for the paths to be more portable and readable.
2019-12-01 20:59:19 +00:00
Richard Hughes
4f023420c6
Export the device protocol to the client --verbose output
...
It turns out this is useful for debugging.
2019-12-01 06:31:05 -06:00
Mario Limonciello
19d948ea39
trivial: installed-tests: try to display journal for failed tests
...
This should help make debugging from CI infrastructures such as
autopkgtest easier.
2019-12-01 06:23:27 -06:00