Blob Blame History Raw
From d7a1eb17bef650f13e7f96430f99294c36a40806 Mon Sep 17 00:00:00 2001
From: Vincent Huang <vincent.huang@tw.synaptics.com>
Date: Tue, 19 May 2020 13:09:28 +0800
Subject: [PATCH] synaptics-prometheus: Force the minor version from 0x02 to
 0x01 to make sure the devices can be updated back to 0x01.

---
 plugins/synaptics-prometheus/fu-synaprom-device.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git plugins/synaptics-prometheus/fu-synaprom-device.c plugins/synaptics-prometheus/fu-synaprom-device.c
index 5a19203c..299ebde2 100644
--- a/plugins/synaptics-prometheus/fu-synaprom-device.c
+++ b/plugins/synaptics-prometheus/fu-synaprom-device.c
@@ -142,6 +142,14 @@ fu_synaprom_device_set_version (FuSynapromDevice *self,
 {
 	g_autofree gchar *str = NULL;
 
+	/* We decide to skip 10.02.xxxxxx firmware, so we force the minor version from 0x02 
+	** to 0x01 to make the devices with 0x02 minor version firmware allow to be updated
+	** back to minor version 0x01. */
+	if (vmajor == 0x0a && vminor == 0x02) {
+		g_debug ("quirking vminor from %02x to 01", vminor);
+		vminor = 0x01;
+	}
+
 	/* set display version */
 	str = g_strdup_printf ("%02u.%02u.%u", vmajor, vminor, buildnum);
 	fu_device_set_version (FU_DEVICE (self), str);
-- 
2.26.2