Commit Graph

14 Commits

Author SHA1 Message Date
Gaël PORTAY
be4e3fffdc genesys: usbhub: Identify HP usbhub using its public-key
The HP M2xfd monitors use GenesysLogic GL3523 USB Hub and provides their
own firmwares. Furthermore, HP uses the same VID/PID for other USB Hubs
products, with a different public-key; the HP M24fd and M27fd use
different public-key.

This appends the public-key to the instance-id string to make the
distinction between all the HP USB Hubs, and prevents to install a
firmware with the wrong public-key.
2022-03-23 20:46:39 +00:00
Gaël PORTAY
ad3cf1874a genesys: Fix typo in README.md
The device name HP USB-C Controller.
2022-03-23 20:46:39 +00:00
Gaël PORTAY
9ff6c88acf genesys: usbhub: Prefix error at probe
For the sake of consistancy.
2022-03-23 20:00:33 +00:00
Gaël PORTAY
3be9fbb301 genesys: usbhub: Fail silently if unsupported IC type
Genesys Logic uses the same VID/PID for its USB Hubs products, whatever
the chip underneath (GL3523, GL3590...). For example, Genesys Logic
USB2.0 Hub uses 05E3/0610; and Genesys Logic USB3.1 Hub uses 05E3/0612.

The manufacturers may reuse the Genesys Logic VID/PID for its products
or may use its own VID such as HP (03F0).

The genesys plugin supports upgrading GL3523 USB and GL3590 USB2.0 Hubs
for now (the latter is not tested).

The quirk file limits the support to HP Hubs only; and the plugin will
allow upgrade Hub with genuine Genesys Logic VID/PID in the future by
adding the following lines to the quirk file:

	[USB\VID_05E3&PID_0610]
	Plugin = genesys

However, this change in the quirk file will report the errors below for
the Hub with IC that are not supported:

	04:26:40:0325 FuEngine             failed to add device usb:01:00:01: Unsupported IC GL3521-22
	04:26:40:0344 FuEngine             failed to add device usb:01:00:01: Unsupported IC GL3521-22

Note: This may be true already if HP uses Hubs with IC that are not
unsupported.

This change returns the error FWUPD_ERROR_NOT_SUPPORTED instead to fail
silently.
2022-03-23 20:00:33 +00:00
Gaël PORTAY
fa7c297b98 genesys: usbhub: Print unsupported IC type
This rewords the error message to print the unsupported IC type.
2022-03-23 20:00:33 +00:00
Gaël PORTAY
333c32a8e0 genesys: Fix memory leak 2022-03-23 17:22:53 +00:00
Gaël PORTAY
7fc784d612 genesys: scaler: Get real software version
The plugin gets the panel-type (i.e. hardware revision) as the firmware
version.

This gets the real firmware version, and appends the panel-type to the
instance-id string as the blobs are specific to panel-types.
2022-03-22 14:20:37 +00:00
Gaël PORTAY
388fadc347 genesys: scaler: Fix Special Protect Sector structure length
The Special Protect Sector structure is 24-bit long.

This replaces the 32-bit integer in union that makes the structure
8-bits too big by an array of 3-bytes.
2022-03-22 14:19:48 +00:00
Gaël PORTAY
41ab816fed genesys: scaler: Fix creation of error
The GError object is not yet created, and cannot be prefixed though.

This creates the GError using the function g_set_error().
2022-03-22 14:19:48 +00:00
Richard Hughes
c4ca026294 Allow devices to build instance IDs more easily
Provide a device instance builder that allows plugins to easily
create multiple instance IDs based on parent attributes.

Also fix a lot of the instance ID orders, so that we add more generic
IDs first, and more specific IDs after.
2022-03-03 09:13:29 +00:00
Mario Limonciello
661990ed98 Convert build system to use meson tristate features
tristate features will automatically disable if dependencies marked
as required are missing.

Packagers can manually override using `auto_features`.

Link: https://mesonbuild.com/Build-options.html#features
2022-02-28 08:34:48 -06:00
Richard Hughes
758d5d8c6f Add a flag to indicate the device is signed or unsigned
Devices without either flag are unknown.
2022-02-22 19:12:06 +00:00
Mario Limonciello
7b3f3ccc65 trivial: genesys: fix some warnings about unused symbols on old gusb 2022-02-21 12:36:14 -06:00
Ricardo Cañuelo
9466e778f5 Add a new plugin to handle HP M2xfd monitors
Added support for genesys logic devices.
2022-02-21 08:30:43 +00:00