Skip to content

Commit 44b6f56

Browse files
committed
Merge tag 'acpi-6.3-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm
Pull more ACPI updates from Rafael Wysocki: "These update ACPI quirks for some x86 platforms and add an IRQ override quirk for one more system. Specifics: - Add an ACPI IRQ override quirk for Asus Expertbook B2402FBA (Vojtech Hejsek) - Drop a suspend-to-idle quirk for HP Elitebook G9 that is not needed any more after a firmware update (Mario Limonciello) - Add all Cezanne systems to the list for forcing StorageD3Enable, because they all need the same quirk (Mario Limonciello)" * tag 'acpi-6.3-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: ACPI: x86: utils: Add Cezanne to the list for forcing StorageD3Enable ACPI: x86: Drop quirk for HP Elitebook ACPI: resource: Skip IRQ override on Asus Expertbook B2402FBA
2 parents c8b4acc + 57b7632 commit 44b6f56

File tree

3 files changed

+20
-48
lines changed

3 files changed

+20
-48
lines changed

drivers/acpi/resource.c

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -439,6 +439,13 @@ static const struct dmi_system_id asus_laptop[] = {
439439
DMI_MATCH(DMI_BOARD_NAME, "B2402CBA"),
440440
},
441441
},
442+
{
443+
.ident = "Asus ExpertBook B2402FBA",
444+
.matches = {
445+
DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),
446+
DMI_MATCH(DMI_BOARD_NAME, "B2402FBA"),
447+
},
448+
},
442449
{
443450
.ident = "Asus ExpertBook B2502",
444451
.matches = {

drivers/acpi/x86/s2idle.c

Lines changed: 0 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -384,29 +384,6 @@ static const struct acpi_device_id amd_hid_ids[] = {
384384
{}
385385
};
386386

387-
static int lps0_prefer_amd(const struct dmi_system_id *id)
388-
{
389-
pr_debug("Using AMD GUID w/ _REV 2.\n");
390-
rev_id = 2;
391-
return 0;
392-
}
393-
static const struct dmi_system_id s2idle_dmi_table[] __initconst = {
394-
{
395-
/*
396-
* AMD Rembrandt based HP EliteBook 835/845/865 G9
397-
* Contains specialized AML in AMD/_REV 2 path to avoid
398-
* triggering a bug in Qualcomm WLAN firmware. This may be
399-
* removed in the future if that firmware is fixed.
400-
*/
401-
.callback = lps0_prefer_amd,
402-
.matches = {
403-
DMI_MATCH(DMI_BOARD_VENDOR, "HP"),
404-
DMI_MATCH(DMI_BOARD_NAME, "8990"),
405-
},
406-
},
407-
{}
408-
};
409-
410387
static int lps0_device_attach(struct acpi_device *adev,
411388
const struct acpi_device_id *not_used)
412389
{
@@ -586,7 +563,6 @@ static const struct platform_s2idle_ops acpi_s2idle_ops_lps0 = {
586563

587564
void __init acpi_s2idle_setup(void)
588565
{
589-
dmi_check_system(s2idle_dmi_table);
590566
acpi_scan_add_handler(&lps0_handler);
591567
s2idle_set_ops(&acpi_s2idle_ops_lps0);
592568
}

drivers/acpi/x86/utils.c

Lines changed: 13 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -200,39 +200,28 @@ bool acpi_device_override_status(struct acpi_device *adev, unsigned long long *s
200200
* a hardcoded allowlist for D3 support, which was used for these platforms.
201201
*
202202
* This allows quirking on Linux in a similar fashion.
203+
*
204+
* Cezanne systems shouldn't *normally* need this as the BIOS includes
205+
* StorageD3Enable. But for two reasons we have added it.
206+
* 1) The BIOS on a number of Dell systems have ambiguity
207+
* between the same value used for _ADR on ACPI nodes GPP1.DEV0 and GPP1.NVME.
208+
* GPP1.NVME is needed to get StorageD3Enable node set properly.
209+
* https://bugzilla.kernel.org/show_bug.cgi?id=216440
210+
* https://bugzilla.kernel.org/show_bug.cgi?id=216773
211+
* https://bugzilla.kernel.org/show_bug.cgi?id=217003
212+
* 2) On at least one HP system StorageD3Enable is missing on the second NVME
213+
disk in the system.
203214
*/
204215
static const struct x86_cpu_id storage_d3_cpu_ids[] = {
205216
X86_MATCH_VENDOR_FAM_MODEL(AMD, 23, 96, NULL), /* Renoir */
206217
X86_MATCH_VENDOR_FAM_MODEL(AMD, 23, 104, NULL), /* Lucienne */
207-
{}
208-
};
209-
210-
static const struct dmi_system_id force_storage_d3_dmi[] = {
211-
{
212-
/*
213-
* _ADR is ambiguous between GPP1.DEV0 and GPP1.NVME
214-
* but .NVME is needed to get StorageD3Enable node
215-
* https://bugzilla.kernel.org/show_bug.cgi?id=216440
216-
*/
217-
.matches = {
218-
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
219-
DMI_MATCH(DMI_PRODUCT_NAME, "Inspiron 14 7425 2-in-1"),
220-
}
221-
},
222-
{
223-
.matches = {
224-
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
225-
DMI_MATCH(DMI_PRODUCT_NAME, "Inspiron 16 5625"),
226-
}
227-
},
218+
X86_MATCH_VENDOR_FAM_MODEL(AMD, 25, 80, NULL), /* Cezanne */
228219
{}
229220
};
230221

231222
bool force_storage_d3(void)
232223
{
233-
const struct dmi_system_id *dmi_id = dmi_first_match(force_storage_d3_dmi);
234-
235-
return dmi_id || x86_match_cpu(storage_d3_cpu_ids);
224+
return x86_match_cpu(storage_d3_cpu_ids);
236225
}
237226

238227
/*

0 commit comments

Comments
 (0)