[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4c4fe8ffd12c289308f9f7f6171a44c0@impl.it>
Date: Mon, 03 Apr 2023 12:46:24 +0200
From: Benjamin Asbach <asbachb.kernel@...l.it>
To: Hans de Goede <hdegoede@...hat.com>
Cc: Benjamin Asbach <asbachb.kernel@...l.it>,
Mario Limonciello <mario.limonciello@....com>,
Mark Pearson <markpearson@...ovo.com>,
Henrique de Moraes Holschuh <hmh@....eng.br>,
Mark Gross <markgross@...nel.org>,
ibm-acpi-devel@...ts.sourceforge.net,
platform-driver-x86@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] platform/x86: thinkpad_acpi: Add missing T14s Gen1 type
to s2idle quirk list
On 2023-04-03 12:03, Hans de Goede wrote:
> Hi,
>
> On 4/1/23 01:24, Benjamin Asbach wrote:
>>> Lenovo laptops that contain NVME SSDs across a variety of generations
>>> have
>>> trouble resuming from suspend to idle when the IOMMU translation
>>> layer is
>>> active for the NVME storage device.
>>>
>>> This generally manifests as a large resume delay or page faults.
>>> These
>>> delays and page faults occur as a result of a Lenovo BIOS specific
>>> SMI
>>> that runs during the D3->D0 transition on NVME devices.
>>
>> Link:
>> https://lore.kernel.org/all/20220503183420.348-1-mario.limonciello@amd.com/
>>
>> As Lenovo distributes T14s Gen1 laptops with different product names
>> a missing one is added by this patch.
>>
>> Note: Based on lenovo support page there might be some more variants
>> which
>> are not represented in s2idle quirk list.
>
> Can you provide some more in info on this? Then Mark can maybe check
> if we need to add more models ?
Sure. When you go to https://pcsupport.lenovo.com/us/en/ and type in any
of the
models in that quirk list - for example `T14 Gen2` beside `20XK` there's
also `20XL`.
I assume - but cannot confirm - that the other types suffer the same
firmware issue.
For my model the issue only arised after I upgraded the original NVMe
with a bigger one.
Greetings,
Benjamin
> Mark, generally speaking it may help to do a DMI_EXACT_MATCH on
> DMI_PRODUCT_VERSION with ThinkPads ? That contains the human
> readable model string instead of things like "20UJ", and I guess
> that we want to e.g. apply the s2idle quirk to all "T14s Gen1 AMD"
> ThinkPads.
>
>>
>> Signed-off-by: Benjamin Asbach <asbachb.kernel@...l.it>
>> Tested-by: Benjamin Asbach <asbachb.kernel@...l.it>
>
> Thank you for your patch, I've applied this patch to my fixes
> branch:
> https://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git/log/?h=fixes
>
> I will include this patch in my next fixes pull-req to Linus
> for the current kernel development cycle.
>
> Regards,
>
> Hans
>
>
>
>
>
>>
>> Link: https://bbs.archlinux.org/viewtopic.php?pid=2084655#p2084655
>> ---
>> drivers/platform/x86/thinkpad_acpi.c | 9 +++++++++
>> 1 file changed, 9 insertions(+)
>>
>> diff --git a/drivers/platform/x86/thinkpad_acpi.c
>> b/drivers/platform/x86/thinkpad_acpi.c
>> index 32c10457399e..57428d7a392d 100644
>> --- a/drivers/platform/x86/thinkpad_acpi.c
>> +++ b/drivers/platform/x86/thinkpad_acpi.c
>> @@ -4478,6 +4478,15 @@ static const struct dmi_system_id fwbug_list[]
>> __initconst = {
>> DMI_MATCH(DMI_PRODUCT_NAME, "20UH"),
>> }
>> },
>> + {
>> + .ident = "T14s Gen1 AMD",
>> + .driver_data = &quirk_s2idle_bug,
>> + .matches = {
>> + DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
>> + DMI_MATCH(DMI_PRODUCT_NAME, "20UJ"),
>> + }
>> + },
>> +
>> {
>> .ident = "P14s Gen1 AMD",
>> .driver_data = &quirk_s2idle_bug,
Powered by blists - more mailing lists