Commit Graph

265 Commits

Author SHA1 Message Date
Richard Hughes
104459bd10 Check the AMI test key if not installed for HSI-1
Fixes https://github.com/fwupd/fwupd/issues/2695
2021-01-05 17:09:02 +00:00
Richard Hughes
ee2e2c3674 uefi: Rename to uefi-capsule
Rename the plugin to make it clearer of the scope.

Based on a patch from Mario Limonciello <mario.limonciello@dell.com>
2021-01-05 15:31:22 +00:00
Richard Hughes
eddaed0c11 Allow specifying more than one VendorID for a device
Asking the user for the UID mapping isn't working very well, as it requires lots
of manual handholding. It also doesn't work very well when the device vendor
does not actually have a PCI ID or if the vendor has split into two entities.

Just use the OUI address as an additional VendorID and match any of the device
IDs against any of the metadata-supplied values.
2021-01-04 22:30:20 +00:00
Jimmy Yu
23cd466ef1 Add plugin to update PixArt RF devices
Signed-off-by: Richard Hughes <richard@hughsie.com>
2021-01-04 17:20:13 +00:00
Richard Hughes
f475b48718 trivial: post release version bump 2020-12-08 10:17:13 +00:00
Richard Hughes
00640f42f2 Lower the CURL version required to fix build in RHEL
Some vendors really really want 1.5.x in newer RHEL versions, but the version
of curl is too old. Add #ifdefs so that we can emulate (somewhat imperfectly)
the 'new' CURLU functonality.
2020-12-07 14:17:22 +00:00
Mario Limonciello
5198bdcde2 trivial: make platform integrity plugin optional and disabled by default
Fixes: #2634
When it's upstream, we may consider to change this for some distros.
2020-12-03 09:07:49 +00:00
Richard Hughes
d1f901a012 trivial: Ensure old ODM remotes are fixed on upgrade 2020-11-29 07:24:33 +00:00
Richard Hughes
6b57229def trivial: Add Recommends udisks2 to the example spec file 2020-11-23 16:03:48 +00:00
Richard Hughes
3a73c342ba Switch from libsoup to libcurl
The former drags on glib-networking and then gsettings-desktop-schemas, which
add over 5Mb to the minimal IoT and CoreOS composes. Everything already uses
libcurl (even NetworkManager!) and so this is an easy way to reduce image size.
2020-11-19 19:39:37 +00:00
Mario Limonciello
fa36c88514 trivial: fedora: switch back to defaults for redfish and nvme plugins 2020-11-18 08:21:00 +00:00
tinywrkb
07d5aef247 Install modules-load configs in the correct directory
Signed-off-by: Richard Hughes <richard@hughsie.com>
2020-11-16 15:27:13 +00:00
Mario Limonciello
bdaa080be3 trivial: disable bios plugin outside of systems with uefi
Fixes: #2576
2020-11-13 08:19:30 +00:00
Mario Limonciello
bd60de12be Add a flag to indicate if packages are supported
Anyone can easily add this, but it makes it clearer that by default hand
build, snap, and flatpak are not checked by anyone.
2020-11-11 14:34:59 -06:00
Richard Hughes
e29294d7f2 trivial: Add systemd-devel to fwupd BRs 2020-11-10 20:35:55 +00:00
Richard Hughes
db4894e863 hailuck: Add an plugin for the Pinebook Pro laptop
This is not complete enough for LVFS-usage, but good enough to use with commands
such as fwupdtool. It's likely newer kbd and tp firmware will be required to
integrate with the fwupd in all required ways.
2020-11-09 16:17:34 +00:00
Thierry Vignaud
aa52c0cc64 trivial: Use proper %{_mandir} macro
Signed-off-by: Richard Hughes <richard@hughsie.com>
2020-11-04 08:21:32 +00:00
Tomas Winkler
f994813858 contrib: fwupd.spec : install tests only when enabled.
Install tests in the rpm package only when tests are enabled.

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
2020-10-13 11:51:19 -05:00
Richard Hughes
e8e7a16c2e trivial: Fix aarch64 Fedora build 2020-10-12 09:17:47 +01:00
Richard Hughes
4123885c81 bcm57xx: Add a plugin that can update the BCM5719 network adapter 2020-10-08 16:49:07 +01:00
Richard Hughes
a1bc349dba spec: Split out a fwupd-plugin-flashrom subpackage
This is installed by default, but means it can be excluded from the minimal
CoreOS image. It's highly unlikely that anything running CoreOS has anything
unlocked that can be flashed using flashrom.

