Skip to content

Commit 3bde7ec

Browse files
dlzrjwrdegoede
authored andcommitted
platform/x86: Add s2idle quirk for more Lenovo laptops
When suspending to idle and resuming on some Lenovo laptops using the Mendocino APU, multiple NVME IOMMU page faults occur, showing up in dmesg as repeated errors: nvme 0000:01:00.0: AMD-Vi: Event logged [IO_PAGE_FAULT domain=0x000b address=0xb6674000 flags=0x0000] The system is unstable afterwards. Applying the s2idle quirk introduced by commit 455cd86 ("platform/x86: thinkpad_acpi: Add a s2idle resume quirk for a number of laptops") allows these systems to work with the IOMMU enabled and s2idle resume to work. Closes: https://bugzilla.kernel.org/show_bug.cgi?id=218024 Suggested-by: Mario Limonciello <mario.limonciello@amd.com> Suggested-by: Mark Pearson <mpearson-lenovo@squebb.ca> Signed-off-by: David Lazar <dlazar@gmail.com> Reviewed-by: Mario Limonciello <mario.limonciello@amd.com> Reviewed-by: Mark Pearson <mpearson-lenovo@squebb.ca> Link: https://lore.kernel.org/r/ZTlsyOaFucF2pWrL@localhost Signed-off-by: Hans de Goede <hdegoede@redhat.com>
1 parent 99c09c9 commit 3bde7ec

1 file changed

Lines changed: 73 additions & 0 deletions

File tree

drivers/platform/x86/amd/pmc/pmc-quirks.c

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,79 @@ static const struct dmi_system_id fwbug_list[] = {
111111
DMI_MATCH(DMI_PRODUCT_NAME, "21A1"),
112112
}
113113
},
114+
/* https://bugzilla.kernel.org/show_bug.cgi?id=218024 */
115+
{
116+
.ident = "V14 G4 AMN",
117+
.driver_data = &quirk_s2idle_bug,
118+
.matches = {
119+
DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
120+
DMI_MATCH(DMI_PRODUCT_NAME, "82YT"),
121+
}
122+
},
123+
{
124+
.ident = "V14 G4 AMN",
125+
.driver_data = &quirk_s2idle_bug,
126+
.matches = {
127+
DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
128+
DMI_MATCH(DMI_PRODUCT_NAME, "83GE"),
129+
}
130+
},
131+
{
132+
.ident = "V15 G4 AMN",
133+
.driver_data = &quirk_s2idle_bug,
134+
.matches = {
135+
DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
136+
DMI_MATCH(DMI_PRODUCT_NAME, "82YU"),
137+
}
138+
},
139+
{
140+
.ident = "V15 G4 AMN",
141+
.driver_data = &quirk_s2idle_bug,
142+
.matches = {
143+
DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
144+
DMI_MATCH(DMI_PRODUCT_NAME, "83CQ"),
145+
}
146+
},
147+
{
148+
.ident = "IdeaPad 1 14AMN7",
149+
.driver_data = &quirk_s2idle_bug,
150+
.matches = {
151+
DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
152+
DMI_MATCH(DMI_PRODUCT_NAME, "82VF"),
153+
}
154+
},
155+
{
156+
.ident = "IdeaPad 1 15AMN7",
157+
.driver_data = &quirk_s2idle_bug,
158+
.matches = {
159+
DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
160+
DMI_MATCH(DMI_PRODUCT_NAME, "82VG"),
161+
}
162+
},
163+
{
164+
.ident = "IdeaPad 1 15AMN7",
165+
.driver_data = &quirk_s2idle_bug,
166+
.matches = {
167+
DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
168+
DMI_MATCH(DMI_PRODUCT_NAME, "82X5"),
169+
}
170+
},
171+
{
172+
.ident = "IdeaPad Slim 3 14AMN8",
173+
.driver_data = &quirk_s2idle_bug,
174+
.matches = {
175+
DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
176+
DMI_MATCH(DMI_PRODUCT_NAME, "82XN"),
177+
}
178+
},
179+
{
180+
.ident = "IdeaPad Slim 3 15AMN8",
181+
.driver_data = &quirk_s2idle_bug,
182+
.matches = {
183+
DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
184+
DMI_MATCH(DMI_PRODUCT_NAME, "82XQ"),
185+
}
186+
},
114187
/* https://gitlab.freedesktop.org/drm/amd/-/issues/2684 */
115188
{
116189
.ident = "HP Laptop 15s-eq2xxx",

0 commit comments

Comments
 (0)