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
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
Richard Hughes
038d8f463e
vli-usbhub: Fix the quirk for the legacy VIA 813 chip
2019-12-10 14:02:13 +00: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
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
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
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
Vincent Huang
3e3a0277c9
synaptics-prometheus: Allow incremental version major and minor number
2019-12-03 11:06:52 +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
Francois Berder
bb5385de76
plugins: Fix potential use of NULL pointer in fu_dell_dock_mst_write_register
...
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
2019-11-29 06:33:09 -06:00
Richard Hughes
1d797668fa
synaptics-prometheus: Reload the device version after IOTA update
2019-11-29 12:04:42 +00:00
Richard Hughes
6d80b84b95
synaptics-prometheus: Reload the device version after update
2019-11-29 12:03:04 +00:00
Crag Wang
923120e55f
trivial: wacom: remove coretronic config from Moffett scope
2019-11-28 06:37:53 -06:00
Richard Hughes
6aceaf9409
trivial: Fix a NULL/FALSE confusion
2019-11-27 16:36:17 +00:00
Richard Hughes
6e5fd3b3d8
trivial: Fix coreboot commit to fix CI
2019-11-27 14:40:49 +00:00
Patrick Rudolph
b21c3af2ea
plugins/coreboot: Improve version detection
...
Only on Lenovo devices the DMI version string is prefixed with
CBETxxxx to make the thinkpad_acpi kernel module happy.
Add a new quirk called "CorebootVersionQuirks" to detect platforms
that need to cut of the prefix.
Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
2019-11-27 14:26:26 +00:00
Patrick Rudolph
bd94740404
plugins/coreboot: Get rid of FU_HWIDS_KEY_BIOS_VENDOR in coldplug
...
In fu_plugin_startup we make sure that the FU_HWIDS_KEY_BIOS_VENDOR
matches "coreboot", so there's no need to read it again.
Remove the call to fu_plugin_get_dmi_value and drop the first call
to fu_device_set_vendor as it gets overwritten below.
Hardcode the id string for now.
Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
2019-11-27 14:26:26 +00:00
Richard Hughes
3ed2ac8315
trivial: Unexport fu_test_get_filename()
...
We don't actually need either of the things it provides (looking up in source
and built, and converting to an absolute path) so just replace it with
g_build_filename() instead.
This also has the advantage that it does the right thing on Windows.
2019-11-27 12:45:35 +00:00
Richard Hughes
606fa91dae
trivial: Unexport fu_test_compare_lines()
...
It's only used two places in the self tests.
2019-11-27 12:45:35 +00:00
Richard Hughes
aed7826c8f
trivial: Properly namespace the defines in the exported header
2019-11-27 12:45:35 +00:00
Mario Limonciello
6b0e66354b
Convert libfwupdprivate to a shared library libfwupdplugin
2019-11-27 11:32:43 +00:00
Richard Hughes
9e5675e1b4
trivial: Allow compiling without <glib-unix.h>
2019-11-26 17:15:45 +00:00
Richard Hughes
f0f504c740
trivial: Do not use FuProgressbar in dfu-tool
...
This is a debug-only command line program, and we don't want plugins to have
access to the animated progressbar header in the future.
2019-11-26 17:15:18 +00:00
Richard Hughes
ed3f6cfd4f
synaptics-prometheus: Manually set the bootloader mode when attaching
...
The fingerprint reader device doesn't actually disconnect and reconnect and
so the FuDevice->setup() vfunc never gets called.
2019-11-26 14:15:11 +00:00
Richard Hughes
aba4a5a2bd
trivial: Split out a new helper funtion
...
Other devices need to use this functionality too.
2019-11-26 14:15:11 +00:00
Richard Hughes
11d10a00e7
Always use the more portable 3-arg form for open()
2019-11-26 14:14:37 +00:00
Richard Hughes
5c508de173
trivial: Allow compiling without <fnmatch.h>
...
This also allows us to add a Win32 implementation if required in the future.
2019-11-26 13:13:31 +00:00
Richard Hughes
28e8b953d0
Revert "synaptics-rmi: Use the build ID as the version number to match the vendor tool"
...
This reverts commit 28ab968cbf
as Synaptics
deviced that vmajor and vminor would actually be useful.
2019-11-26 08:25:45 +00:00
Richard Hughes
cb59a44f28
synaptics-prometheus: Mirror the _IS_BOOTLOADER from device to config
2019-11-25 18:10:38 -06:00
Richard Hughes
741e1e5323
vli_usbhub: Set the composite parent at construction time
2019-11-25 20:01:33 +00:00
Richard Hughes
0df243ad44
synaptics-prometheus: Set the composite parent at construction time
2019-11-25 20:01:33 +00:00
Richard Hughes
52e15b8fb3
vli-usbhub: Whitelist the PD and I²C devices
...
On advice from VIA.
2019-11-25 12:36:13 -06:00
Richard Hughes
56ac823af9
Set the protocol per-device not per-plugin
...
Some plugins have devices with more than one protocol. Logically the protocol
belongs to the device, not the plugin, and in the future we could use this to
further check firmware that's about to be deployed.
This is also not exported into libfwupd (yet?) as it's remains a debug-feature
only -- protocols are not actually required for devices to be added.
2019-11-25 18:01:54 +00:00
Richard Hughes
28ab968cbf
synaptics-rmi: Use the build ID as the version number to match the vendor tool
2019-11-25 17:44:25 +00:00
Richard Hughes
1665837e78
Make gudev a compile-time option
...
This should make it nearly possible to build fwupd on FreeBSD.
2019-11-25 09:29:46 +00:00
Richard Hughes
afdba37644
trivial: Set the offline trigger using an environment variable
...
This allows us to build a object that does not have a custom FU_OFFLINE_DESTDIR.
2019-11-25 09:29:46 +00:00
Mario Limonciello
6abe21efbd
trivial: stop including fu-hash.h as part of fu-plugin-vfuncs.h
...
Explicitly include it in all "in-tree" plugins.
If headers are exported out of tree we will likely explicitly not
export this header.
2019-11-25 09:29:46 +00:00