This drops inclusion of dmidecode, libftdi, pciutils-libs and flashrom as hard
dependencies from the package set.
2020-10-07 13:08:54 +01:00
Richard Hughes
8d850db5cd spec: Split out a fwupd-plugin-modem-manager subpackage
This is installed by default, but means it can be excluded from the minimal
CoreOS image. It's highly unlikely that anything running CoreOS has mobile
broadband hardware attached.

This drops inclusion of libmbim, libqmi and ModemManager-glib as hard
dependencies from the package set.
2020-10-07 13:08:54 +01:00
boger.wang
4986e0f020 Add plugin for goodix fingerprint sensors
Support updating firmware for Goodix MOC fingerprint sensors.
2020-09-28 12:43:49 +01:00
Richard Hughes
13bae744be platform-integrity: Use the BCR values provided by the kernel class
This requires the new kernel driver by Daniel Gutson.
2020-09-14 16:18:12 +01:00
Mario Limonciello
110eb286bc Make TPM more optional (Fixes: #2360)
- Rename the `plugin_tpm` option to `tpm` and when it's disabled
remove TPM support from all plugins
- If enabled then require the TSS to be installed
2020-09-08 15:16:58 -05:00
Richard Hughes
840e84bcf2 elantp: Add a plugin to update Elan Touchpads using HID 2020-09-01 12:17:44 +01:00
Benson Leung
96bad357ad Require libgusb 0.3.5
Newer version of libgusb has g_usb_device_get_configuration_index which
will be used by cros-ec plugin.

Skip bumping this dependency on Debian and Ubuntu as of this commit date,
they don't know about 0.3.5 yet.
2020-08-28 10:48:03 -07:00
Richard Hughes
019c096fcc trivial: Fix Fedora s390x build 2020-08-28 16:58:08 +01:00
Richard Hughes
439945c71c trivial: Do not require and obsolete dbxtool 2020-08-28 16:58:08 +01:00
Mario Limonciello
5de5dd3582 Install the installed tests
Move binaries out of fwupd tree to https://github.com/fwupd/fwupd-test-firmware

Fixes some of https://github.com/fwupd/fwupd/issues/1956
2020-08-28 10:10:43 -05:00
Mario Limonciello
82c3e3471d Remove support for UEFI dbx security attribute
This is no longer relevant as fwupd is providing dbxtool now.
2020-08-19 07:38:51 +01:00
Richard Hughes
58ba785915 Install the new dbx utility as fwupdbxtool 2020-08-18 17:34:26 +01:00
Richard Hughes
ced2fa1ca4 trivial: Fix the Fedora CI 2020-08-06 15:31:58 +01:00
Richard Hughes
45adc67c82 trivial: Fix aarch64 Fedora build 2020-07-29 15:05:15 +01:00
Richard Hughes
cad96542e2 Check if CET is actually being used on the runtime system
With thanks to H.J. Lu <hjl.tools@gmail.com> for the initial code.
2020-07-27 15:53:38 +01:00
Richard Hughes
fa540cf539 trivial: Fix aarch64 Fedora build 2020-07-22 09:45:42 +01:00
Richard Hughes
9a04ce8f29 msr: Add a new plugin to detect the Intel DCI state 2020-07-16 20:13:06 +01:00
Richard Hughes
2ba1a853a4 Drop the automatic /usr/bin/python3 rpmbuild dependency
We ship 4 *tiny* python scripts that are useful for ODMs and other people
working with low level firmware blobs.

These helper utilities do not warrant dragging Python onto the CoreOS image.
2020-06-25 17:16:57 +01:00
Mario Limonciello
91e27e145a Add a new plugin for legacy BIOS
This plugin is only enabled when coreboot isn't detected.
It intentionally does not check for EFI to be disabled at startup
since it can also notify the user that UEFI capsule updates are
disabled on the system even if running in UEFI mode.
2020-06-22 11:22:18 +01:00
Benson Leung
cd65aeaa41 Require libgusb 0.3.3
Newer version of libgusb has support for a usb endpoint wrapper.
2020-05-29 06:55:40 +01:00
Benson Leung
b483044a8d cros-ec: Initial skeleton
Set it up as a USB device plugin, with the initial device in quirks
being Servo Micro debug board.
2020-05-29 06:55:40 +01:00
Mario Limonciello
4a844c3024 trivial: drop libgpgme deps
These aren't needed anymore since moving to libjcat
Note: snap still keeps them because libjcat builds in snap and
needs them.
2020-05-26 08:25:08 +01:00
Richard Hughes
63fa4effd3 pci-mei: Check the ME device is not in manufacturing mode 2020-05-15 21:28:27 -05:00
Mario Limonciello
8b5bcbb9e3 Add a new plugin for IOMMU support 2020-05-15 11:32:51 -05:00
Richard Hughes
730e2bd6e3 linux-spi-lpc: Disable by default
The kernel patches are a log way from being upstreamed, so disable this until
there is even a chance the user might be running it.

This removes the obsoletes line from *every* system running 'fwupdmgr security'.
2020-05-15 10:21:07 +01:00
Richard Hughes
8fdefd459b pci-bcr: Read the PCI BCR config register from userspace
We can read this from userspace even when SB is turned on and with the kernel
locked down. The kernel securityfs patches are still in-progress, but will take
significant time to get upstream.

The kernel patches are needed when the PCI device is hidden from userspace.
2020-05-15 10:21:07 +01:00
Richard Hughes
c1eda7d516 Add many new plugins to support for the Host Security ID
The HSI specification is currently incomplete and in active development.

Sample output for my Lenovo P50 Laptop:

    Host Security ID: HSI:2+UA!

    HSI-1
    ✔  UEFI dbx: OK
    ✔  TPM: v2.0
    ✔  SPI: Write disabled
    ✔  SPI: Lock enabled
    ✔  SPI: SMM required
    ✔  UEFI Secure Boot: Enabled

    HSI-2
    ✔  TPM Reconstruction: Matched PCR0 reading

    HSI-3
    ✘  Linux Kernel S3 Sleep: Deep sleep available

    HSI-4
    ✘  Intel CET: Unavailable

    Runtime Suffix -U
    ✔  Firmware Updates: Newest release is 8 months old

    Runtime Suffix -A
    ✔  Firmware Attestation: OK

    Runtime Suffix -!
    ✔  fwupd plugins: OK
    ✔  Linux Kernel: OK
    ✔  Linux Kernel: Locked down
    ✘  Linux Swap: Not encrypted
2020-05-12 21:20:18 +01:00
Richard Hughes
b9640a28ec uefi-dbx: Add a plugin that analyses the UEFI dbx variable
This will be used for future functionality.
2020-05-07 16:59:36 +01:00
Richard Hughes
d744fe8b67 linux-swap: Rename the plugin as it is Linux specific
We'll be adding other linux-foo plugins in the future, so it makes sense to get
the namespace correct now.
2020-05-07 12:42:34 +01:00
Richard Hughes
c368958518 swap: Add a plugin that parses /proc/swaps
This will be used for future functionality.
2020-05-06 15:09:59 +01:00