mirror of
https://git.proxmox.com/git/fwupd
synced 2025-08-05 08:47:39 +00:00
dell-dock: Set minimum board to board 4
This allows dropping all the quirks related to older boards.
This commit is contained in:
parent
993fc1636c
commit
8963d6b4b2
@ -70,8 +70,8 @@ FirmwareSizeMax = 0x20000
|
||||
Flags = require-ac
|
||||
Children = FuDellDockStatus|USB\VID_413C&PID_B06E&hub&status,FuDellDockMst|MST-panamera-vmm5331-259
|
||||
DellDockUnlockTarget = 1
|
||||
DellDockBoardMin = 2
|
||||
DellDockVersionLowest = 00.00.00.09
|
||||
DellDockBoardMin = 4
|
||||
DellDockVersionLowest = 00.00.00.17
|
||||
DellDockBlobVersionOffset = 0x1AFC0
|
||||
InstallDuration = 60
|
||||
|
||||
@ -114,14 +114,3 @@ FirmwareSizeMin=0x40000
|
||||
FirmwareSizeMax=0x80000
|
||||
Flags = require-ac
|
||||
InstallDuration = 22
|
||||
|
||||
# Thunderbolt controller (old ID)
|
||||
# TODO: This should be dropped when DellDockBoardMin is 3+
|
||||
[Guid=TBT-00d40012]
|
||||
Name = Thunderbolt controller in Dell dock
|
||||
Summary = Thunderbolt controller
|
||||
Vendor = Dell Inc
|
||||
ParentGuid = USB\VID_413C&PID_B06E&hub&embedded
|
||||
FirmwareSizeMin=0x40000
|
||||
FirmwareSizeMax=0x80000
|
||||
Flags = require-ac,ignore-validation
|
||||
|
@ -529,7 +529,6 @@ fu_dell_dock_ec_reset (FuDevice *device, GError **error)
|
||||
gboolean
|
||||
fu_dell_dock_ec_reboot_dock (FuDevice *device, GError **error)
|
||||
{
|
||||
FuDellDockEc *self = FU_DELL_DOCK_EC (device);
|
||||
guint16 cmd = EC_CMD_REBOOT;
|
||||
|
||||
g_return_val_if_fail (device != NULL, FALSE);
|
||||
@ -539,10 +538,6 @@ fu_dell_dock_ec_reboot_dock (FuDevice *device, GError **error)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/* TODO: Drop when bumping minimum EC version to 13+ */
|
||||
if (fu_common_vercmp (self->ec_version, "00.00.00.13") < 0)
|
||||
g_print ("\nEC Reboot API may fail on EC %s. Please manually power cycle dock.\n",
|
||||
self->ec_version);
|
||||
g_debug ("Rebooting %s", fu_device_get_name (device));
|
||||
|
||||
return fu_dell_dock_ec_write (device, 2, (guint8 *) &cmd, error);
|
||||
@ -634,13 +629,6 @@ fu_dell_dock_ec_commit_package (FuDevice *device, GBytes *blob_fw,
|
||||
g_debug ("\ttbt_version: %x", self->raw_versions->tbt_version);
|
||||
g_debug ("\tpkg_version: %x", self->raw_versions->pkg_version);
|
||||
|
||||
/* TODO: Drop when updating minimum EC to 11+ */
|
||||
if (fu_common_vercmp (self->ec_version, "00.00.00.11") < 0) {
|
||||
g_debug ("EC %s doesn't support package version, ignoring",
|
||||
self->ec_version);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
payload [0] = EC_CMD_SET_DOCK_PKG;
|
||||
payload [1] = length;
|
||||
memcpy (payload + 2, data, length);
|
||||
|
@ -424,35 +424,6 @@ fu_d19_mst_check_fw (FuDevice *symbiote, GError **error)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
fu_dell_dock_mst_get_version_direct (FuDevice *symbiote, gchar **version_out,
|
||||
GError **error)
|
||||
{
|
||||
g_autoptr(GBytes) bytes = NULL;
|
||||
const guint8 *data;
|
||||
gsize length = 4;
|
||||
|
||||
g_return_val_if_fail (version_out != NULL, FALSE);
|
||||
|
||||
/* Try to read core MCU FW version */
|
||||
if (!fu_dell_dock_mst_read_register (symbiote,
|
||||
MST_CORE_MCU_FW_VERSION,
|
||||
length, &bytes,
|
||||
error))
|
||||
return FALSE;
|
||||
data = g_bytes_get_data (bytes, &length);
|
||||
if (length < 4) {
|
||||
g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
|
||||
"Invalid MST result %" G_GSIZE_FORMAT, length);
|
||||
return FALSE;
|
||||
}
|
||||
*version_out = g_strdup_printf ("%02x.%02x.%02x",
|
||||
data[1], /* major */
|
||||
data[0], /* minor */
|
||||
data[2]); /* build */
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
fu_dell_dock_mst_checksum_bank (FuDevice *symbiote,
|
||||
GBytes *blob_fw,
|
||||
@ -923,7 +894,6 @@ fu_dell_dock_mst_setup (FuDevice *device, GError **error)
|
||||
FuDellDockMst *self = FU_DELL_DOCK_MST (device);
|
||||
FuDevice *parent;
|
||||
const gchar *version;
|
||||
g_autofree gchar *dynamic_version = NULL;
|
||||
|
||||
/* sanity check that we can talk to MST */
|
||||
if (!fu_d19_mst_check_fw (self->symbiote, error))
|
||||
@ -933,14 +903,6 @@ fu_dell_dock_mst_setup (FuDevice *device, GError **error)
|
||||
parent = fu_device_get_parent (device);
|
||||
version = fu_dell_dock_ec_get_mst_version (parent);
|
||||
|
||||
/* TODO: Drop when we can guarantee EC 15+ */
|
||||
if (version == NULL) {
|
||||
if (!fu_dell_dock_mst_get_version_direct (self->symbiote,
|
||||
&dynamic_version,
|
||||
error))
|
||||
return FALSE;
|
||||
version = dynamic_version;
|
||||
}
|
||||
if (version != NULL)
|
||||
fu_device_set_version (device, version);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user