[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <d71e1b74a583cf2651658151751c578218861032.camel@rong.moe>
Date: Wed, 07 May 2025 02:54:18 +0800
From: Rong Zhang <i@...g.moe>
To: Mingcong Bai <jeffbai@...c.io>, Mario Limonciello
<mario.limonciello@....com>, Runhua He <hua@...c.io>,
platform-driver-x86@...r.kernel.org
Cc: Kexy Biscuit <kexybiscuit@...c.io>, Xinhui Yang <cyan@...no.uk>, Yemu
Lu <prcups@...m.moe>, Shyam Sundar S K <Shyam-sundar.S-k@....com>, Hans de
Goede <hdegoede@...hat.com>, Ilpo Järvinen
<ilpo.jarvinen@...ux.intel.com>, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] platform/x86/amd/pmc: Declare quirk_spurious_8042 for
MECHREVO Wujie 14XA (GX4HRXL)
Hi all,
On Tue, 2025-05-06 at 22:02 +0800, Mingcong Bai wrote:
> Hi Mario,
>
> 在 2025/5/6 21:29, Mario Limonciello 写道:
> > On 5/6/2025 6:25 AM, Runhua He wrote:
[...]
> > > I have only matched the motherboard model, as the same chassis and
> > > motherboard (GX4HRXL) combination may be used under different product
> > > names.
Runhua's statement is *only* correct to a certain extent. (see below)
> > > Suggested-by: Mingcong Bai <jeffbai@...c.io>
> > > Suggested-by: Xinhui Yang <cyan@...no.uk>
> > > Suggested-by: Rong Zhang <i@...g.moe>
> > > Fixes: a55bdad5dfd1 ("platform/x86/amd/pmc: Disable keyboard wakeup on
> > > AMD Framework 13")
> > > Closes: https://gitlab.freedesktop.org/drm/amd/-/issues/4166
> > > Cc: Mario Limonciello <mario.limonciello@....com>
> > > Link: https://zhuanldan.zhihu.com/p/730538041
> > > Tested-by: Yemu Lu <prcups@...m.moe>
> > > Signed-off-by: Runhua He <hua@...c.io>
> > > ---
> > > drivers/platform/x86/amd/pmc/pmc-quirks.c | 7 +++++++
> > > 1 file changed, 7 insertions(+)
> > >
> > > diff --git a/drivers/platform/x86/amd/pmc/pmc-quirks.c b/drivers/
> > > platform/x86/amd/pmc/pmc-quirks.c
> > > index b4f49720c87f..e01012d5ecd0 100644
> > > --- a/drivers/platform/x86/amd/pmc/pmc-quirks.c
> > > +++ b/drivers/platform/x86/amd/pmc/pmc-quirks.c
> > > @@ -217,6 +217,13 @@ static const struct dmi_system_id fwbug_list[] = {
> > > DMI_MATCH(DMI_BIOS_VERSION, "03.05"),
> > > }
> > > },
> > > + {
> > > + .ident = "MECHREVO Wujie 14 Series (GX4HRXL)",
> > > + .driver_data = &quirk_spurious_8042,
> > > + .matches = {
> > > + DMI_MATCH(DMI_BOARD_NAME, "GX4HRXL"),
> >
> > This feels like it might be too wide. Could we match a system vendor as
> > well?
>
> Possibly. There are two known system vendors using this motherboard -
> TongFang and MECHREVO (MECHREVO is a marque owned by TongFang).
There are plain "GX4HRXL" and "WUJIE14-GX4HRXL". Their BIOS/firmware
are different - this difference is not just about marketing.
Runhua's statement only applies to plain "GX4HRXL", which is not his
model. All seen editions are:
- Juno GX4HRXL [1]
- TongFang GX4HRXL [2]
Comparing [1] and [2]:
diff --git a/juno b/tongfang
index 88a71da..c6846eb 100644
--- a/juno
+++ b/tongfang
@@ -1,4 +1,4 @@
-# dmidecode 3.6
+# dmidecode 3.5
Getting SMBIOS data from sysfs.
SMBIOS 3.5.0 present.
Table at 0x9A92D000.
@@ -28,7 +28,7 @@ BIOS Information
Handle 0x0001, DMI type 1, 27 bytes
System Information
- Manufacturer: Juno
+ Manufacturer: TongFang
Product Name: GX4HRXL
Version: Standard
Serial Number: --
[... SO-DIMM and PCIe ...]
As for "WUJIE14-GX4HRXL", the only model I've seen is:
- MECHREVO WUJIE14XA [3]
Comparing [2] and [3]:
diff --git a/tongfang b/mechrevo
index c6846eb..0f132a2 100644
--- a/tongfang
+++ b/mechrevo
@@ -1,13 +1,13 @@
-# dmidecode 3.5
+# dmidecode 3.6
Getting SMBIOS data from sysfs.
SMBIOS 3.5.0 present.
-Table at 0x9A92D000.
+Table at 0x9A92C000.
Handle 0x0000, DMI type 0, 26 bytes
BIOS Information
Vendor: American Megatrends International, LLC.
- Version: N.1.14PCS05
- Release Date: 10/24/2024
+ Version: N.1.14MRO19
+ Release Date: 01/17/2025
Address: 0xF0000
Runtime Size: 64 kB
ROM Size: 32 MB
@@ -23,24 +23,24 @@ BIOS Information
BIOS boot specification is supported
Targeted content distribution is supported
UEFI is supported
- BIOS Revision: 1.5
- Firmware Revision: 1.39
+ BIOS Revision: 1.19
+ Firmware Revision: 2.8
Handle 0x0001, DMI type 1, 27 bytes
System Information
- Manufacturer: TongFang
- Product Name: GX4HRXL
+ Manufacturer: MECHREVO
+ Product Name: WUJIE14XA
Version: Standard
Serial Number: --
UUID: --
Wake-up Type: Power Switch
- SKU Number: 0001
- Family: HPT
+ SKU Number: WUJIE14
+ Family: Mechrevo WUJIE Series
Handle 0x0002, DMI type 2, 15 bytes
Base Board Information
- Manufacturer: TongFang
- Product Name: GX4HRXL
+ Manufacturer: MECHREVO
+ Product Name: WUJIE14-GX4HRXL
Version: Standard
Serial Number: --
Asset Tag: --
@@ -54,7 +54,7 @@ Base Board Information
Handle 0x0003, DMI type 3, 22 bytes
Chassis Information
- Manufacturer: Standard
+ Manufacturer: MECHREVO
Type: Notebook
Lock: Not Present
Version: Standard
@@ -88,7 +88,7 @@ OEM Strings
String 8: Standard
String 9: Standard
String 10: Standard
- String 11: FBM-GX4HRXL0177PCS
+ String 11: FGM-GX4HRXL0202101
String 12: GX4HRXL
String 13: Standard
String 14: Standard
@@ -122,11 +122,11 @@ Unknown Type
Handle 0x000A, DMI type 45, 26 bytes
Firmware Inventory Information
Firmware Component Name: BIOS Firmware
- Firmware Version: N.1.14PCS05
- Firmware ID: D968671D-72E2-5CA3-9E09-0E48EA102BDC
- Release Date: 10/24/2024
+ Firmware Version: N.1.14MRO19
+ Firmware ID: 0145F8DC-000F-5BDE-8ACB-8AD00CAE8FFE
+ Release Date: 01/17/2025
Manufacturer: Standard
- Lowest Supported Firmware Version: N.1.14PCS05
+ Lowest Supported Firmware Version: N.1.14MRO19
Image Size: 32 MB
Characteristics:
Updatable: Yes
[... PCIe ...]
Look for BIOS versions whose release dates are the closest between the
two [4] [5]:
diff --git a/tongfang-1.13 b/mechrevo-1.13
index 3970b9a..a617bbc 100644
--- a/tongfang-1.13
+++ b/mechrevo-1.13
@@ -1,13 +1,13 @@
# dmidecode 3.6
Getting SMBIOS data from sysfs.
SMBIOS 3.5.0 present.
-Table at 0x9A92D000.
+Table at 0x9A92C000.
Handle 0x0000, DMI type 0, 26 bytes
BIOS Information
Vendor: American Megatrends International, LLC.
- Version: N.1.13PCS03
- Release Date: 09/06/2024
+ Version: N.1.13MRO14
+ Release Date: 08/19/2024
Address: 0xF0000
Runtime Size: 64 kB
ROM Size: 32 MB
@@ -23,24 +23,24 @@ BIOS Information
BIOS boot specification is supported
Targeted content distribution is supported
UEFI is supported
- BIOS Revision: 1.3
- Firmware Revision: 1.33
+ BIOS Revision: 1.14
+ Firmware Revision: 1.32
[...]
@@ -88,7 +88,7 @@ OEM Strings
String 8: Standard
String 9: Standard
String 10: Standard
- String 11: FBM-GX4HRXL0177PCS
+ String 11: FGM-GX4HRXL0167102
String 12: GX4HRXL
String 13: Standard
String 14: Standard
@@ -122,11 +122,11 @@ Unknown Type
Handle 0x000A, DMI type 45, 26 bytes
Firmware Inventory Information
Firmware Component Name: BIOS Firmware
- Firmware Version: N.1.13PCS03
- Firmware ID: D968671D-72E2-5CA3-9E09-0E48EA102BDC
- Release Date: 09/06/2024
+ Firmware Version: N.1.13MRO14
+ Firmware ID: 0145F8DC-000F-5BDE-8ACB-8AD00CAE8FFE
+ Release Date: 08/19/2024
Manufacturer: Standard
- Lowest Supported Firmware Version: N.1.13PCS03
+ Lowest Supported Firmware Version: N.1.13MRO14
Image Size: 32 MB
Characteristics:
Updatable: Yes
[...]
Three bits here hint that these two variants are not completely
identical:
- BIOS/firmware updates are not synced.
- Different characters in their BIOS version strings, i.e., PCS vs MRO.
- FBM-GX4HRXL0177PCS vs FGM-GX4HRXL0202101 vs FGM-GX4HRXL0167102.
I guess these two variants were developed by two different teams
(global/China) that shared some common codebase. The difference is
probably because of the divergence of pre-installed software to
manipulate BIOS options in Windows. I highly suspect the broken EC
state machine is related to such software.
[1]: https://linux-hardware.org/?probe=22e1f510a2&log=dmidecode
[2]: https://linux-hardware.org/?probe=0475501c8c&log=dmidecode
[3]: https://linux-hardware.org/?probe=d9af608109&log=dmidecode
[4]: https://linux-hardware.org/?probe=599c1edc57&log=dmidecode
[5]: https://linux-hardware.org/?probe=7c2e3b925b&log=dmidecode
> See: https://linux-hardware.org/?probe=6783d8fc06
This is TongFang GX4HRXL and uses a different BIOS then Runhua's as
mentioned above.
> Runhua, maybe we could make two entries here?
Since this is a platform firmware bug, and given the information we
have, is it too soon to say plain "GX4HRXL" suffers from the same bug?
I agree with Mario here, but in a slightly different manner, i.e.,
narrowing the DMI_BOARD_NAME match down to "WUJIE14-GX4HRXL".
diff --git a/drivers/platform/x86/amd/pmc/pmc-quirks.c
b/drivers/platform/x86/amd/pmc/pmc-quirks.c
index b4f49720c87f..2e3f6fc67c56 100644
--- a/drivers/platform/x86/amd/pmc/pmc-quirks.c
+++ b/drivers/platform/x86/amd/pmc/pmc-quirks.c
@@ -217,6 +217,13 @@ static const struct dmi_system_id fwbug_list[] = {
DMI_MATCH(DMI_BIOS_VERSION, "03.05"),
}
},
+ {
+ .ident = "MECHREVO Wujie 14X (GX4HRXL)",
+ .driver_data = &quirk_spurious_8042,
+ .matches = {
+ DMI_MATCH(DMI_BOARD_NAME, "WUJIE14-GX4HRXL"),
+ }
+ },
{}
};
Note on `s/14 Series/14X/': while glancing linux-hardware.org, I found
Wujie 14 Series includes 14, 14S, 14 Pro, 14XA. They are all disparate
from each other. 14X is 14XA's marketing name.
> Best Regards,
> Mingcong Bai
Regards,
Rong
Powered by blists - more mailing lists